Patent Document

BACKGROUND OF THE INVENTION  
       [0001]     1. Priority Claim  
         [0002]     This application claims the benefit of priority under 35 U.S.C. § 119 to European Patent Application No. 06 008006.6, filed Apr. 18, 2006, which is incorporated by reference.  
         [0003]     2. Technical Field  
         [0004]     This disclosure is directed to a multi-channel echo compensation system. In particular, this disclosure relates to a system to compensate for echoes generated by external audio sources.  
         [0005]     3. Related Art  
         [0006]     Hands-free telephone systems are used in vehicles. Such systems may include one or more receivers that acquire speech signals. Loudspeakers may also be mounted in the vehicle. A loudspeaker may deliver audio signals from various audio sources. The receivers may acquire the audio signals transmitted by the loudspeakers. Due to speaker placement and the configuration of a vehicle interior, the receiver may acquire echoes. Such signals may distort the microphone signals.  
         [0007]     Existing hands-free systems for echo-compensation may not adequately address echo signals originating from loudspeakers. Such systems may introduce artifacts into the signal path. Therefore, a need exists for an echo-compensation system that reduces echo signals originating from loudspeakers in a vehicle.  
       SUMMARY  
       [0008]     An echo compensation system may remove undesirable audio signals. The echo compensation system may utilize adaptive filters to remove echoes and undesirable signals received by a microphone. The echo compensation system may inhibit adaptation of an adaptive filter when left and right channel audio signals are highly correlated. In a two-channel system, inhibiting adaptation of one of two adaptive filters may reduce computational power requirements while still removing undesirable signals. In a four-channel system, inhibiting adaptation of all but one of the four adaptive filters may reduce computational power requirements by a greater percentage.  
         [0009]     Left and right channel adaptive filters may receive signals from a pre-processor and generate a compensation signal. When the compensation signal is added to the microphone output signal, the undesirable audio signals acquired by a microphone due to the loudspeakers may be removed or dampened.  
         [0010]     The pre-processor may determine a correlation value by generating a sum and difference signal corresponding to a left and right channel audio signal. The left and right channel audio signals may be highly correlated if a difference signal is below a predetermined value. When the pre-processor determines that the left and right channel audio signals are highly correlated, the pre-processor may inhibit adaptation of all but one of the adaptive filters. This may reduce the computation load while providing adequate echo compensation.  
         [0011]     Other systems, methods, features and advantages will be, or will become, apparent to one with skill in the art upon examination of the following figures and detailed description. It is intended that all such additional systems, methods, features and advantages be included within this description, be within the scope of the invention, and be protected by the following claims. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0012]     The system may be better understood with reference to the following drawings and description. The components in the figures are not necessarily to scale, emphasis instead being placed upon illustrating the principles of the invention. Moreover, in the figures, like-referenced numerals designate corresponding parts throughout the different views.  
         [0013]      FIG. 1  shows an echo-compensation system.  
         [0014]      FIG. 2  is a flowchart that shows acts the system may take to process audio signals.  
         [0015]      FIG. 3  shows a dual-channel pre-processor.  
         [0016]      FIG. 4  is a flowchart that shows acts the system may take to calculate a correlation value.  
         [0017]      FIG. 5  shows left and right channel input signals.  
         [0018]      FIG. 6  shows the sum and difference signals corresponding to the left and right channel input signals.  
         [0019]      FIG. 7  shows a microphone output signal with and without echo cancellation.  
         [0020]      FIG. 8  shows a dual-channel pre-processor having delay circuits. 
     
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS  
       [0021]     Some audio systems in vehicles may use beam-forming circuits to communicate with multiple microphones to combine the microphone output signals. Such audio systems may use adaptive filters to compensate for unwanted signals contained in the microphone signal. Such adaptive filters may use the input signals from the audio source to determine a compensation signal.  
         [0022]     In some systems, the adaptive filters may model the undesirable signals captured by the microphone. The adaptive filters may receive the left-channel and right-channel output signals from the source device used to drive the loudspeakers. The adaptive filters may provide a compensation signal, which may approximate the signal acquired by the microphones. The portion of the microphone signal contributed by the loudspeaker may be removed or dampened by subtracting the compensation signal from the microphone signal.  
         [0023]     In a vehicle environment, the square of the absolute value of the coherence value may vary greatly. Coherence may be shown by the formula:  
         C   ⁡     (   Ω   )       =                S       x   L     ⁢     x   R         ⁡     (   Ω   )               S       x   L     ⁢     x   L         ⁡     (   Ω   )       ⁢       S       x   R     ⁢     x   R         ⁡     (   Ω   )                  2         
 
 In the above equation, S x     L     x     R   (Ω), S x     L     x     L   (Ω) and S x     R     x     R   (Ω) denote the cross-power spectral density and the auto-power spectral densities, respectively, of the left-channel and right-channel signals supplied to the adaptive filters. 
 
         [0024]     Music signals may exhibit very low coherence. In contrast, audio signals representing news or interviews may exhibit very high coherence such that the left and right-channel signals may be linearly dependent. The coherence of such signals approximately equals one, and the cost functions used in some multi-channel adaptation processes may not have a unique solution. As a result, the adaptive filter coefficients may need to be recalculated when a speaker change occurs. During this time, undesirable echoes may be heard.  
         [0025]      FIG. 1  shows a multi-channel echo compensation system  110 . The multi-channel echo compensation system may be linked to an audio system  112 , such as an audio system in a vehicle. A vehicle audio device, such as a receiver or radio  114 , may supply a stereo signal, including a left-channel input signal x L (n) and a right-channel input signal x R (n). Two loudspeakers  116  and  120  may audibly output the left-channel input signal x L (n) and right-channel input signal x R (n). A plurality of microphones  130  may acquire the audio signals produced by the human speaker, but may also acquire the audio signals generated by the loudspeakers  116  and  120 . Two or more of microphones may be used, including a microphone array.  
         [0026]     The audio signals transmitted by the loudspeakers  116  and  120  in the vehicle may be described through the following finite impulse response equations. The variable n indicates the time dependence of the coefficients. 
 
 h   L ( n )=[ h   L,0 ( n ), h   L,1 ( n ), . . . ,  h   L,L-1 ( n )] T  and 
 
 h   R ( n )=[ h   R,0 ( n ), h   R,1 ( n ), . . . ,  h   R,L-1 ( n )] T . 
 
         [0027]     A microphone pre-processing circuit  136  may process the signals acquired by the microphones  130 . The microphone pre-processing circuit  136  may perform linear time invariant processing, such as beam-forming or high-pass filtering. The output of the microphone pre-processing circuit may be denoted as d(n) or the pre-processed microphone output signal. A beam-forming circuit  138  may increase the signal-to-noise ratio of the microphone output signal d(n), and may provide directivity to a microphone array.  
         [0028]     A left compensation channel  146  of the dual-channel pre-processing circuit  140  may receive the left-channel input signal x L (n). A right compensation channel  148  of the dual-channel pre-processing circuit  140  may receive the right-channel input signal x R (n). A left-channel adaptive compensation filter  152  may receive a left-channel pre-processor output signal x S (n). Similarly, a right-channel adaptive compensation filter  154  may receive a right-channel pre-processor output signal x D (n).  
         [0029]     The left and right-channel adaptive compensation filters  152  and  154  may be implemented in hardware and/or software, and may include a digital signal processor (DSP). The DSP may execute instructions that delay an input signal one or more additional times, track frequency components of a signal, filter a signal, an/or attenuate or boost an amplitude of a signal. Alternatively, the left and right-channel adaptive compensation filters  152  and  154  or DSP may be implemented as discrete logic or circuitry, a mix of discrete logic and a processor, or may be distributed over multiple processors or software programs.  
         [0030]     A filter summing circuit  156  may sum an output of the left and right-channel adaptive compensation filters  152  and  154  to produce an estimated signal {circumflex over (d)}(n). An output summing circuit  158  may then sum the pre-processed microphone output signal d(n) and the estimated signal {circumflex over (d)}(n) to provide the output or error signal e(n). The estimated signal {circumflex over (d)}(n) may be subtracted from the pre-processed microphone output signal d(n), as indicated by the minus sign. The estimated signal {circumflex over (d)}(n) may represent a compensation signal, which when subtracted from the microphone output signal d(n), may remove or dampen unwanted signals received by the microphone  130 .  
         [0031]      FIG. 2  shows a process  200  that the multi-channel echo compensation system  110  may perform to generate the error signal e(n). The microphone pre-processor circuit  136  may receive the microphone signals (Act  210 ) and process the signals (Act  220 ) to produce the pre-processed microphone output signal d(n). A filter summing circuit  156  may sum the output of the left and right-channel adaptive compensation filters  152  and  154  to produce an estimated signal {circumflex over (d)}(n) (Act  230 ). The output or error signal e(n) may then be calculated (Act  240 ) by subtracting the estimated signal {circumflex over (d)}(n) from the processed microphone output signal d(n).  
         [0032]     The microphones  130  may be part of a hands-free telephone set. As such, the microphones  130  may acquire speech signals  166  from a speaker. It may be desirable to reduce the audio signals produced by the loudspeakers  116  and  120 , including the echo signals, which may be apart of the microphone output signal d(n). The left channel and right channel adaptive compensation filters  152  and  154  may be configured to reduce such undesirable components. The impulse response of the left-channel and right-channel adaptive compensation filters  152  and  154  may be defined by the following: 
 
 ĥ   L ( n )=[ ĥ   L,0 ( n ), ĥ   L,1 ( n ), . . . ,  ĥ   L,N-1 ( n )] T  
 
 ĥ   R ( n )=[ ĥ   R,0 ( n ), ĥ   R,1 ( n ), . . . ,  ĥ   R,N-1 ( n )] T . 
 
         [0033]     The left-channel and right-channel adaptive compensation filters  152  and  154  may be used to reduce the unwanted audio signals produced by the loudspeakers  116  and  120 . Considerable processing power may be conserved if adaptation of some of the adaptive compensation filters  152  and  154  can be delayed during certain times. In that regard, the multi-channel echo compensation system  110  may prevent adaptation of some of the adaptive compensation filters if the left and right-channel input signals x L (n) and x D (n) are highly correlated. For example, a monaural signal output by two loudspeakers may be highly correlated because a difference signal corresponding to the two loudspeaker channels may be small.  
         [0034]     The correlation value may have different forms. For example, the correlation value may be determined as a coherence value. A coherence threshold may be selected to be about 0.97. This means that the left and right-channel input signals x L (n) and x D (n) may be very similar, and the difference signal x D (n) may be small. For highly correlated signals, the summed signal may have a power level corresponding to about twice the input signal power x L (n) or x D (n). A correlation circuit  170  may calculate the degree of correlation between the left and right-channel input signals x L (n) and x D (n). The correlation circuit  170  may be implemented as part of the pre-processor  140  or as part of the adaptation filters  152  and  154 , or may be part of a separate processor or may be located remote from in the echo compensation system  110 .  
         [0035]     If the input signals x L (n) and x D (n) are highly correlated, adaptation of all but one of the adaptive filters  152  and  154  may be deferred. This may represent a computational power savings of about 50% in a two-channel system using two adaptive filters. Of course, the multi-channel echo compensation system  110  may include more than two channels. For example, the multi-channel echo compensation system  110  may include four or more channels (and four or more adaptive filters) in a multi-channel configuration or in a surround-sound implementation. A greater computational power savings of about 75% may be realized in a four-channel system using four adaptive filters.  
         [0036]     The order N of the left channel and right channel adaptive compensation filters  152  and  154  may be smaller than the order of the impulse responses. For example, left channel and right channel adaptive compensation filters  152  and  154  may use 300 to 500 coefficients at a sampling rate of about 11 kHz. The left channel and right channel adaptive compensation filters  152  and  154  may provide a compensation signal to be subtracted from the microphone output signal d(n). This may result in an output signal e(n), sometimes referred to as an error signal, having the following form:  
         e   ⁡     (   n   )       =       d   ⁡     (   n   )       -       ∑     i   =   0       N   -   1       ⁢           h   ^       L   ,   i       ⁡     (   n   )       ⁢       x   L     ⁡     (     n   -   i     )           -       ∑     i   =   0       N   -   1       ⁢           h   ^       R   ,   i       ⁡     (   n   )       ⁢         x   R     ⁡     (     n   -   i     )       .               
 
         [0037]     The error signal e(n) may be used to adapt the coefficients of the adaptive compensation filters  152  and  154 . The adaptation of the filters may be performed such that the estimated impulse response ĥ L,i (n) and ĥ R,i (n) may closely approximate the real impulse responses h L,i (n) and h R,i (n).  
         [0038]     Filter adaptation may be performed based on a least-squares type of process. The filter adaptation may be based on other processes, such as a normalized least mean squares process, a recursive least-squares process, and a proportional least mean squares process. Further variations of the minimization algorithm may be used to ensure that the output of the filters does not diverge.  
         [0039]      FIG. 3  shows the dual-channel pre-processor  140 , including the left and right compensation channels  146  and  148 . The left compensation channel  146  may receive the left-channel input signal x L (n), while the right compensation channel  148  may receive the right-channel input signal x R (n). A left-channel summing circuit  354  may sum the left-channel input signal x L (n) and the right-channel input signal x R (n). A right-channel summing circuit  358  may sum the right-channel signal input x R (n) and the negative of the left-channel input signal x L (n), as indicated by the minus sign.  
         [0040]     A left-channel multiplier circuit  360  may multiply an output of the left-channel summing circuit  354  by a common weighting factor  362  equal to about 0.50. Similarly, a right-channel multiplier circuit  368  may multiply an output of the right-channel summing circuit  358  by a common weighting factor  370  equal to about 0.50. As a result, the left and right-channel pre-processor output signals x S (n) and x D (n) may be the linear combinations of the left and right-channel input signals x L (n) and x R (n). The pre-processor output signals x S (n) and x D (n) may represent a sum and difference signal, respectively. The pre-processor output signals x S (n) and x D (n) may be represented by the equations below where a common weighting factor may be realized by shifting an accumulator bit by one position.  
             x   s     ⁡     (   n   )       =       1   2     ⁡     [         x   L     ⁡     (   n   )       +       x   R     ⁡     (   n   )         ]         ,     
     ⁢         x   D     ⁡     (   n   )       =         1   2     ⁡     [         x   L     ⁡     (   n   )       -       x   R     ⁡     (   n   )         ]       .           
 
         [0041]     In a two channel system, for example, the weighting factor may be equal to about 0.50. When more than two channels exist, the weighting factor may be set equal to about the reciprocal of the number of channels. Accordingly, in a four channel system, the weighting factor may be equal to about 0.25.  
         [0042]     As mentioned, the summed signal or the output from the first summing circuit  354  may have a power level that corresponds to about twice the signal power of the left or right-channel input signals x L (n) and x D (n) for highly correlated signals. The output of the left-channel summing circuit  354  may be scaled by the common weighting factor  362  of about 0.5 to normalize the signal amplitude.  
         [0043]      FIG. 4  shows another process. The dual channel pre-processor  140  may receive left and right channel input signals x L (n) and x R (n) (Act  410 ). Next, the left and right channel input signals x L (n) and x R (n) may be summed to produce the left-channel pre-processor output signal x S (n) (Act  420 ). The left and right channel input signals x L (n) and x R (n) may then be subtracted to produce the right-channel pre-processor output or difference signal x D (n) (Act  430 ). The difference signal x D (n) may be inspected to determine a correlation value (Act  440 ) between the left and right channel input signals x L (n) and x R (n) (Act  440 ). If the correlation value is below a predetermined value or threshold (Act  450 ), for example, about 97%, the left and right-channel adaptive filters  146  and  148  may be adapted (Act  460 ). If the correlation value is greater than or equal to the predetermined value or threshold, the pre-processor may declare that the signals are highly correlated (Act  470 ), and adaptation of the right-channel adaptive filter  148  may be inhibited (Act  480 ).  
         [0044]      FIG. 5  shows the variation in time of a typical stereo radio signal. The upper panel may correspond to the left-channel input signal x L (n), and the lower panel may correspond to the right-channel input signal x R (n). A power spectrum associated with playback of a news program may be depicted in the left-most half  520  of the panels. A power spectrum associated with playback of a classical music program may be depicted in the right-most half  526  of the panels.  
         [0045]      FIG. 6  shows the left and right-channel pre-processor output signals x S (n) and x D (n) when the dual-channel pre-processor  140  is provided with the left and right-channel input signals x L (n) and x R (n) of  FIG. 5 . The upper graph shows x S (n) weighted by the common weighting factor of about 0.5, while the lower graph may show x D (n) weighted by same common weighting factor.  
         [0046]     Because the signal corresponding to the playback of news may be a monaural signal, the right-channel pre-processor output signal x D (n) (the “difference signal”) may approach a zero value during time period  620 . When classical music is used as the input signal, both the left-channel pre-processor output signal x D (n) (the “summed signal”) and the difference signal x D (n) may only differ slightly from the left and right-channel input signals x L (n) and x R (n) during time period  630 .  
         [0047]     The echo compensation system  110  may measure the power spectrum of the right-channel pre-processor output signal x D (n). When the measured power spectrum falls below a pre-determined threshold, the echo compensation system  110  may inhibit adaptation of the right-channel adaptive compensation filter  154 .  
         [0048]     For a two channel system, the computing power required to adapt the compensations filters  152  and  154  may be approximately halved during the time that adaptation is inhibited. Note that adaptation of the right-channel adaptive compensation filter  154  may be inhibited if the correlation value between the left and right-channel input signals x L (n) and x R (n) is above a predetermined threshold value. In other words, when the difference signal x D (n) is below a certain value.  
         [0049]      FIG. 7  shows three output signals. The first signal is a microphone output signal d(n). The second signal is an output signal e known (n) of a system using certain echo cancellation techniques. The third signal is an output signal e(n) generated by the multi-channel echo compensation system  110 . The signal d(n) may represent the microphone output signal without echo compensation. The output signal e(n) of the multi-channel echo compensation system  110  may be shown with about a 4 dB boost for purposes of clarity. However, without the additional 4 dB boost, the output signal processed according to some echo compensating techniques e known (n) may be almost indistinguishable from the output signal e(n) generated by the multi-channel echo compensation system  110 . This illustrates that the resulting echo reduction may still be very effective even though adaptation of the right-channel adaptive compensation filter  154  is prevented. Accordingly, multi-channel echo compensation system  110  may provide effective echo-cancelling while using significantly less computing power.  
         [0050]     A correlation value between the left and right-channel input signals x L (n) and x R (n) may be performed by determining the squared norm of the signal power at the output of the pre-processor  140 . The correlation value may be determined using recursive methods to reduce computational costs. For example, if the signal vectors have a length N, the squared norm of the signal vector at time n equals the squared norm of the vector at time n−1 plus the n th  value squared of the signal vector minus the (n−N) th  value squared of the signal vector. The correlation value may be determined according to the follow equations: 
 
