Patent Publication Number: US-8111840-B2

Title: Echo reduction system

Description:
BACKGROUND OF THE INVENTION 
     1. Priority Claim 
     This application claims the benefit of priority from European Patent Application No. 06 009468.7, filed May 8, 2006, which is incorporated by reference. 
     2. Technical Field 
     This disclosure relates to echo reduction. In particular, this disclosure relates to echo reduction and suppression of residual echo signals in communication systems. 
     3. Related Art 
     Echo reduction or suppression may be needed in communication systems, such as hands-free sets and speech recognition systems. Communication systems may include a microphone that detects a desired signal, such as a speech signal from a user. However, the microphone may also detect undesirable signals, such as echoes produced by a loudspeaker in the audio environment. 
     Echoes may occur when signals transmitted by a remote party and received by a near-end are output by loudspeakers at the near end. Such signals may be detected by the near-end microphone and re-transmitted back to the remote party. Echoes may be annoying to the user and may result in a communication failure. 
     Echo suppression may be particularly difficult if the speaker is moving, such as when a driver is using a hands-free set and also steers a vehicle. In this situation, an impulse response of the “loudspeaker-room-microphone” (LRM) environment may be time-variant. Existing echo suppression systems may be unreliable and may not be particularly effective in a time-varying LRM environment. After application of echo suppression techniques, residual echoes may be present. The severity of the residual echoes may be increased by the large delay paths associated with mobile phone services. Accordingly, a need exists for an echo reduction system capable of reducing echoes and residual echoes. 
     SUMMARY 
     A filter bank may separate a microphone output signal into sub-band microphone signals. An audio input filter bank may separate audio input signals into of sub-band audio signals. An echo compensation filter receives the audio input signals from each sub-band range and may generate a corresponding estimated echo signal. A speech activity detector may detect the speech of a local speaker by analyzing the power spectrum. The estimated echo signal may be subtracted from the microphone output signal to compensate for echoes. A residual echo reduction circuit may remove any residual echoes in the echo compensated signal based on speech activity. 
     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 
       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. 
         FIG. 1  is an echo reduction system. 
         FIG. 2  is an audio signal filter bank. 
         FIG. 3  is a microphone output filter bank. 
         FIG. 4  is a speech activity detection circuit. 
         FIG. 5  is an echo suppression process. 
         FIG. 6  shows multiple sub-bands of a speech activity detection circuit. 
         FIG. 7  shows an echo processing circuit. 
         FIG. 8  shows speech signals processed by an echo reduction system. 
     
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
       FIG. 1  is an echo reduction system  110 . A telephony hands-free set  114  may include a microphone  120  and a loudspeaker  124 . Utterances from a local speaker  130  may be detected by the microphone  120  and may be transmitted to a remote communication party  134 . The loudspeaker  124  may generate a loudspeaker signal based on an audio input signal x(n) transmitted by a remote communication party  134 . 
     The microphone  120  may detect undesirable signals, such as echo signals produced by the loudspeaker  124 . Echoes may occur when signals transmitted by the remote communication party  134  are output by loudspeakers at the near end, and retransmitted via the microphone back to the remote communication party  134 . Such echoes may occur in various speech recognition systems or speech dialog systems. 
     The microphone  120  may detect speech signals s(n) of the local speaker  130  as well as background noise signals b(n). The microphone  120  may further detect a “loudspeaker-room-microphone” (LRM) transfer signal d(n) based on an impulse response h(n) of a LRM environment or system  140 . A microphone output signal y(n) may include contributions from the speech signal s(n), the background noise signal b(n) and the LRM transfer signal d(n). The term “n” may denote a discrete time index. 
     The echo reduction system  110  may provide echo compensation and residual echo suppression. Echo compensation may be performed by an adaptive echo compensation filtering system that may model the loudspeaker-room-microphone system transfer function using an impulse response. Such processing may be performed by dividing the signal spectrum into sub-bands and processing each sub-band separately. Alternatively, the input signals my be processed in the frequency domain using Fast Fourier Transforms of the respective audio input signal x(n) and the microphone output signal y(n). 
     An audio input filter bank  146  may generate a plurality of sub-band audio signals X(e jΩ     μ   ,n) based on the audio input signal x(n). A microphone output filter bank  150  may generate a plurality of microphone sub-band signals Y(e jΩ     μ   ,n) based on the microphone output signal y(n). The mid-frequency μ of each sub-band may be denoted by Ω μ . 
       FIG. 2  shows the microphone output filter bank  146 , which for clarity, may include multiple sub-bands (e.g., five sub-bands are shown). A signal divider  210  may determine the number of sub-bands and the frequency range for each of the sub-bands. Multiple sub-band processing circuits  220 - 224  may perform processing for the respective sub-band frequency ranges. In some systems, the audio input filter bank  146  may include a common or different number of sub-bands and sub-band processing circuits. An optional sub-band synthesizer  230  may combine the sub-band output signals X(e jΩ     μ   ,n). In some systems, the sub-band synthesizer  230  is not used allowing the echo compensation filter  160  to receive the outputs of the sub-band processing circuits  220 - 224 . 
     Echo compensation, detection of speech activity (whether the speaker is silent or is speaking) and suppression of residual echo may be performed in the sub-band ranges. After suppression of the residual echo in the sub-bands, a synthesizer  230  may synthesize the desired output signal, which may be transmitted to the remote communication party  134 . 
       FIG. 3  shows the audio input filter bank  306 , which for clarity, may include more or less sub-bands (e.g., five sub-bands are shown). A signal divider  310  may determine the number of sub-bands and the frequency ranges for each of the sub-bands. A plurality of sub-band processing circuits  320 - 324  may process the respective sub-band frequency ranges. However, the audio input filter bank  146  may include a different number of sub-bands and corresponding sub-band processing circuits. A sub-band synthesizer  330  may combine the sub-band outputs for subsequent processing. In some systems, the sub-band synthesizer  330  is not used. In some of these systems, the echo compensation filter  160  may receive the outputs of the sub-band processing circuits  320 - 324 . 
     The audio sub-band signals X(e jΩ     μ   ,n) generated by the audio input filter bank  146  may be filtered by an adaptive echo compensation filter  160 . The filter coefficients of the echo compensation filter  160  may model the impulse response in the sub-bands. Adaptation of the filter coefficients may be based on a statistical process, such as a recursive least-squares process, normalized least mean squares process, proportional least mean squares process, and/or least mean squares process. An estimated echo signal {circumflex over (D)}(e jΩ     μ   ,n) in each sub-band may be obtained by processing the audio input sub-band signals X(e jΩ     μ   ,n) with the impulse response Ĥ(e jΩ     μ   ,n) of the echo compensation filter  160 . 
     The echo compensation filter  160  may include 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, and/or attenuate or boost an amplitude of a signal. Alternatively, the echo compensation filter  160  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. 
     The echo compensation filter  160  may generate the estimated echo signal {circumflex over (D)}(e jΩ     μ   ,n), which may correspond to an echo received by the remote communication party  134 . A summing circuit  166  may combine (subtract) the estimated echo signal {circumflex over (D)}(e jΩ     μ   ,n) and the microphone sub-band signals Y(e jΩ     μ   ,n) to generate echo compensated signals E(e jΩ     μ   ,n) in each sub-band range. 
     A residual echo reduction circuit  170  may process the echo compensated signals E(e jΩ     μ   ,n) to suppress residual echoes. The residual echo reduction circuit  170  may be part of the residual echo processing circuitry  172 . The residual echo reduction circuit  170  may include or may communicate with a noise reduction circuit  174  and may remove the background noise contribution b(n) of the echo compensated signals E(e jΩ     μ   ,n). Echo-suppressed sub-band output signals Ŝ(e jΩ     μ   ,n) generated by the residual echo reduction circuit  170  may be synthesized to obtain a desired output signal. The output signal may comprise the sub-band signals transmitted to the remote communication party  134 . 
     The residual echo reduction circuit  170  may use a Wiener filter implementation to estimate a power density spectrum of the residual echo Ŝ εε (Ω μ ,n) and estimate the power density spectrum of the echo compensated sub-band signals Ŝ ee (Ω μ ,n). The Wiener filter may exhibit the following filter response: 
     
       
         
           
             
               G 
               ⁡ 
               
                 ( 
                 
                   
                     ⅇ 
                     
                       j 
                       ⁢ 
                       
                           
                       
                       ⁢ 
                       
                         Ω 
                         μ 
                       
                     
                   
                   , 
                   n 
                 
                 ) 
               
             
             = 
             
               max 
               ⁢ 
               
                 
                   { 
                   
                     
                       G 
                       min 
                     
                     , 
                     
                       1 
                       - 
                       
                         β 
                         ⁢ 
                         
                             
                         
                         ⁢ 
                         
                           
                             
                               
                                 S 
                                 ^ 
                               
                               ɛɛ 
                             
                             ⁡ 
                             
                               ( 
                               
                                 
                                   Ω 
                                   μ 
                                 
                                 , 
                                 n 
                               
                               ) 
                             
                           
                           
                             
                               
                                 S 
                                 ^ 
                               
                               ee 
                             
                             ⁡ 
                             
                               ( 
                               
                                 
                                   Ω 
                                   μ 
                                 
                                 , 
                                 n 
                               
                               ) 
                             
                           
                         
                       
                     
                   
                   } 
                 
                 . 
               
             
           
         
       
     
     A maximum damping value may be determined by the parameter G min , and the sensitivity of the filter may be controlled by the parameter β. If β&gt;1, the damping may be greater than desired, which may dampen the desired signal below an predetermined level. 
     The filter characteristic or frequency response of the residual echo reduction filter  170  may be adjusted so that damping is sensitive (“aggressive”) when local speaker  130  speech is absent. The echo reduction system  110  may distinguish speech signals produced by the local speaker  130  from signals transmitted by the loudspeaker  124  in the time-variant LRM environment  140 . Such local speaker speech signals s(n) may be detected when the local speaker  130  is moving. Accordingly, the filter response of the residual echo reduction circuit  170  may adapt to the speech activity of the local speaker  130 . 
       FIG. 4  shows a speech activity detection circuit  410 , which may be part of or connected to the residual echo reduction circuit  170 . A noise estimating circuit  414  may receive the microphone sub-band signals Y(e jω     μ   ,n) output by the microphone output filter bank  150 . The noise estimating circuit  414  may estimate the power density spectrum Ŝ bb (Ω μ ,n) in the various sub-bands of the background noise b(n) acquired by the microphone  120 . The noise estimating circuit  414  may estimate the power density spectrum Ŝ bb (Ω μ ,n) using statistical methods, such as methods disclosed in an article entitled “An Efficient Algorithm to Estimate the Instantaneous SNR of Speech Signals,” R. Martin, Eurospeech 1993, Berlin, Conf. Proceed., p. 1093-1096, September 1993, which is incorporated by reference. 
       FIG. 5  is a flow diagram showing an echo suppression. The echo compensation filter  160  may receive the audio input signals X(e jΩ     μ   ,n) (Act  512 ) and may generate estimated echo signals {circumflex over (D)}(e jΩ     μ   ,n) (Act  520 ). A speech activity detector  410  may detect speech of a local speaker (Act  530 ). A combining circuit  166  may generate a echo compensated signals E(e jΩ     μ   ,n) by subtracting the estimated echo signal {circumflex over (D)}(e jΩ     μ   ,n) from the microphone sub-band signals Y(e jΩ     μ   ,n) (Act  540 ). A residual echo reduction circuit  170  may suppress the residual echo in the echo compensated signals E(e jΩ     μ   ,n) based on the detected speech activity (Act  550 ), and may output echo suppressed sub-band output signals Ŝ(e jΩ     μ   ,n) (Act  560 ) to a remote communication party  134 . 
       FIG. 4  shows a first smoothing circuit  420  that may smooth the microphone sub-band signals Y(e jΩ     μ   ,n), and a second smoothing circuit  426  that may smooth the estimated echo signal {circumflex over (D)}(e jΩ     μ   ,n) generated by the echo compensation filter  160 . The signals may be smoothed in frequency over predetermined M sub-bands μ=0, M−1 according to the following equations: 
                       S         d   ^     ⁢     d   ^       ,   smooth       ⁡     (       Ω   μ     ,   n     )       =     smooth   ⁢     ⌊         D   ^     ⁡     (       ⅇ     j   ⁢           ⁢     Ω   0         ,   n     )       ,       D   ^     ⁡     (       ⅇ     j   ⁢           ⁢     Ω   1         ,   n     )       ,   …   ⁢           ,       D   ^     ⁡     (       ⅇ     j   ⁢           ⁢     Ω     M   -   1           ,   n     )         ⌋                       S     yy   ,   smooth       ⁡     (       Ω   μ     ,   n     )       =     smooth   ⁢     ⌊       Y   ⁡     (       ⅇ     j   ⁢           ⁢     Ω   0         ,   n     )       ,     Y   ⁡     (       ⅇ     j   ⁢           ⁢     Ω   1         ,   n     )       ,   …   ⁢           ,     Y   ⁡     (       ⅇ     j   ⁢           ⁢     Ω     M   -   1           ,   n     )         ⌋                   
