[Asterisk-Users] Echo cancellation

Steve Kann stevek at stevek.com
Thu Dec 4 08:20:58 MST 2003


On Dec 3, 2003, at 8:22 PM, Peter Zeltins wrote:

>> The library has several DSP features, including AGC, denoising, and
>> echo cancellation.  These are all provided via integration with
>> preprocessing from the SPEEX library.  I don't know if DAN allows you
>> to turn on/off echo cancellation or not.  However, the echo
>> cancellation code from speex is still very immature, and not quite
>> there yet.  In particular, it is almost completely ineffective is AGC
>> is also being used, because the echo canceller leaves a smaller
>> residual echo in the signal, and the AGC then boosts up the residual
>> echo to full volume.
>
> Thanks for clearing this up - I was kinda curios what all those 
> settings
> are. Echo cancellation in my setup seems to increase echo (both with 
> AGC
> turned on or off), callers are reporting it sounds like speaking into 
> barrel
> or something.

Yup.  Sounds about right.

I've found that under some controlled circumstances, the Speex EC has 
some effect, but most of the time, it doesn't work, and sometimes makes 
things worse.


>
>> One thing you can do if you can't configure your card properly is use 
>> a
>> "push to talk" feature.  This would need to be implemented in DIAX,
>> although example code exists in other clients.  Basically, this looks
>> for the user to press some "hotkey" before speaking (like a
>> walkie-talkie"), and keeps audio muted unless the key is pressed.
>
> That would be last ditch solution - not very convenient when I have to 
> press
> "talk" button every time. I've been able to reduce echo by decreasing
> headphone volume and mike sensitivity, and turning "echo cancellation" 
> off,
> but it's still there a little bit. Also it seems to depend on PSTN end 
> - if
> I make a local call out to PSTN there is almost no echo, but calls to
> mobiles (GSM) are plagued by echo to a much greater degree. Wonder 
> why???

Well, if someone can help make better EC for the library, that would be 
great.  Right now, the most I can do is try available code out to see 
if it works.  I'd really like to see EC in there, but it is difficult, 
and I don't have the time to develop it myself at the moment.

-SteveK




More information about the asterisk-users mailing list