Arun Raghavan <arun.raghavan at collabora.co.uk> writes: > On Tue, 2012-12-18 at 06:58 +0200, Tanu Kaskinen wrote: >> On Mon, 2012-12-17 at 21:49 +0000, Neil Jerram wrote: >> > Hi pulseaudio folk. I've been following the list for a while, but this >> > is my first post... >> > >> > I'm working with PulseAudio on the GTA04 phone, specifically trying to >> > use it to route the audio during a call, with echo cancellation. > > That's quite interesting! Thanks! It's very educational for me, too! >> > The song is at 44.1 kHz, I think the sound card's default rate is 48 >> > kHz, and it looks from the log as though module-echo-cancel causes the >> > song to be resampled to 32 kHz (and presumably then back to 48 kHz?). >> > Is that all expected, and is there any way of reducing this amount of >> > playback resampling? > > You could try setting the resampler to 'ffmpeg', which is really > light-weight. speex-fixed-0 might be useful to test as well. Thanks, I'll remember to try those settings. >> If you haven't configured the sample rate of module-echo-cancel, then it >> will default to 32 kHz (I don't know why), which indeed will cause >> unnecessary resampling just as you described. If the hardware runs at 48 >> kHz, then I think it's best to pass "rate=48000" to module-echo-cancel. >> >> I think it would make sense to modify module-echo-cancel to use the rate >> of the microphone by default... > > Different echo-cancellation algorithms work best at certain sample rates > (depending on the filters they embed). I've picked the highest viable > one for each canceller as the default, so setting something higher is > not a good idea. > > What would make sense is to pick the sample rate that you're getting > from the GSM sound card, which it seems you're doing already > (rate=8000)? Yes, I see that now, and have written/asked more about it in my other replies. > Also, are you using the webrtc echo canceller or speex? I've tried both. As far as I recall there was no significant difference in the effect on the playback sound (through the ...echo-cancel sink) that I heard. I think that makes sense, because distortions of the playback sound are mostly due to resampling quality and load, not the echo cancellation algorithm. I haven't really reached looking at echo cancellation quality yet. What would you recommend, for the best combination of quality and low CPU use? Thanks again, Neil