Re: [GnomeMeeting-list] Enforcing half-duplex?



Am Samstag, 7. Februar 2004 12:45 schrieb Damien Sandras:
> Le sam 07/02/2004 ŕ 00:12, Conrad Beckert a écrit :
> > Pardon for jumping in ;-)
> >
> > >>Something that mutes the local speakers if the level
> >
> > on the mic is above a given level with respect to
> > what's received from peer and mutes the mic
> > otherwise?<<
> > It should be possible to cancel the echos: As the PC
> > "knows" what it sent to the speakers it should be able
> > to subtract exactly that from the stream it recieves
> > from the microphone. (delayed a couple of microseconds
> > - the time the sound travels from the speakers to the
> > microphone + signal delay in the sound card)
> >
> > Doesn't Gnomemeeting, or OpenH323 rather, already have
> > such a feature? I have no problems with feedback
> > interference.
>
> It is foreseen after 1.00 to have echo cancellation. The problem with
> that kind of algorithm is that it consumes a lot of CPU if you want high
> quality. But we have plans about that, yes.

I have some code laying on my harddisk, it is doing a 256 tap echo 
cancellation with double talk detection, the result are quite good. The code 
is not optimized nor really clean, but it does the calculation (8kHz, 16bit) 
on a 700MHz Duron at approx. 10% cpu usage.

At the moment, the code is not ready for real use, the test program is only 
working on prerecorded raw audio, and I have only run minimal tests. I have 
uploaded some waveform plots to  
http://www.kawo1.rwth-aachen.de/~lurchi/echo/index.html .

Problems:
Code cleanup needed
How to incorporate into pwlib
More testing needed
Do some postprocessing?
Patent infringements? (Don't think so, but not sure)
and last: I am busy at the moment, till 26th of Feb. ...


Greetings,

Stefan

-- 
Stefan Brüns  /  Kastanienweg 6 - Zimmer 1206  /  52074 Aachen
mailto:lurch gmx li  http://www.kawo1.rwth-aachen.de/~lurchi/
   phone: +49 241 169-4206     mobile: +49 160 7532733 

Attachment: pgpBGZxbA8DJi.pgp
Description: signature



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]