[Speex-dev] About Sampling Rate Correction in acoustic echo cancellation
LiMaoquan2000
LiMaoquan2000 at 126.com
Wed Jan 19 02:44:03 PST 2011
Hi all,
We have discussed so many about sampling rate asynchronous (or offset) between rendering (D/A converter) and capturing (A/D converter) of most PC soundcards. It seems all acoustic echo cancellers, include AEC in speex, can not deal with this trouble, because it causes a drift of echo path and also buffer overflow and underflow which jumps the delay of echo path seriously.
Unfortunately, this kind of sampling rate asynchronous exists in most low-cost PC soundcards we have. So it is a big obstacle for us to make an AEC algorithm practical.
I have asked many people for help. It seems impossible to eliminate this offset. Then I found something in microsoft msdn website. It seems microsoft's AEC can deal with different sampling rate.
> http://msdn.microsoft.com/en-us/library/ff536174%28VS.85%29.aspx
> In Windows XP, the clock rate must be matched between the capture and render streams. The AEC system filter implements no mechanism for matching sample rates across devices. This limitation precludes using AEC when the capture and render functions are performed by different devices. In Windows XP SP1, Windows Server 2003, and later, this limitation does not exist. The AEC system filter correctly handles mismatches between the clocks for the capture and render streams, and separate devices can be used for capture and rendering.
There is also a IEEE paper, Adaptive Sampling Rate Correction for Acoustic Echo Control in Voice-Over-IP, which introduced a complex method to estimate the frequency offset and resynchronize the signals using arbitrary sampling rate conversion. I wonder if it can provide enough performance. Because I have also designed a sampling rate converter. After tested the offset accurately, it can reduce the offset to less than 0.1Hz, then the signal after resampling is send to speex AEC. But there is still hearable echo even if it is far less than that can be heared before resampling.
Does anybody have any suggestion about practical acoustic echo cancellation in low-cost soundcards? You know, most low-cost soundcards have the problem of sampling rate asynchronous.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.xiph.org/pipermail/speex-dev/attachments/20110119/02a051c9/attachment.htm
More information about the Speex-dev
mailing list