Echo mitigation in the presence of variable delays due to adaptive jitter buffers
AssigneeCisco Technology, Inc.
InventorsMichael A. RAMALHO, Gary Scrabutenas, Jim Frauenthal
Life of this patent
Estimating the term…
Abstract
In an example embodiment, a control connection is introduced between an adaptive jitter buffer (AJB) and an adaptive bulk delay (ABD) buffer of an echo canceller (ECAN) in an Internet Protocol (IP) conference bridge. The control connection allows the AJB to control the amount of delay inserted by the ABD in the ECAN convolution processor (CP) signal path. The adjustment in ABD delay restores the time alignment of the ECAN internal echo estimate and offsets variations in echo tail delay introduced by network induced AJB delay changes. Time-invariance is preserved in the echo tail path.
Claims20
Logic encoded in a tangible, non-transitory computer readable medium for execution by a processor, and when executed operable to:
- receive a first signal from a first interface;
- receive a second signal from a second interface, the second signal comprising an echo of the first signal, the second signal passing through an adaptive jitter buffer;
- generate an echo cancelation signal to eliminate the echo of the first signal;
- determine an echo delay for the echo cancellation signal based on a bulk delay constant that comprises a jitter buffer delay from the adaptive jitter buffer;
- obtain data representative of a change in the size of the adaptive jitter buffer;
- adjust the bulk delay constant based on the change in the jitter buffer delay from the adaptive jitter buffer.
A method, comprising:
- receiving a first signal from a first interface;
- receiving a second signal from a second interface, the second signal comprising an echo of the first signal, the second signal passing through an adaptive jitter buffer;
- generating, by a processor, an echo cancelation signal to eliminate the echo of the first signal;
- determining, by the processor, an echo delay for the echo cancellation signal based on a bulk delay constant that comprises a jitter buffer delay from the adaptive jitter buffer;
- obtaining data representative of a change in the size of the adaptive jitter buffer;
- adjusting, by the processor, the bulk delay constant based on the change in the jitter buffer delay from the adaptive jitter buffer.
Dependencies are inferred from the claim text.