Hello Jean-Marc and all, I?ve got a problem with speex_echo_cancel usage. I only managed to get an attenuation of 5-8 db using testecho.c and it depends heavily on the playback/capture delay. I used clear speech as far-end input and same speech with a bit of reverb, attenuation and delay as mic nput. I also tried using played and recorded speech for mic input. I tried different constant delays and got the following resuls. When the delay is 50 ms, the attenuation decreases twice, and with a 100 ms delay there?s almost no echo cancellation. Unfortunately, the application suggests the delay is up to 160 ms. I use a frame size of 128 and a tail length of 1024, the sampling rate is 8000. I tried tail lengths of 640, 2048 and 4096 with no significant effect. Also, the filter output looks like the filter re-adapts after each pause in speech. I would be very grateful for suggestions how to make this work properly. Thanks in advance, Julia
> I?ve got a problem with speex_echo_cancel usage. I only managed to get an > attenuation of 5-8 db using testecho.c and it depends heavily on the > playback/capture delay. I used clear speech as far-end input and same speech > with a bit of reverb, attenuation and delay as mic nput. I also tried using > played and recorded speech for mic input. I tried different constant delays and > got the following resuls. When the delay is 50 ms, the attenuation decreases > twice, and with a 100 ms delay there?s almost no echo cancellation. > Unfortunately, the application suggests the delay is up to 160 ms.Just do some buffering to reduce that delay.> I use a frame > size of 128 and a tail length of 1024, the sampling rate is 8000. I tried tail > lengths of 640, 2048 and 4096 with no significant effect. Also, the filter > output looks like the filter re-adapts after each pause in speech. I would be > very grateful for suggestions how to make this work properly.That's often a symptom of having the capture and record done from different devices (subtly different clocks) or otherwise glitches (overruns/underruns) in the capture or playback. Jean-Marc