[Freeswitch-users] Portaudio Improvements

João Mesquita jmesquita at freeswitch.org
Sat Jan 22 07:56:59 MSK 2011


Steve, I was actually hoping you would tackle this thread, thank you! :-)

I am not a DSP guy and to be honest, I don't think I am much of anything
guy, but I did some shallow study on AEC algos... It seems that the delay
between the recording and the playback can also degrade the AEC performance
considerably. I personally thought that the use of pablio and the lack o
lower latency audio path on mod_pa would help make the speex AEC be
completely useless...

I am not talking about bad performance, I am talking about doing nothing
with the filters and making it even worse if you tweak too much... Now, I
think that before we pursue a solution, we have to find the problem and
that's the question I was going to ask you.

Can you point us towards the right direction? Skype is _very_ useable on a
Mac and "most" windows machines I have used. On the mac they almost never
fail... Are we able to achieve that type of quality? If we are able to, in
which direction should we start going towards?

I honestly thought that replacing mod_pa completely was the solution at
first (and creating some abstraction layer to plug in os dependent drivers
such as coreaudio for mac or dx for windows directly into FS, thus reducing
this delay of buffers such as pablio) but now I am almost convinced that it
was never the problem. If we can decide that before anything else, I think
we could make some progress.

Thank you,
João Mesquita


On Sat, Jan 22, 2011 at 1:17 AM, Steve Underwood <steveu at coppice.org> wrote:

> On 01/22/2011 02:22 AM, Mitch Capper wrote:
> > I did look into AEC a bit, although one of the best options for me
> > looked like the DirectX AEC support, but obviously this would be
> > windows only.   There is oslec for linux which tries to do AEC at a
> > driver level and is in the kernel.   The speex AEC processing does not
> > look very complex
> > (http://www.speex.org/docs/manual/speex-manual/node7.html using
> > speex_echo_playback/speex_echo_capture).   Of course easier said then
> > done, and does require passing it the audio in the structure it
> > expects.  One of my main concerns is I do not also know about how good
> > the speex AEC processing is for it to be worthwhile and would be
> > curious if it has been found to give good results in voip settings (as
> > I only saw to the contrary).
> >
> > Finally, it probably hasn't been too high on my list due to the fact
> > that I have been using my client with a headset so the need is not
> > really there.
> OSLEC is not an AEC. It is a line echo canceller, and very much
> optimised for that role. It would be useless for acoustic echoes.
>
> The AEC built into Windows and the speex echo canceller have a problem
> all echo cancellation is now suffering on modern PCs. Its a problem that
> keeps coming up on the speex mailing list. Like most echo cancellers
> they assume the mic and speaker sampling rates match. It turns out that
> with an increasing number of sound cards this is not the case. The
> sample rates are very similar, but they are not locked, and drift in
> relation to each other. This wrecks the performance of the echo
> canceller, and is not an easy problem to work around.
>
> That said, there are products, like skype, which *appear* to do a good
> job of echo cancellation. If you play around with skype, though, you'll
> notice it isn't actually echo cancelling. It seems to be adaptively
> juggling gains to give the appearance of clean duplex communication, and
> the result is fairly pleasing. I think it may be using a similar
> approach to the DSP Group duplex speakerphone chips from the early 90s.
> They were never quite as good as the kind of full AEC seakerphones I was
> developing around the same time. They did, however, give results far
> better than traditional simplex speakerphones using a DSP too
> underpowered to perform full echo cancellation.
>
> Steve
>
>
>
> _______________________________________________
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20110122/ae5200e6/attachment.html 


More information about the FreeSWITCH-users mailing list