A more complete understanding of the invention can be obtained by considering the following detailed description in conjunction with the accompanying drawings, in which:
Those of skill in the art recognize that, once an analog signal is converted to digital form, all subsequent operations can take place in one or more suitably programmed microprocessors. Reference to “signal,” for example, does not necessarily mean a hardware implementation or an analog signal. Data in memory, even a single bit, can be a signal. In other words, a block diagram can be interpreted as hardware, software, e.g. a flow chart or an algorithm, or a mixture of hardware and software. Programming a microprocessor is well within the ability of those of ordinary skill in the art, either individually or in groups.
This invention finds use in many applications where the electronics is essentially the same but the external appearance of the device may vary.
Some hands-free kits use RF signals, like a cordless phone, to couple to a telephone. Some commercially available, hands-free kits use the “BlueTooth®” interface. A hands-free kit also typically includes a volume control and some control switches, e.g. for going “off hook” to answer a call. A hands-free kit may include a visor microphone (not shown) that plugs into the kit.
A cellular telephone includes both audio frequency and radio frequency circuits. Duplexer 65 couples antenna 66 to receive processor 67. Duplexer 65 couples antenna 66 to power amplifier 68 and isolates receive processor 67 from the power amplifier during transmission. Transmit processor 69 modulates a radio frequency signal with an audio signal from circuit 64. In non-cellular applications, such as speakerphones, there are no radio frequency circuits and signal processor 64 may be simplified somewhat. Problems of echo cancellation and noise remain and are handled in audio processor 70.
A new voice signal entering input 72 may or may not be accompanied by a signal from output 78. The signals from input 72 are digitized in A/D converter 81 and coupled to summation network 82. There is, as yet, no signal from echo canceling circuit 83 and the data proceeds to non-linear processor 84, which is initially set to minimum attenuation in all sub-bands.
The output from non-linear processor 84 is coupled to summation circuit 86, where comfort noise 85 is optionally added to the signal. The signal is then converted back to analog form by D/A converter 87, amplified in amplifier 88, and coupled to output 74. Data from the two VAD circuits is supplied to control 90, which uses the data for allocating echo elimination and other functions. The data includes noise level. Circuit 83 reduces acoustic echo and circuit 91 reduces line echo. The operation of these last two circuits is known per se in the art; e.g. as described in the above-identified text.
The second column of the matrix represents a threshold setting for whether or not to switch in comfort noise. As illustrated in
The third column represents the amount of noise cancellation to apply. This is a system wide control signal represented by the data stored in a register that other parts of the audio processor reference during operation. It can be considered a gain control signal for programmable gain amplifiers or a coefficient by which digital signals are multiplied to change the magnitude thereof. By adjusting the amount of noise cancellation in accordance with the amount of noise present, voice clarity can be optimized across the full range of telephone set noise.
The fourth column represents transmit bias attenuation. This is the fractional gain (0≦x≦1) or bias attenuation that is coupled to receive/transmit state decision logic. As indicated by matrix 100, the amount of attenuation varies with noise level. As with the other parameters, there need not be a linear relationship between noise level and bias attenuation.
Transmit bias attenuation has been divided into three levels, despite the fact that there are four zones of noise. This is one of the advantages of the invention in that the matrix control is flexible. One is not obliged to provide four levels attenuation, even though there are four zones of noise. Three levels has been found suitable and, therefore, two of the entries are the same in the right hand most column.
As illustrated in
If the difference is less than C, this is interpreted as speech and multiplex circuit 110 couples the output from noise cancellation block 108 to output 112. If the difference is greater than C, this is interpreted as non-speech and multiplex circuit 110 couples comfort noise CN to output 112.
The amount of noise cancellation is adjusted according to the amount of noise, columns one and three of the matrix. Detector 104 provides an ambient noise level signal on line 121 to adjust noise cancellation circuit 108. This signal is not the same as the signal at A but is a longer term average of noise level. Similarly, detector 105 provides a longer term average signal on line 122 to decision circuit 120 in accordance with columns one and four of the matrix.
The invention thus provides a noise reduction circuit that adapts to noise level to provide an appropriate response, wherein the nature and magnitude of the response depends upon noise level. A number of variables are organized in a matrix according to noise level, wherein the matrix elements are adjustable. The invention thus provides a complex, yet easily implemented noise reduction that is easily adapted to particular applications and hardware by changing the values in storage registers.
Having thus described the invention, it will be apparent to those of skill in the art that various modifications can be made within the scope of the invention. For example, while a 4×4 matrix has been shown and described, a matrix having different dimensions can be used as well. Although reference is made to “amplitude” for ease of discussion, energy could be calculated instead.