where Ω μ  denotes the mid-frequency of the sub-band μ, and the term “smooth” indicates a selected smoothing function. The pre-determined range of sub-bands may cover the range between about 200 Hz and about 3500 Hz. This range of frequencies may show significant speech signal power levels.
 
     The smoothing circuits  420  and  426  may include a first order recursive filter to smooth the magnitudes, or the squares of the magnitudes of the signals. Smoothing may be performed in a positive direction (Ω 0  to Ω M−1 ) or in a negative direction (Ω M−1  to Ω 0 ) with respect to the frequency range. Smoothing may be performed according to the following equations: 
                   S   ~           d   ^     ⁢     d   ^       ,   smooth       ⁡     (       Ω   0     ,   n     )       =       1   2     ⁡     [                D   ^     ⁡     (       ⅇ     j   ⁢           ⁢     Ω   0         ,   n     )            2     +              D   ^     ⁡     (       ⅇ     j   ⁢           ⁢     Ω   1         ,   n     )            2       ]                           S   ~           d   ^     ⁢     d   ^       ,   smooth       ⁡     (       Ω   μ     ,   n     )       =         λ   Fre     ⁢         S   ~           d   ^     ⁢     d   ^       ,   smooth       ⁡     (       Ω     μ   -   1       ,   n     )         +       (     1   -     λ   Fre       )     ⁢              D   ^     ⁡     (       ⅇ     j   ⁢           ⁢     Ω   μ         ,   n     )            2           ,     
     ⁢       for   ⁢           ⁢   0     &lt;   μ   &lt;   M           
