Abstract:
A method for detecting echo path changes in an echo canceller using the statistics of the echo canceling behavior (i.e. signal and performance information), to distinguish between new line and double talk conditions. A moving counter is incremented or decremented based on monitored levels of ERL (Echo Return Loss), ERLE (Echo Return Loss Enhancement), noise and signal energies. When the counter reaches a predetermined threshold value indicative of sustained poor echo cancellation performance, a determination is made that there is a probable new line condition (i.e. echo path change). This echo path change information is then passed to the echo canceller to enable re-convergence.

Description:
FIELD OF THE INVENTION  
       [0001]     The present invention relates generally to detection of echo path changes in echo cancellers, and more particularly to a method of monitoring echo canceling behavior, to distinguish between new line and double talk conditions, and thereby detect echo path changes in echo cancellers.  
       BACKGROUND OF THE INVENTION  
       [0002]     The signal path between two telephones, involving a call other than a local one, requires amplification using a four-wire circuit. The cost and cabling required discourages extending a four-wire circuit to a subscriber&#39;s premises from the local exchange. For this reason, the four-wire trunk circuits are coupled to two-wire local circuits, using a device called a hybrid.  
         [0003]     Hybrid echo, the primary source of echo generated from the public-switched telephone network (PSTN) is created as voice signals are transmitted across the network via the hybrid connection at the two-wire/four-wire PSTN conversion points.  
         [0004]     Unfortunately, the hybrid is by nature a leaky device. As voice signals pass from the four-wire to the two-wire portion of the network, the energy in the four-wire section is reflected back, creating an echo of the speech signal. Provided that the total round-trip delay occurs within just a few milliseconds, the echo results in a user perception that the call is ‘live’ by adding sidetone, thereby making a positive contribution to the quality of the call.  
         [0005]     In cases where the total network delay exceeds 36 ms, however, the positive benefits disappear, and intrusive echo results. The actual amount of signal that is reflected back depends on how well the balance circuit of the hybrid matches the two-wire line. In the vast majority of cases, the match is poor, resulting in a considerable level of signal being reflected back.  
         [0006]     The effective removal of hybrid echo is one key to maintaining and improving perceived voice quality on a call. This has led to intensive research into the area of echo cancellation, with the aim of providing solutions that can reduce echo from hybrids. By employing the results of this research, the overall speech quality is improved significantly.  
         [0007]     It is known in the art to employ adaptive filtering to address hybrid echo cancellation. In an adaptive filter, the filter coefficients are based, in part, on feedback of filter output. Normalized Least Mean Square (NLMS) adaptive filtering is one method, popular in echo cancellation, to address reflections in the telephony system.  
         [0008]     In such echo cancellers, the coefficients of an adaptive filter converge to a certain echo path. Under ideal conditions, a generally acceptable convergence time requires that the echo canceller achieve 27 dB of ERLE (Echo Return Loss Enhancement) in 0.5 sec. Once the coefficients are converged, the echo is canceled from the input signal. When the echo path changes (i.e. call transfer, conferencing), the echo canceller has to quickly re-converge to the new echo path or else the echo will be perceived by the user. Detecting line changes is a difficult problem since the echo resulting from a new hybrid in a changed echo path and the echo generated by the old hybrid from the converged adaptive filter can easily be confused as a double talk signal.  
         [0009]     Prior art solutions to this problem may be found in U.S. Pat. No. 6,035,034 (Trump, Tonu): Double talk and Echo Path Change Detection in a Telephony System, and U.S. Pat. No. 6,226,380 (Heping, Ding): Method of Distinguishing Between Echo Path Change and Double Talk Conditions in an Echo Canceller.  
       SUMMARY OF THE INVENTION  
       [0010]     According to the present invention, there is provided a method for detecting echo path changes in an echo canceller that uses the statistics of the echo canceling behavior (i.e. signal and performance information), to distinguish between new line and double talk conditions. In terms of speech dynamics, double talk conditions are relatively short in duration, whereas a new line condition remains active. Using a moving counter (referred to herein as an Echo Path Change Counter or EPC Counter), an evaluation is made of the probability that the echo canceller behavior is responding to an echo path change and not a double talk scenario. By monitoring the ERL (Echo Return Loss), ERLE (Echo Return Loss Enhancement), noise levels and signal energies, the Echo Path Change Counter is incremented or decremented. When the counter reaches a predetermined threshold value indicative of sustained poor echo performance, a determination is made that there is a probable new line condition. This echo path change information is then passed to the echo canceller to enable re-convergence. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0011]     An embodiment of the present invention will now be described, by way of example only, with reference to the attached Figures, wherein:  
         [0012]      FIG. 1  is a schematic representation an echo canceller according to the present invention; and  
         [0013]      FIG. 2  is a flowchart of a method of detecting echo path changes in operation of the echo canceller of  FIG. 1 , according to the present invention. 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0014]      FIG. 1  shows an adaptive echo canceller according to the prior art. A reference signal (Rin) is applied to an input of echo canceller  100  and to the echo path (i.e. a network echo path resulting from line impedance mismatch) as Rout. The echo path gives rise to an Echo Return Loss (ERL), which is a measure of the actual amount of reflected signal. A high ERL indicates only a relatively small signal reflected back to the talker, and vice versa. The echo canceller  100  models an estimation of the echo introduced by the echo path using the well known NLMS algorithm (although other adaptive algorithms may be used), and subtracts the echo signal from the Line Input Signal (Sin) which contains the undesirable echo, via a subtractor  110 . Provided that the transfer function of the model of the echo path provided by echo canceller  100  is identical to the transfer function of the echo path, the error signal becomes zero and the echo canceller  100  converges to the correct transfer function, resulting in perfect echo cancellation. Echo Return Loss Enhancement (ERLE) is given by the expected echo level subtraction, and is an indicator of the amount of echo removed by an echo canceller.  
         [0015]     Echo Return Loss Enhancement (ERLE) The ERLE is defined as: ERLE(dB)=10log 10 [Power(Sin)/Power(Ein)].  
         [0016]     The echo path change detection algorithm of the preferred embodiment is set forth in  FIG. 2 . Once the echo canceller has converged, the algorithm starts (step  200 ), whereupon the Echo Path Change Counter is intialized and initial ERL, ERLE, noise levels (NoiseLevelRin and NoiseLevelSin) and signal energies (Rin and Sin) are obtained.  
         [0017]     In general, the algorithm according to the present invention monitors ERL and ERLE changes in order to distinguish between double-talk and echo path changes. The moving Echo Path Change counter is incremented or decremented depending on the following conditions:  
         [0018]     Area of Strong Divergence (a “Y” Branch from Step  202 )  
         [0019]     In this state, the algorithm determines with a degree of high confidence that the echo canceller is diverged, and that occurrence of a line change is highly probable. Two conditions are monitored: 
        a) The ERLE is less than the StrongDivergenceThreshold (typically set at −3 dB). This indicates that the echo canceller adds signal energy, instead of subtracting the echo signal;     b) The energy of error signal (ein) is also monitored to validate that the energy is above the noise level (NoiseLevelSin) calculated on the line input signal.        
 
         [0022]     In this case, the Echo Path Change counter is incremented by a fast_step_increment (—e.g. an increment of 4), at step  204 .  
         [0023]     Area of Slight Divergence (a “Y” Branch from Step  206 )  
         [0024]     In this state the algorithm can not determine with high confidence that a new line condition exist. Monitoring the ERLE is not conclusive as changes in the ERLE could also be due to slight double talk or transient effects. Therefore, other tests are performed. The following conditions apply: 
        a) ERL_current is bigger than a minimum_expected_ERL (where minimum_expected_ERL is the minimum expected ERL of 6 dB given in the G.165 ITU-T standard), indicating the absence of strong double talk;     b) ERLE is less than the SlightDivergenceThreshold (typically set at −1.1 dB) indicating that the echo canceller is adding some signal energy to the near-end+echo signal input (sin) instead of subtracting the echo OR ERLE is smaller than the minimum expected ERLE (value based on the initial ERL) AND the difference between ERL current and ERL initial is bigger/smaller than EPC_GoodToBad_ERL_Threshold (e.g. −6 dB)/EPC_BADtoGood_ERL_Threshold (e.g. 6 dB).     c) The input signal energies (reference (rin) and near-end signal+echo (sin)) are bigger than the respective noise levels. If the signals are close to the noise level, the reliability of the above decisions also drops.        
 
         [0028]     In this case, the Echo Path Change counter is incremented by a slow_step_increment (e.g. an increment of 1), at step  208 .  
         [0029]     Area of Strong Double Talk (a “Y” Branch from Step  210 )  
         [0030]     In this state, ERLE indicates that the echo canceller is not well converged, but the reference signal is close to the noise level, thereby indicating a double talk scenario. The following conditions apply: 
        a) The reference signal is less than the respective noise level;     b) The near-end+echo (sin) is greater than the respective noise level;     c) ERLE is less than the ERLEDoubleTalkThreshold (typically 1.5 dB).        
 
         [0034]     In this case, the Echo Path Change counter is decremented by slow_step_decrement (e.g. a decrement of −1), at step  212 .  
         [0035]     Area of Strong Convergence (a “Y” Branch from Step  214 )  
         [0036]     In this state the algorithm determines with a degree of high confidence that the echo canceller is converged and no echo path change has occurred. Two conditions are monitored: 
        a) ERLE indicates that the echo canceller is well converged;     b) The input signal energies (reference (rin) and near-end+echo (sin)) are greater than their respective noise levels.        
 
         [0039]     In this case, the Echo Path Change counter is decremented by fast_step_decrement (e.g. a decrement of 4), at step  216 .  
         [0040]     When the EchoPathChangeCounter reaches a Maximum threshold (e.g. 128), indicated by a “Y” branch from step  218 , an EchoPathChange (step  220 ) is indicated and this information is then passed to the echo canceller (step  222 ).  
         [0041]     It will be appreciated that, although embodiments of the invention have been described and illustrated in detail, various modifications and changes may be made. Different implementations may be made by those familiar with the art, without departing from the scope of the invention.