<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;"><DIV>I remember I had to expose the echo cancelation level implementing a get_echo_level( ) function based on this:</DIV>
<DIV><A href="http://lists.xiph.org/pipermail/speex-dev/2008-September/006889.html">http://lists.xiph.org/pipermail/speex-dev/2008-September/006889.html</A></DIV>
<DIV> </DIV>
<DIV>Using that value and averaging samples as "fedback" I did small corrections to sampling rate until convergence, although this not always worked.When it did, convergence was quite fast (seconds).</DIV>
<DIV>Resampling did not introduce noticiable CPU increase.But may be the small time used for conversions was the cause of non-convergence.I think this path is hard and uncertain, and now,i would dive first in DirectSound to try to obtain synchronized streams before passing them to speex.</DIV>
<DIV> </DIV>
<DIV>Regarding ASIO, you have to install a special "driver" for it to work,and this seems unaceptable for general users.<BR><BR>--- El <B>jue, 22/7/10, limaoquan2000 <I><limaoquan2000@126.com></I></B> escribió:<BR></DIV>
<BLOCKQUOTE style="BORDER-LEFT: rgb(16,16,255) 2px solid; PADDING-LEFT: 5px; MARGIN-LEFT: 5px"><BR>De: limaoquan2000 <limaoquan2000@126.com><BR>Asunto: [Speex-dev] Sound card problem in acoustic echo<BR>Para: speex-dev@xiph.org<BR>Fecha: jueves, 22 de julio, 2010 12:25<BR><BR>
<DIV id=yiv1854386245>Thank you.<BR><BR>But it will cost you a long time to get the accurate play and capture frequencies.<BR>Does your program test two frequencies of the sound card each time? Because<BR>different sound cards have different frequency errors.<BR>And the resampling program is also time consuming because the target frequency is<BR>so close to the sampling frequency of the input signal, isn't it?<BR><BR>I have tested program based on Windows waveform functions and also DirectSound.<BR>They have similar frequency error.<BR><BR>BTW: What's your conclusion of ASIO driver? Why "it was of no practical use"?<BR><BR>> I worked some time for a company doing AEC using Speex on Windows.It is true it depends a lot on sound card models. I remember I could do AEC by resampling frequencies so play and record frequencies where equal.Frequencies where aprox 100Hz appart.Also, I know that on other cases AEC was achieved by disabling FX DirectSound
effects where it wasn`t possible before that.Try to disable all you don't need before calling Speex AEC function.<BR>> Also, I tried the ASIO driver,as an experiment. I think it worked, but it was of no practical use.<BR><BR><BR><BR><SPAN title=neteasefooter>
<HR>
<A href="http://mail.163.com/?from=fe1" rel=nofollow target=_blank>网易邮箱,没有垃圾邮件的邮箱。</A> </SPAN></DIV><BR>-----Adjunto en línea a continuación-----<BR><BR>
<DIV class=plainMail>_______________________________________________<BR>Speex-dev mailing list<BR><A href="http://de.mc242.mail.yahoo.com/mc/compose?to=Speex-dev@xiph.org" ymailto="mailto:Speex-dev@xiph.org">Speex-dev@xiph.org</A><BR><A href="http://lists.xiph.org/mailman/listinfo/speex-dev" target=_blank>http://lists.xiph.org/mailman/listinfo/speex-dev</A><BR></DIV></BLOCKQUOTE></td></tr></table><br>