IP Library Granted Patent US 9,420,114
Granted Patent B2
US 9,420,114 · App. 13/959,991 · Granted Aug 16, 2016

Echo canceller for VOIP networks

Inventors: Rafi Rabipour (Quebec, CA); Dominic Ho (Columbia, MO)
Assignee: TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
H04M9/082H04B3/235
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,420,114
App. No.
13/959,991
Granted
Aug 16, 2016
Kind
B2
Abstract

An echo canceller for an IP network includes an adaptive filter that models the echo path and generates an estimate of the echo signal from a receiving input signal. The echo canceller subtracts the estimate of the echo signal from a sending input signal to generate a sending output signal with reduced echo. Variation in the echo delay is detected. A delay circuit compensates for the changes in the echo delay to provide proper time-alignment between the estimate of the echo signal and the sending input signal so that the echo signal will be more effectively cancelled.

Claims (67)

1. A method of echo cancellation to handle variation of an echo delay, said method comprising:

generating, from a receiving input signal received over an Internet Protocol (IP) network at a first input port of an echo canceller, a first estimate of an echo signal using an adaptive filter that models an echo path between a first output port and a second input port of the echo canceller;

computing a first estimate of the echo delay by correlating the first estimate of the echo signal with a sending input signal received over the IP network at said second input port;

delaying the first estimate of the echo signal output by the adaptive filter based on the first estimate of the echo delay to time-align the first estimate of the echo signal with the sending input signal; and

subtracting the time-aligned first estimate of the echo signal from the sending input signal to generate a first sending output signal with reduced echo for output over a second output port of the echo canceller.

2. The method of claim 1 wherein computing the first estimate of the echo delay by correlating the estimate of the echo signal with the sending input signal comprises:

correlating the first estimate of the echo signal with a sending input signal received on said second input port to generate a correlation signal; and

computing the first estimate of the echo delay by locating a peak in the correlation signal.

3. The method of claim 1 further comprising:

detecting variation in the echo delay;

wherein computing the first estimate of the echo delay comprises computing the estimate of the echo delay responsive to the detection of variation in the echo delay.

4. The method of claim 3 wherein detecting variation in the echo delay comprises:

computing a performance metric indicative of echo cancellation performance; and

detecting variation in the echo delay based on the performance metric.

5. The method of claim 4 wherein computing a performance metric comprises computing an echo return loss enhancement.

6. The method of claim 5 wherein detecting variation in the echo delay based on the performance metric comprises comparing the echo return loss enhancement to a threshold.

7. The method of claim 1 further comprising realigning the adaptive filter to compensate for the variation of the echo delay.

8. The method of claim 1 further comprising:

generating, from the receiving input signal, a second estimate of an echo signal using an image filter that stores a time-delayed copy of the adaptive filter;

computing a second estimate of the echo delay by correlating the second estimate of the echo signal with the sending input signal;

delaying the second estimate of the echo signal output by the image filter based on the second estimate of the echo delay to time-align the second estimate of the echo signal with the sending input signal;

subtracting the time-aligned second estimate of the echo signal from the sending input signal to generate a second sending output signal with reduced echo for output over a second output port of the echo canceller; and

selecting, based on a predetermined selection criteria, one of the first and second sending output signals for output by the echo canceller.

9. The method of claim 8 wherein selecting one of the first and second sending output signals for output by the echo canceller comprises selecting one of the first and second sending output signals with the lowest energy.

10. The method of claim 8 wherein selecting one of the first and second sending output signals for output by the echo canceller comprises selecting one of the first and second sending output signals having the highest correlation with the sending input signal.

11. The method of claim 1 further comprising:

detecting packet loss in the echo path; and

responsive to the detection of the packet loss, modifying the first sending output signal to include a loss-concealment packet.

12. The method of claim 1 further comprising:

detecting packet loss in the echo path;

responsive to the detection of the packet loss, modifying the receiving input signal to include a loss-concealment packet; and

regenerating the first estimate of the echo signal based on the modified receiving input signal.

13. An echo canceller for an Internet Protocol (IP) network comprising:

a filter circuit comprising an adaptive filter configured to generate, from a receiving input signal received over the IP network at a first input port of the echo canceller, a first estimate of an echo signal using an echo model of an echo path between a first output port and a second input port of the echo canceller;

a delay estimation circuit configured to compute a first estimate of the echo delay by correlating the estimate of the echo signal with a sending input signal received over the IP network at said second input port;

