&gt;I remember?I had to expose the echo cancelation level implementing a get_echo_level( ) function based on this:<br>&gt;http://lists.xiph.org/pipermail/speex-dev/2008-September/006889.html<br><br>This is really a good idea to determine the frequency difference between capture<br>and play of the sound card. But it need constant far-end voice and a long time<br>because it must repeat the process of "resampling, test echo" for many times.<br><br>Have you tried the AEC in DirectSound? If this AEC is usable for all sound cards,<br>perhaps microsoft has solved this problem already. Can we choose proper options<br>of the DirectSound to solved this problem and disable its AEC at the same time?<br><br>&gt;<br>&gt;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).<br>&gt;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,<br><br>&gt;and now,i would dive first in DirectSound to try to obtain synchronized streams before passing them to speex.<br><br>Waiting for your good news.<br><br>&gt;Regarding ASIO, you have to install a special "driver"? for it to work,and this seems unaceptable for general users.<br><br>&gt;--- El jue, 22/7/10, limaoquan2000 &lt;limaoquan2000@126.com&gt; escribi:<br><br>&gt;Thank you.<br><br>&gt;But it will cost you a long time to get the accurate play and capture frequencies.<br>&gt;Does your program test two frequencies of the sound card each time Because<br>&gt;different sound cards have different frequency errors.<br>&gt;And the resampling program is also time consuming because the target frequency is<br>&gt;so close to the sampling frequency of the input signal, isn't it?<br><br>&gt;I have tested program based on Windows waveform functions and also DirectSound.<br>&gt;They have similar frequency error.<br><br>&gt;BTW: What's your conclusion of ASIO driver? Why "it was of no practical use"?<br><br>&gt;&gt; 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>&gt;&gt; Also, I tried the ASIO driver,as an experiment. I think it worked, but it was of no practical use.<br><br><br><span title="neteasefooter"/><hr/>
<a href="http://qiye.163.com/?163" target="_blank">您想拥有和网易免费邮箱一样强大的软件吗?</a>
</span>