in the positive direction and
 
                 S         d   ^     ⁢     d   ^       ,   smooth       ⁡     (       Ω     M   -   1       ,   n     )       =       1   2     ⁡     [           S   ~           d   ^     ⁢     d   ^       ,   smooth       ⁡     (       Ω     M   -   2       ,   n     )       +         S   ~           d   ^     ⁢     d   ^       ,   smooth       ⁡     (       Ω     M   -   1       ,   n     )         ]                         S         d   ^     ⁢     d   ^       ,   smooth       ⁡     (       Ω   μ     ,   n     )       =         λ   Fre     ⁢       S         d   ^     ⁢     d   ^       ,   smooth       ⁡     (       Ω     μ   +   1       ,   n     )         +       (     1   -     λ   Fre       )     ⁢         S   ~           d   ^     ⁢     d   ^       ,   smooth       ⁡     (       Ω   μ     ,   n     )             ,     
     ⁢       for   ⁢           ⁢   0     ≤   μ   &lt;     M   -   1             
in the negative direction.
 
     For a sampling rate of about 11025 Hz and M=256 sub-bands, a smoothing parameter may be selected so that 0.2≦λ Fre ≦0.8. Smoothing the microphone sub-band signals Y(e jΩ     μ   ,n) may yield a smoothed microphone spectrum S yy,mod (Ω μ ,n). 
     The smoothing circuits  420  and  426  may also receive the output Ŝ bb (Ω μ ,n) of the noise estimating circuit  414 , which may be based on the estimated power density spectrum of the microphone sub-band signals Y(e jΩ     μ   ,n). The smoothing circuits  420  and  426  may determine the maximum of the smoothed estimated echo spectrum according to the following equations: 
                       S         d   ^     ⁢     d   ^       ,   mod       ⁡     (       Ω   μ     ,   n     )       =       m   ⁢   ax     ⁢     {         S         d   ^     ⁢     d   ^       ,   smooth       ⁡     (       Ω   μ     ,   n     )       ,       K   b     ⁢         S   ^     bb     ⁡     (       Ω   μ     ,   n     )           }                       S     yy   ,   mod       ⁡     (       Ω   μ     ,   n     )       =       m   ⁢   ax     ⁢     {         S     yy   ,   smooth       ⁡     (       Ω   μ     ,   n     )       ,       K   b     ⁢         S   ^     bb     ⁡     (       Ω   μ     ,   n     )           }                   