a delay circuit configured to delay the first estimate of the echo signal output by the adaptive filter based on the echo delay to time-align the first estimate of the echo signal with the sending input signal; and

an echo cancellation circuit configured to subtract the time-aligned first estimate of the echo signal from a sending input signal received on said second input port to generate a first sending output signal.

14. The echo canceller of claim 13 wherein the delay estimation circuit is configured to compute the first estimate of the echo delay by:

correlating the first estimate of the echo signal with a sending input signal received on the second input port to generate a correlation signal; and

computing the first estimate of the echo delay by locating a peak in the correlation signal.

15. The echo canceller of claim 13 further comprising a monitoring circuit configured to detect variation in the echo delay, wherein the delay estimation circuit is further configured to:

compute the first estimate of the echo delay responsive to the detection of variation of the echo delay by the monitoring circuit.

16. The echo canceller of claim 15 wherein the monitoring circuit is configured to detect the variation of the echo delay by:

computing a performance metric indicative of echo cancellation performance; and

detecting the variation of the echo delay based on the performance metric.

17. The echo canceller of claim 16 wherein the performance metric computed by the monitoring circuit comprises an echo return loss enhancement.

18. The echo canceller of claim 17 wherein the monitoring circuit is configured to detect the variation of the echo delay based on the performance metric by comparing the echo return loss enhancement to a threshold.

19. The echo canceller of claim 13 wherein the filter circuit is further configured to realign the adaptive filter to compensate for the variation of the echo delay.

20. The echo canceller of claim 13 further comprising a selection circuit wherein:

the filter circuit further comprises an image filter configured to generate a second estimate of an echo signal from the receiving input signal using a copy of the echo model;

the delay estimation circuit is configured to compute a second estimate of the echo delay by correlating the estimate of the echo signal with a sending input signal received on said second input port;

the delay circuit is further configured to delay the second estimate of the echo signal output by the image filter based on the second estimate of the echo delay to time-align the second estimate of the echo signal with the sending input signal; and

the echo cancellation circuit is further configured to subtract the time-aligned second estimate of the echo signal from the sending input signal to generate a second sending output signal and to select one of the first and second sending output signals for output by the echo canceller.

21. The echo canceller of claim 20 wherein the echo cancellation circuit is configured to select one of the first and second sending output signals by selecting one of the first and second sending output signals with the lowest energy.

22. The echo canceller of claim 21 wherein the echo cancellation circuit is configured to select one of the first and second sending output signals by selecting one of the first and second sending output signals having the highest correlation with the sending input signal.

23. The echo canceller of claim 13 further comprising:

a monitoring circuit configured to detect packet loss in the echo path; and

a packet loss concealment circuit configured to, responsive to the detection of the packet loss, modify the first sending output signal to include a loss-concealment packet.

24. The echo canceller of claim 13 further comprising:

a monitoring circuit configured to detect packet loss in the echo path;

a packet loss concealment circuit configured to, responsive to the detection of the packet loss, modify the receiving input signal to include a loss-concealment packet; and

wherein the filter circuit is configured to regenerate the first estimate of the echo signal based on the modified receiving input signal.

25. A non-transitory computer readable medium containing executable program code, that when executed by a processing circuit in an echo canceller for an Internet Protocol (IP) network, causes the processing circuit to:

generate, from a receiving input signal received over the IP network at first input port of an echo canceller, a first estimate of an echo signal using an adaptive filter that models an echo path between a first output port and a second input port of the echo canceller;

compute a first estimate of the echo delay by correlating the first estimate of the echo signal with a sending input signal received over the IP network at said second input port

delay the first estimate of the echo signal output by the adaptive filter based on the first estimate of the echo delay to time-align the echo signal with the sending input signal; and

subtract the time-aligned first estimate of the echo signal from the sending input signal to generate a sending output signal with reduced echo for output over a second output port of the echo canceller.

Assignments (2)
CHANGE OF NAME Recorded Jul 12, 2016
From: TELEFONAKTIEBOLAGET L M ERICSSON (PUBL)
To: TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
Reel/Frame 039310/0156 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2013
From: RABIPOUR, RAFI; HO, DOMINIC
To: TELEFONAKTIEBOLAGET L M ERICSSON (PUBL)
Reel/Frame 031346/0011 →
Continuity (1)
Related Publication 20150043571A1 · Feb 12, 2015