From: Vladimir Vassilevsky on 4 Sep 2009 15:53 steveu wrote: > Echo cancellation is a process of system identification > and subtracting the identified system model from the received signal. A low > bit rate speech codec, like AMR, is heavily lossy. It does not preserve the > signal nearly well enough to allow either the necessary system > identification or the subtraction process to work. Perhaps what the OP really wants is the howling suppression, which is the different problem then the AEC. The anti howling filter could be implemented in his setup. Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
From: createdon2003 on 5 Sep 2009 00:50 Yeah I know it very well that I can't model the acoustic path in this case. But for this case also there are solutions (There are products which caters this problem). It might not be Acoustic Echo Canceler but Acoustic Echo Control for Non linear channels involving vocoders. There are many pubs on the same. Neways this was not in my mind to ask when I first made the posting. My doubt was entirely diff...just drifted away... But thanks Vlad, Dirk and steve for your time. Sankalp
From: maury001 on 8 Sep 2009 11:50 On Sep 4, 8:32 am, Vladimir Vassilevsky <nos...(a)nowhere.com> wrote: > createdon2003 wrote: > > may be it will be more clear by a diagram. > > > --far_end-------------------|ENC|-------|DEC|--------// > > | | speaker > > | \\ > > AEC > > | LEM with > > T_60~60ms > > | > > --to far end----------------|DEC|-------|ENC|--------O microphone > > | > > Now that i have given the diagram (hope the situation is clearer now) can > > you suggest any good material which can help me design a AEC for this > > condition. > > You can not. The AEC is not going to work since you have vocoders in the > loop. > > Vladimir Vassilevsky > DSP and Mixed Signal Design Consultanthttp://www.abvolt.com If that blanket statement were true, then echo cancellers with G.729 vocoders would not work. Nor would channels with ADPCM enc/dec. I would think that you are obviously restricting your statements to the high-compression codecs/vocoders. The echo canceller would still work, just not very well. Sankalp, echo from the cell side is, indeed, mostly due to the mechanical feedback from speaker to microphone. There is an ITU recommendation (can't remember which off hand) that limits this. However, we have found that not all handsets adhere to this standard. Worst, the measurement by the manufacturers is highly dependent on how the test set up was made, which source was used, the artificial head used, etc. This "echo" is highly non-linear, and linear models do not represent the echo nor solve the problem well. You might want to drop a line to Has Gerhlich at Head Acoustics, in Germany. He has done a lot of research in this area, and in my opinion, is one of the World experts. I have often thought that this problem could be eased if one could somehow efficiently get an adaptive estimate of the Volterra kernel from the input/output data. Good Luck, you have certainly pick a very difficult area of research. Maurice Givens
From: steveu on 8 Sep 2009 12:19 >On Sep 4, 8:32=A0am, Vladimir Vassilevsky <nos...(a)nowhere.com> wrote: >> createdon2003 wrote: >> > may be it will be more clear by a diagram. >> >> > --far_end-------------------|ENC|-------|DEC|--------// >> > =A0 =A0| =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = >=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 | speaker >> > =A0 =A0| =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = >=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 \\ >> > =A0 AEC >> > =A0 =A0| =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = >=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0LEM with >> > T_60~60ms >> > =A0 =A0| =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 = >=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 >> > --to far end----------------|DEC|-------|ENC|--------O microphone >> > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0= > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| >> > Now that i have given the diagram (hope the situation is clearer now) c= >an >> > you suggest any good material which can help me design a AEC for this >> > condition. >> >> You can not. The AEC is not going to work since you have vocoders in the >> loop. >> >> Vladimir Vassilevsky >> DSP and Mixed Signal Design Consultanthttp://www.abvolt.com > >If that blanket statement were true, then echo cancellers with G.729 >vocoders would not work. Nor would channels with ADPCM enc/dec. I >would think that you are obviously restricting your statements to the >high-compression codecs/vocoders. The echo canceller would still >work, just not very well. That's an odd thing for someone like you to say. The non linearities in G.711 limit an echo canceller to about 30 dB or so of ERLE, with some nasty quirks at low levels that demand NLP. ADPCM (e.g. 32kbps G.726) reduces the potential ERLE considerably, and NLP has to be used quite aggressively. EC with ADPCM is not all that useful. You're lucky if you can even make an EC converge through an G.729 channel, and the results are not useful. The quirks are just too severe. You should know that as well as anyone. Steve
From: maury001 on 8 Sep 2009 17:22 On Sep 8, 11:19 am, "steveu" <ste...(a)coppice.org> wrote: > >On Sep 4, 8:32=A0am, Vladimir Vassilevsky <nos...(a)nowhere.com> wrote: > >> createdon2003 wrote: > >> > may be it will be more clear by a diagram. > > >> > --far_end-------------------|ENC|-------|DEC|--------// > >> > =A0 =A0| =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 > = > >=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 | speaker > >> > =A0 =A0| =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 > = > >=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 \\ > >> > =A0 AEC > >> > =A0 =A0| =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 > = > >=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0LEM with > >> > T_60~60ms > >> > =A0 =A0| =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 > = > >=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 > >> > --to far end----------------|DEC|-------|ENC|--------O microphone > >> > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 > =A0= > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| > >> > Now that i have given the diagram (hope the situation is clearer now) > c= > >an > >> > you suggest any good material which can help me design a AEC for > this > >> > condition. > > >> You can not. The AEC is not going to work since you have vocoders in > the > >> loop. > > >> Vladimir Vassilevsky > >> DSP and Mixed Signal Design Consultanthttp://www.abvolt.com > > >If that blanket statement were true, then echo cancellers with G.729 > >vocoders would not work. Nor would channels with ADPCM enc/dec. I > >would think that you are obviously restricting your statements to the > >high-compression codecs/vocoders. The echo canceller would still > >work, just not very well. > > That's an odd thing for someone like you to say. > > The non linearities in G.711 limit an echo canceller to about 30 dB or so > of ERLE, with some nasty quirks at low levels that demand NLP. > > ADPCM (e.g. 32kbps G.726) reduces the potential ERLE considerably, and NLP > has to be used quite aggressively. EC with ADPCM is not all that useful. > > You're lucky if you can even make an EC converge through an G.729 channel, > and the results are not useful. The quirks are just too severe. You should > know that as well as anyone. > > Steve- Hide quoted text - > > - Show quoted text - The original statement was that they don't work. They work, but not very well. Because they don't converge very well to the desired, is not to say they don't converge. I'm being very theoretical because I have a "thing" about blanket statements. There is a lot of misconception about convergence and stability. You can have the algorithm converge and not be stable. You can have it be stable and not converge very well to the desired. You can actually get a LMS- based algorithm to converge, with small error, to an unstable system. Analysis of LMS filters typically looks at the weight difference between the desired and the estimated. If that difference is relatively large, it is said the filter doesn't converge. It may very well converge, just not to want you want. LMS is derived from minimum squared error, not weight difference. This subtlety is often lost when talking about LMS-based algorithms. When a LMS-based algorithm produces a relativly stable estimate, it is working, and working the way designed - minimizing the squared error. One analysis, using weight difference, looked at adaptive filters in tandem and came to a conclusion that was arguably not supported by the data. I did an analysis of the same configuration, but using minimum squared error analysis to show the result consistent with the data. Yes, the NLP becomes very "useful" under these conditions. u-law will converge to about 30 dB ERLE, and a-law to about 34dB. I have had echo cancellers converge on ADPCM. Not to the 34 dB of a-law, but they do converge. The reason for mentioning Volterra kernel is that this is a non-linear model. I have always been interested in how well a Volterra-based echo canceller would work on these signals (and not just a 2nd-order Volterra), just never had the time. Finally, I admit I was nit-picking. Maurice Givens
First
|
Prev
|
Next
|
Last
Pages: 1 2 3 4 Prev: PPI Interface Clock in BF537 EZLITE Board Next: Sliding Block Viterbi Decoder |