where the background noise may be overestimated by K b .
 
     Satisfactory echo suppression results may be obtained when 2≦K b ≦16. Weighting functions w 1 S {circumflex over (d)}{circumflex over (d)},mod (Ω μ ,n)=w 2 S yy,mod (Ω μ ,n) may be chosen to determine a distance measure, which may indicate speech activity. The values of w 1  and w 2  may be selected depending on the value of Ω μ . Alternatively, the values of w 1  and w 2  may be constants. 
     A flank detection circuit  430  may detect a strong level increase or decrease of the microphone sub-band signals Y(e jΩ     μ   ,n) or the estimated echo signal {circumflex over (D)}(e jΩ     μ   ,n). Strong temporary level changes may cause artifacts when calculating the distance measure for determining the speech activity of the local speaker. If no abrupt level changes are detected (i.e., temporarily relatively homogeneous signals are present), the smoothed output signals smooth S yy,smooth (Ω μ ,n) and S {circumflex over (d)}{circumflex over (d)},smooth (Ω μ ,n) generated by the smoothing circuits  420  and  426 , respectively, may be used by the signal flank detection circuit  430  according the following equations: 
               Δ   ⁡     (       Ω   μ     ,   n     )       =     {           0   ,           ⁢   if           (         S         d   ^     ⁢     d   ^       ,   smooth       ⁡     (       Ω   μ     ,   n     )       &gt;       K   Δ     ⁢       S         d   ^     ⁢     d   ^       ,   smooth       ⁡     (       Ω   μ     ,     n   -   1       )           )                           ⋁     (         S         d   ^     ⁢     d   ^       ,   smooth       ⁡     (       Ω   μ     ,   n     )       &lt;       1     K   Δ       ⁢       S         d   ^     ⁢     d   ^       ,   smooth       ⁡     (       Ω   μ     ,     n   -   1       )           )                             ⋁     (         S     yy   ,   smooth       ⁡     (       Ω   μ     ,   n     )       &gt;       K   Δ     ⁢       S     yy   ,   smooth       ⁡     (       Ω   μ     ,     n   -   1       )           )                             ⋁     (         S     yy   ,   smooth       ⁡     (       Ω   μ     ,   n     )       &lt;       1     K   Δ       ⁢       S     yy   ,   smooth       ⁡     (       Ω   μ     ,     n   -   1       )           )                 1   ,         else                 
using a detection threshold of 4≦K Δ ≦100.
 
     A distance detection circuit  436  may determine a spectrum distance measure based on Δ(Ω μ ,n), and the modified spectra S {circumflex over (d)}{circumflex over (d)},mod (Ω μ ,n) and S yy,mod (Ω μ ,n), calculated by the smoothing circuits  420  and  426  according to the following equations: 
     
       
         
           
             
               C 
               ⁡ 
               
                 ( 
                 
                   
                     Ω 
                     μ 
                   
                   , 
                   n 
                 
                 ) 
               
             
             = 
             
               { 
               
                 
                   
                     
                       
                         Δ 
                         ⁢ 
                         
                             
                         
                         ⁢ 
                         
                           ( 
                           
                             
                               Ω 
                               μ 
                             
                             , 
                             n 
                           
                           ) 
                         
                         ⁢ 
                         
                           C 
                           
                             1 
                             , 
                           
                         
                       
                       , 
                     
                   
                   
                     
                       
                         if 
                         ⁢ 
                         
                             
                         
                         ⁢ 
                         
                           ⌊ 
                           
                             
                               
                                 S 
                                 
                                   
                                     
                                       d 
                                       ^ 
                                     
                                     ⁢ 
                                     
                                       d 
                                       ^ 
                                     
                                   
                                   , 
                                   mod 
                                 
                               
                               ⁡ 
                               
                                 ( 
                                 
                                   
                                     Ω 
                                     μ 
                                   
                                   , 
                                   n 
                                 
                                 ) 
                               
                             
                             &gt; 
                             
                               
                                 K 
                                 1 
                               
                               ⁢ 
                               
                                 
                                   S 
                                   
                                     yy 
                                     , 
                                     mod 
                                   
                                 
                                 ⁡ 
                                 
                                   ( 
                                   
                                     
                                       Ω 
                                       μ 
                                     
                                     , 
                                     n 
                                   
                                   ) 
                                 
                               
                             
                           
                           ⌋ 
                         
                       
                       , 
                     
                   
                 
                 
                   
                     
                       
                         Δ 
                         ⁢ 
                         
                             
                         
                         ⁢ 
                         
                           ( 
                           
                             
                               Ω 
                               μ 
                             
                             , 
                             n 
                           
                           ) 
                         
                         ⁢ 
                         
                           C 
                           2 
                         
                       
                       , 
                     
                   
                   
                     
                       
                         if 
                         ⁢ 
                         
                             
                         
                         [ 
                         
                           
                             
                               K 
                               2 
                             
                             ⁢ 
                             
                               
                                 S 
                                 
                                   yy 
                                   , 
                                   mod 
                                 
                               
                               ⁡ 
                               
                                 ( 
                                 
                                   
                                     Ω 
                                     μ 
                                   
                                   , 
                                   n 
                                 
                                 ) 
                               
                             
                           
                           ≤ 
                           
                             
                               S 
                               
                                 
                                   
                                     d 
                                     ^ 
                                   
                                   ⁢ 
                                   
                                     d 
                                     ^ 
                                   
                                 
                                 , 
                                 mod 
                               
                             
                             ⁡ 
                             
                               ( 
                               
                                 
                                   Ω 
                                   μ 
                                 
                                 , 
                                 n 
                               
                               ) 
                             
                           
                           ≤ 
                           
                             
                               K 
                               1 
                             
                             ⁢ 
                             
                               
                                 S 
                                 
                                   yy 
                                   , 
                                   mod 
                                 
                               
                               ⁡ 
                               
                                 ( 
                                 
                                   
                                     Ω 
                                     μ 
                                   
                                   , 
                                   n 
                                 
                                 ) 
                               
                             
                           
                         
                         ] 
                       
                       , 
                     
                   
                 
                 
                   
                     
                       
                         Δ 
                         ⁢ 
                         
                             
                         
                         ⁢ 
                         
                           ( 
                           
                             
                               Ω 
                               μ 
                             
                             , 
                             n 
                           
                           ) 
                         
                         ⁢ 
                         
                           C 
                           3 
                         
                       
                       , 
                     
                   
                   
                     
                       
                         if 
                         ⁢ 
                         
                             
                         
                         [ 
                         
                           
                             
                               K 
                               3 
                             
                             ⁢ 
                             
                               
                                 S 
                                 
                                   
                                     
                                       d 
                                       ^ 
                                     
                                     ⁢ 
                                     
                                       d 
                                       ^ 
                                     
                                   
                                   , 
                                   mod 
                                 
                               
                               ⁡ 
                               
                                 ( 
                                 
                                   
                                     Ω 
                                     μ 
                                   
                                   , 
                                   n 
                                 
                                 ) 
                               
                             
                           
                           ≤ 
                           
                             
                               S 
                               
                                 yy 
                                 , 
                                 mod 
                               
                             
                             ⁡ 
                             
                               ( 
                               
                                 
                                   Ω 
                                   μ 
                                 
                                 , 
                                 n 
                               
                               ) 
                             
                           
                           ≤ 
                           
                             
                               K 
                               4 
                             
                             ⁢ 
                             
                               
                                 S 
                                 
                                   
                                     
                                       d 
                                       ^ 
                                     
                                     ⁢ 
                                     
                                       d 
                                       ^ 
                                     
                                   
                                   , 
                                   mod 
                                 
                               
                               ⁡ 
                               
                                 ( 
                                 
                                   
                                     Ω 
                                     μ 
                                   
                                   , 
                                   n 
                                 
                                 ) 
                               
                             
                           
                         
                         ] 
                       
                       , 
                     
                   
                 
                 
                   
                     
                       
                         Δ 
                         ⁢ 
                         
                             
                         
                         ⁢ 
                         
                           ( 
                           
                             
                               Ω 
                               μ 
                             
                             , 
                             n 
                           
                           ) 
                         
                         ⁢ 
                         
                           C 
                           4 
                         
                       
                       , 
                     
                   
                   
                     
                       
                         if 
                         ⁢ 
                         
                             
                         
                         [ 
                         
                           
                             
                               S 
                               
                                 yy 
                                 , 
                                 mod 
                               
                             
                             ⁡ 
                             
                               ( 
                               
                                 
                                   Ω 
                                   μ 
                                 
                                 , 
                                 n 
                               
                               ) 
                             
                           
                           &gt; 
                           
                             
                               K 
                               4 
                             
                             ⁢ 
                             
                               
                                 S 
                                 
                                   
                                     
                                       d 
                                       ^ 
                                     
                                     ⁢ 
                                     
                                       d 
                                       ^ 
                                     
                                   
                                   , 
                                   mod 
                                 
                               
                               ⁡ 
                               
                                 ( 
                                 
                                   
                                     Ω 
                                     μ 
                                   
                                   , 
                                   n 
                                 
                                 ) 
                               
                             
                           
                         
                         ] 
                       
                       , 
                     
                   
                 
                 
                   
                     
                       0 
                       , 
                     
                   
                   
                     
                       else 
                       . 
                     
                   
                 
               
             
           
         
       
     
     The detection threshold values may be selected as: K 1 =16, K 2 =4, K 3 =4, and K 4 =16. The distances C(Ω μ ,n) may be specified by detection parameters C 1 =−0.4, C 2 =0.1, C 3 =0.1, and C 4 =0.6. Large positive values of the spectrum distance measure C(Ω μ ,n) may indicate that the power density of the microphone spectrum dominates the power density of the estimated echo. If the power density of the estimated echo significantly exceeds the power density of the microphone spectrum, strong changes in the LRM system  140  may be indicated, which may result in a high negative cost parameter C 1 . 
     The determination of both Δ(Ω μ ,n) and C(Ω μ ,n) may be restricted to sub-bands that show a significant power of speech signals. This may indicate that the sub-bands may be restricted to μ∈[μ start ,μ end ] where μ start  and μ end  correspond to a frequency range of about 200 Hz to about 300 Hz. A summing circuit  440  may sum the results C(Ω μ ,n) for the individual sub-bands, where 
               C   ⁡     (   n   )       =       ∑     μ   =     μ   start         μ   end       ⁢           ⁢       C   ⁡     (       Ω   μ     ,   n     )       .             
Smoothing over a pre-determined time interval may be performed to obtain a smoothed distance measure  C (n).
 
       FIG. 6  shows multiple sub-band speech activity detector circuits  410 , which deliver on input to the summing circuit  440 . Although three sub-bands for the speech activity detectors  410  are shown, a different number of sub-band speech activity detectors may be included. 
     Based upon the detected speech activity as measured by  C (n), the summed output C(n) of the distance detection circuit  436  may be used to adapt the filter characteristic of the residual echo reduction circuit  170 . If no speech activity is detected based on the smoothed distance measure  C (n), residual echo filtering may be performed based on the square of the magnitude of the estimated echo signal {circumflex over (D)}(e jΩ     μ   ,n) or the maximum of |{circumflex over (D)}(e jΩ     μ   ,n)| 2  and the power density of the residual echo Ŝ εε (Ω μ ,n). 
     Double-talk may occur when both the local speaker  130  and the remote communication party  134  speak simultaneously, and significant speech activity is detected. When double-talk occurs, a Wiener filter with a time-dependent filter parameter β(n) may be used. The residual echo reduction circuit  170  may process residual echo according to the following equations:
 
 G   mod ( e   jΩ     μ     ,n )=max{ G   min   , {tilde over (G)}   mod ( e   jΩ     μ     ,n )} where
 
               G   ⁢     (       ⅇ     j   ⁢           ⁢     Ω   μ         ,   n     )       =     {                 1   -       β   ⁡     (   n   )       ⁢           S   ^     ɛɛ     ⁡     (       Ω   μ     ,   n     )             S   ^     ee     ⁡     (       Ω   μ     ,   n     )             ,             if   ⁢           ⁢       C   _     ⁡     (   n   )         &gt;     C   thres                   1   -       β   ⁡     (   n   )       ⁢       max   ⁢     {           S   ^     ɛɛ     ⁡     (       Ω   μ     ,   n     )       ,              D   ^     ⁡     (       ⅇ     j   ⁢           ⁢     Ω   μ         ,   n     )            2       }             S   ^     ee     ⁡     (       Ω   μ     ,   n     )             ,         else         ⁢     
     ⁢   or   ⁢           ⁢     
     ⁢     G   ⁡     (       ⅇ     j   ⁢           ⁢     Ω   μ         ,   n     )         =     {             1   -       β   ⁡     (   n   )       ⁢           S   ^     ɛɛ     ⁡     (       Ω   μ     ,   n     )             S   ^     ee     ⁡     (       Ω   μ     ,   n     )             ,             if   ⁢           ⁢       C   _     ⁡     (   n   )         &gt;     C   thres                   1   -       β   ⁡     (   n   )       ⁢                D   ^     ⁡     (       ⅇ     j   ⁢           ⁢     Ω   μ         ,   n     )            2           S   ^     ee     ⁡     (       Ω   μ     ,   n     )             ,           else   .                       
The mid-frequency of the sub-band μ may be denoted by Ω μ , and Ŝ ee (Ω μ ,n) and Ŝ εε (Ω μ ,n) may denote the estimated power density of the echo compensated signal and the estimated power density of the residual echo, respectively. The discrete time index may be denoted by n, and β(n) may be a filter parameter based upon the detected speech activity.  C (n) may be a measure for the detected speech activity, and C thres  may be a predetermined threshold value. The filter characteristic of the residual echo filter circuit  170  may alternatively be limited by replacing one of the above characteristics by max[G min , G(e jΩ     μ   ,n)] with a pre-determined value G min .
 
     The parameter β(n) may control the sensitivity of the filter based on the smoothed distance measure according to the following equation: 
               β   ⁡     (   n   )       =     {             β   1     ,             if   ⁢           ⁢       C   _     ⁡     (   n   )         &gt;     C   thres                     β   2     &gt;     β   1       ,           else   .                   
where suitable values for the β-parameters may be β 1 =1 and β 2 =1000. A predetermined threshold value, C thres , may indicate the presence of significant speech activity from the local speaker  130 . Echo suppression may be limited by the value of G min , e.g., G min =0.1.
 
     If the estimated power density of the echo compensated signal greatly exceeds the estimated power density of the residual echo, suppression of the residual echo may be minimized so that the microphone output signal is not significantly modified. In contrast, if the estimated power density of the residual echo exceeds the estimated power density of the echo compensated signal, compensated signal may be filtered aggressively. 
     Suppressing the residual echo in the echo compensated signal may include filtering the echo compensated signal with a filter having the following frequency response: 
               G   ⁡     (       ⅇ     j   ⁢           ⁢     Ω   μ         ,   n     )       =     1   -       β   ⁡     (   n   )       ⁢           S   ^     ɛɛ     ⁡     (       Ω   μ     ,   n     )             S   ^     ee     ⁡     (       Ω   μ     ,   n     )                   
where Ŝ ee (Ω μ ,n) and Ŝ εε (Ω μ ,n) denote the estimated power density of the echo compensated signal. The estimated power density of the residual echo and β(n) may be a filter parameter based on the detected speech activity.
 
     The power density spectrum Ŝ ee (Ω μ ,n) of the echo compensated sub-band microphone signals E(e jΩ     μ   ,n) may be recursively determined according to the following equation:
 
 Ŝ   ee (Ω μ   , n )=λ e   Ŝ   ee (Ω μ   ,n− 1)+(1−λ e )| E ( e   jΩ     μ     ,n )| 2  
 
where a smoothing parameter may be chosen as 0≦λ e ≦1.
 
     Further, the power density spectrum Ŝ εε (Ω μ ,n) of the residual echo may be determined according to the following equation:
 
 Ŝ   εε (Ω μ   ,n )= Ŝ   xx (Ω μ   ,n )| Ĥ   Δ ( e   jΩ     μ     ,n )| 2  
 
where the estimated echo compensation Ĥ Δ (e jΩ     μ   ,n) provided by the echo compensation filter  160  may be calculated by methods described in an article entitled “Step-Size Control in Subband Echo Cancellation Systems,” G. Schmidt, IWANEC 1999, Pocona Manor, Pa., USA, Conf. Proceed., p. 116-119, 1999, which is incorporated by reference.
 
     The estimated power density spectrum Ŝ xx (Ω μ ,n) of the audio signal output of the loudspeaker  124  may be calculated according to the following equation:
 
Ŝ xx (Ω μ   ,n )=λ x   Ŝ   xx (Ω μ   ,n− 1)+(1−λ x )| X ( e   jΩ     μ     ,n )| 2  
 
where the smoothing parameter may be chosen as 0≦λ x ≦1.
 
       FIG. 7  shows more of the echo processing circuitry  172 . The residual echo reduction circuit  170  may filter the echo compensated signals E(e jΩ     μ   ,n). The filter characteristics G mod (e jΩ     μ   ,n) of the residual echo reduction circuit  170  may be adapted based on the results of the speech activity detection circuit  410 . 
     A β-parameter circuit  750  may receive input from the local speech activity detector  720  and determine an appropriate value of β. The residual reduction circuit  170  may utilize the β-parameter value. 
     A local speech activity detector  720  may include the first and second smoothing circuit  420  and  426  shown in  FIG. 4 . The local speech activity detector  720  may receive the estimated echo signals {circumflex over (D)}(e jΩ     μ   ,n) for the sub-bands, the microphone sub-band signals Y(e jΩ     μ   ,n), and the output of the noise estimating circuit  414 . The power density spectrum of the background noise Ŝ bb (Ω μ ,n) obtained by the noise estimating circuit  414  may provide input to an artificial noise or “comfort noise” generator  730 . 
     The artificial noise generator  730  may generate artificial noise with substantially the same statistical power distribution as the background noise. The artificially generated noise signal or “comfort noise” signal B(e jΩ     μ   ,n) may be generated when the sub-band output signals Ŝ(e jΩ     μ   ,n) generated by the residual echo reduction circuit  170  has a power density below that of the remaining background noise. A switch  740  may allow the system to select between the comfort noise signal B(e jΩ     μ   ,n) and the sub-band output signals Ŝ(e jΩ     μ   ,n) to avoid an abrupt change of the background noise transmitted to the remote communication party  134 . The residual echo reduction circuit  170  may determine whether to output the comfort noise signal. 
     The desired signal or sub-band output signal Ŝ(e jΩ     μ   ,n) transmitted to the remote communication party  134  may be synthesized from the sub-band signals according to the following equation: 
                 S   ^     ⁡     (       ⅇ     j   ⁢           ⁢     Ω   μ         ,   n     )       =     {               E   ⁡     (       ⅇ     j   ⁢           ⁢     Ω   μ         ,   n     )       ⁢       G   mod     ⁡     (       ⅇ     j   ⁢           ⁢     Ω   μ         ,   n     )         ,           if   ⁢           ⁢   no   ⁢           ⁢   comfort   ⁢           ⁢   noise   ⁢           ⁢   is   ⁢           ⁢   to   ⁢           ⁢   be   ⁢           ⁢   output                 B   ⁡     (       ⅇ     j   ⁢           ⁢     Ω   μ         ,   n     )       ,           if   ⁢           ⁢   comfort   ⁢           ⁢   noise   ⁢           ⁢   only   ⁢           ⁢   is   ⁢           ⁢   to   ⁢           ⁢   be   ⁢           ⁢     output   .                     
where E(e jΩ     μ   ,n) and B(e jΩ     μ   , n) may denote the echo compensated signal and the artificial noise signal in sub-bands, respectively.
 
       FIG. 8  illustrates simulated waveforms. For each of the four panels, the abscissa shows the power of a signal, and the ordinate shows the time in seconds. Panel A shows a simulated speech signal of the local speaker  130 , and panel B shows a corresponding microphone output signal. The microphone output signal may include the speech signal as well as an echo contribution. 
     The LRM environment  140  was changed by simulating movement of the local speaker  130  at a time t=5 seconds, and again at a time t=15 seconds. Panel D shows the addition of double talk from a time t=20.5 seconds to a time t=27.5 seconds. 
     Panel C shows the smoothed distance measure  C (n) as a result of the speech activity detection circuit  410 . As shown by the waveform, the smoothed distance measure  C (n) does not respond or responds slightly to the speaker&#39;s movements. In particular,  C (n) may be below the threshold C thres =1. Panel C may show significant residual echo suppression while the speaker moves. During the period of time when double-talk exists, the smoothed distance measure  C (n) may indicate speech activity of the local speaker  130 . As a result, the desired output signal Ŝ(e jΩ     μ   ,n) may show a correspondence with the simulated speech signal of the local speaker. 
     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. 
     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. 
     The systems may include additional or different logic and may be implemented in many 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 or wireless phone, a headset, a hands-free set, a speakerphone, communication interface, or an infotainment system. 
     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.