∥ x   S ( n )∥ 2   =∥x   S ( n− 1)∥ 2   +x   S   2 ( n )− x   S   2 ( n−N ), 
 
∥ x   D ( n )∥ 2   =∥x   D ( n− 1)∥ 2   +x   D   2 ( n )− x   D   2 ( n−N ). 
 
         [0051]     For highly correlated input signals x L (n) and x R (n), the corresponding difference signal x D (n) may be small. In particular, the signal power may be determined as the norm of a corresponding signal vector. Thus, a good indication of the correlation between the two signals may be obtained.  
         [0052]     If the correlation value falls below a pre-determined threshold, corresponding release variable a S (n) and a D (n) may be set to zero according to the equations below:  
           a   S     ⁡     (   n   )       =     {               1   ,               if   ⁢           ⁢              x   S     ⁡     (   n   )            2       &gt;     P   0       ,               0   ,           else   ,           ⁢     
     ⁢       a   D     ⁡     (   n   )         =     {           1   ,               if   ⁢           ⁢              x   D     ⁡     (   n   )            2       &gt;     P   0       ,               0   ,           else   .                     
 
         [0053]     The pre-determined threshold, for example, may be set to about 0.03. Accordingly, the determination of the output signal e(n) after subtraction of the compensation signal may be represented by the following:  
         e   ⁡     (   n   )       =       d   ⁡     (   n   )       -         a   S     ⁡     (   n   )       ⁢       ∑     i   =   0       N   -   1       ⁢           h   ^       S   ,   i       ⁡     (   n   )       ⁢       x   S     ⁡     (     n   -   i     )             -         a   D     ⁡     (   n   )       ⁢       ∑     i   =   0       N   -   1       ⁢           h   ^       D   ,   i       ⁡     (   n   )       ⁢         x   D     ⁡     (     n   -   i     )       .                 
 
         [0054]     In the equation above, the summed terms, which may correspond to a convolution, may be determined if the corresponding release variables are non-zero. Thus, adaptation of the adaptive compensation filters may be performed under the conditions given by the following equations:  
             h   ^       S   ,   i       ⁡     (     n   +   1     )       =     {                       h   ^       S   ,   i       ⁡     (   n   )       +     μ   ⁢           x   S     ⁡     (     n   -   i     )       ⁢     e   ⁡     (   n   )                      x   S     ⁡     (   n   )            2     +              x   D     ⁡     (   n   )            2             ,             if   ⁢           ⁢       a   S     ⁡     (   n   )         =   1                     h   ^       S   ,   i       ⁡     (   n   )       ,         else         ⁢     
     ⁢         h   ^       D   ,   i       ⁡     (     n   +   1     )         =     {                   h   ^       D   ,   i       ⁡     (   n   )       +     μ   ⁢           x   D     ⁡     (     n   -   i     )       ⁢     e   ⁡     (   n   )                      x   S     ⁡     (   n   )            2     +              x   D     ⁡     (   n   )            2             ,             if   ⁢           ⁢       a   S     ⁡     (   n   )         =   1                     h   ^       D   ,   i       ⁡     (   n   )       ,           else   .                     
 
         [0055]     Note that adaptive filters of some echo compensation systems may exhibit convergence behavior according to the equations below when the input signals are not entirely correlated  
                 h   ^     L     ⁡     (   n   )       ⁢     |       E   ⁢     {       e   2     ⁡     (   n   )       }       →   min         =       h   L     ⁡     (   n   )         ,     
     ⁢             h   ^     R     ⁡     (   n   )       ⁢     |       E   ⁢     {       e   2     ⁡     (   n   )       }       →   min         =         h   R     ⁡     (   n   )       .           
 
         [0056]     However, the multi-channel echo compensation system  110  may exhibit convergence according to the equations below even if the input signals are fully correlated. Accordingly, the multi-channel echo compensation system  110  may avoid a non-unique solution:  
                 h   ^     S     ⁡     (   n   )       ⁢     |       E   ⁢     {       e   2     ⁡     (   n   )       }       →   min         =         h   L     ⁡     (   n   )       +       h   R     ⁡     (   n   )           ,     
     ⁢             h   ^     D     ⁡     (   n   )       ⁢     |       E   ⁢     {       e   2     ⁡     (   n   )       }       →   min         =         h   L     ⁡     (   n   )       -         h   R     ⁡     (   n   )       .             
 
         [0057]      FIG. 8  shows an alternate aspect of a dual-channel pre-processor  810 , which may be used in place of the pre-processor  140  shown in  FIG. 3 . The pre-processor  810  may include left and right channel delay circuits  812  and  814 , left and right channel adaptive pre-processing filters  820  and f 22 , and a left-channel first summing circuit  830 . The pre-processor  810  may also include a left-channel second summing circuit  834 , a left-channel multiplier circuit  836 , a right-channel summing circuit  840  and a right-channel multiplier circuit  842 . The right-channel pre-processing filter  822  and the left-channel delay circuit  812  may receive the left-channel input signal x L (n). Similarly, the left-channel pre-processing filter  820  and right-channel delay circuit  814  may receive the right-channel input signal x R (n).  
         [0058]     The left-channel first summing circuit  830  may sum an output of the left-channel delay circuit  812  and the left-channel adaptive pre-processing filter  820  to produce a left-channel error signal e S (n). The left-channel error signal e S (n) may be used to adapt the left-channel adaptive pre-processing filter  820 . Note that an output of the left-channel pre-processor filter  820  may be subtracted from an output of the left-channel delay circuit  812 , as indicated by the minus sign. The left-channel multiplier circuit  836  may multiply an output of the left-channel second summing circuit  834  by a common weighting factor  850  equal to about 0.5. The left-channel multiplier circuit  836  may provide the left-channel pre-processor output signal x S (n).  
         [0059]     The right-channel summing circuit  840  may sum an output of the right-channel delay circuit  814  and the right-channel adaptive pre-processing filter  822  to produce a right-channel error signal e D (n). The right-channel error signal e D (n) may be used to adapt the right-channel adaptive pre-processing filter  822 . Note that an output of the right-channel pre-processor filter  822  may be subtracted from an output of the right-channel delay circuit  814 , as indicated by the minus sign. The right-channel multiplier circuit  842  may multiply an output of the right-channel summing circuit  840  by a common weighting factor  860  equal to about 0.5. The right-channel multiplier circuit  842  may provide the right-channel pre-processor output signal x D (n).  
         [0060]     Use of the delay circuits  812  and  814  may ensure that the adaptive pre-processing filters  820  and  822  both converge to optimal solutions. The delay attributed to the delay circuits  812  and  814  may be configured or programmed to be about one-half of the length of the corresponding filters.  
         [0061]     The dual-channel pre-processor  810  may be used in an interview situation where one of the speakers is positioned closer or further from a microphone relative to the other speaker. The amplitude of the left or right channel may then be changed and/or delays may be inserted. Additional filters that modify the tone may also be used.  
         [0062]     Two speakers may be located on different sides relative to a microphone during an interview. The amplitude of one speaker&#39;s voice may be greater on a first channel, while the amplitude of the other speaker&#39;s voice may be greater on the second channel. In this circumstance, the left and right-channel input signals x L (n) and x R (n) may be considered to be highly correlated, but their difference signal, x D (S), may not approach a zero value. The adaptive pre-processing filters  820  and  822  and their associated delay circuits  812  and  814  may overcome this problem.  
         [0063]     The left-channel pre-processor output signal x S (n) and right-channel pre-processor output signal x D (n) provided by the dual-channel pre-processor  810  may be represented by the following equations:  
             x   D     ⁡     (   n   )       =       1   2     ⁡     [         x   R     ⁡     (     n   -     N   V       )       -       ∑     i   =   0       N   G       ⁢         x   L     ⁡     (     n   -   i     )       ⁢         g   ^       D   ,   i       ⁡     (   n   )             ]         ,     
     ⁢         x   S     ⁡     (   n   )       =         1   2     ⁡     [         x   L     ⁡     (     n   -     N   V       )       +       ∑     i   =   0       N   G       ⁢         x   R     ⁡     (     n   -   i     )       ⁢         g   ^       S   ,   i       ⁡     (   n   )             ]       .           
 
         [0064]     Adaptation of the left and right-channel adaptive pre-processing filters  820  and  822  may be performed using a least-squares type of process. Alternatively, other processes may be used, such as a normalized least mean squares process, a recursive least-squares process, and a proportional least mean squares process. Further variations of the minimization process may be used to ensure that the output does not diverge.  
         [0065]     Adaptation of the left and right-channel adaptive pre-processing filters  820  and  822  may be based on determination of the left and right-channel error signals e S (n) and e D (n). The left and right-channel error signals e S (n) and e D (n) may be determined in accordance with the following equations:  
         e   D     =     2   ⁢       x   D     ⁡     (   n   )             
           e   S     ⁡     (   n   )       =         x   L     ⁡     (     n   -     N   V       )       -       ∑     i   =   0       N   G       ⁢         x   R     ⁡     (     n   -   i     )       ⁢           g   ^       S   ,   i       ⁡     (   n   )       .               
 
         [0066]     Adaptation of the left and right-channel adaptive pre-processing filters  820  and  822  may be performed according to the equations below:  
               g   ^       D   ,   i       ⁡     (     n   +   1     )       =           g   ^       D   ,   i       ⁡     (   n   )       +       μ   G     ⁢           x   L     ⁡     (     n   -   i     )       ⁢       e   D     ⁡     (   n   )             ∑     p   =   0       N   G       ⁢           ⁢       x   L   2     ⁡     (     n   -   p     )                 ,     
     ⁢           g   ^       S   ,   i       ⁡     (     n   +   1     )       =           g   ^       S   ,   i       ⁡     (   n   )       +       μ   G     ⁢             x   R     ⁡     (     n   -   i     )       ⁢       e   S     ⁡     (   n   )             ∑     p   =   0       N   G       ⁢           ⁢       x   R   2     ⁡     (     n   -   p     )           .               
 
         [0067]     The adaptation of the left and right-channel adaptive pre-processing filters  820  and  822  may be performed at a slower rate than the adaptation of the adaptive compensation filters  152  and  154  of  FIG. 1 . A slower adaptation rate may be achieved, for example, by choosing smaller increments, such that 0≦μ G &lt;&lt;μ≦1. Because the left and right-channel adaptive pre-processing filters  820  and  822  may not necessarily converge toward an optimal solution, left and right channel delay circuits  812  and  814  may be configured so that the delay times of N V  cycles may be about half of the corresponding filter non-causal parts, where  
         N   V     ≈         N   G     2     .         
 
         [0068]     When the input signals are monaural signals, meaning x L (n)=x R (n), the left and right-channel adaptive pre-processing filters  820  and  822  may both converge to optimal solutions. The transfer functions may be represented by the following:  
             G   ^     S     ⁡     (     ⅇ   jΩ     )       ⁢              E   ⁢     {       e   S   2     ⁡     (   n   )       }       →   min       ⁢       =     ⅇ       -   jΩ     ⁢           ⁢     N   V           ,     
     ⁢           G   ^     D     ⁡     (     ⅇ   jΩ     )       ⁢              E   ⁢     {       e   D   2     ⁡     (   n   )       }       →   min       ⁢     =       ⅇ       -   jΩ     ⁢           ⁢     N   V         .                   
 
         [0069]     Based on the transfer functions, the left and right-channel pre-processor output signals x S (n) and x D (n) may then have the form governed by the equations below. The below equations may be similar to the equations governing the dual-channel pre-processor  140  of  FIG. 1  except for a delay of N V  cycles:  
             x   S     ⁡     (   n   )       =       1   2     ⁡     [         x   R     ⁡     (     n   -     N   V       )       +       x   L     ⁡     (     n   -     N   V       )         ]         ,     
     ⁢         x   D     ⁡     (   n   )       =         1   2     ⁡     [         x   R     ⁡     (     n   -     N   V       )       -       x   L     ⁡     (     n   -     N   V       )         ]       .           
 
         [0070]     The multi-channel echo compensation system  110  has been described for the case using two audio channels (e.g., for a stereophonic system). However, the multi-channel echo compensation system  110  may include more than two channels. If more than two channels are present, the dual channel pre-processor  140  or  810  may be configured to delay adaptation of all but one of the adaptive filters if a correlation value is greater than a predetermined threshold value, for example, at about a 97% correlation.  
         [0071]     The logic, circuitry, and processing described above may be encoded in a computer-readable medium such as a CDROM, disk, flash memory, RAM or ROM, an electromagnetic signal, or other machine-readable medium as instructions for execution by a processor. Alternatively or additionally, the logic may be implemented as analog or digital logic using hardware, such as one or more integrated circuits (including amplifiers, adders, delays, and filters), or one or more processors executing amplification, adding, delaying, and filtering instructions; or in software in an application programming interface (API) or in a Dynamic Link Library (DLL), functions available in a shared memory or defined as local or remote procedure calls; or as a combination of hardware and software.  
         [0072]     The logic may be represented in (e.g., stored on or in) a computer-readable medium, machine-readable medium, propagated-signal medium, and/or signal-bearing medium. The media may comprise any device that contains, stores, communicates, propagates, or transports executable instructions for use by or in connection with an instruction executable system, apparatus, or device. The machine-readable medium may selectively be, but is not limited to, an electronic, magnetic, optical, electromagnetic, or infrared signal or a semiconductor system, apparatus, device, or propagation medium. A non-exhaustive list of examples of a machine-readable medium includes: a magnetic or optical disk, a volatile memory such as a Random Access Memory “RAM,” a Read-Only Memory “ROM,” an Erasable Programmable Read-Only Memory (i.e., EPROM) or Flash memory, or an optical fiber. A machine-readable medium may also include a tangible medium upon which executable instructions are printed, as the logic may be electronically stored as an image or in another format (e.g., through an optical scan), then compiled, and/or interpreted or otherwise processed. The processed medium may then be stored in a computer and/or machine memory.  
         [0073]     The systems may include additional or different logic and may be implemented in many different ways. A controller may be implemented as a microprocessor, microcontroller, application specific integrated circuit (ASIC), discrete logic, or a combination of other types of circuits or logic. Similarly, memories may be DRAM, SRAM, Flash, or other types of memory. Parameters (e.g., conditions and thresholds) and other data structures may be separately stored and managed, may be incorporated into a single memory or database, or may be logically and physically organized in many different ways. Programs and instruction sets may be parts of a single program, separate programs, or distributed across several memories and processors. The systems may be included in a wide variety of electronic devices, including a cellular phone, a headset, a hands-free set, a speakerphone, communication interface, or an infotainment system.  
         [0074]     While various embodiments of the invention have been described, it will be apparent to those of ordinary skill in the art that many more embodiments and implementations are possible within the scope of the invention. Accordingly, the invention is not to be restricted except in light of the attached claims and their equivalents.

Technology Category: y