[pulseaudio-discuss] Characterizing webrtc aec with pre-recorded files

Tanu Kaskinen tanuk at iki.fi
Fri Oct 28 12:59:11 UTC 2016


On Fri, 2016-10-28 at 02:13 -0700, N G wrote:
> Hello,
> I'm trying to do a comparison of various noise suppressing methods and I'd
> like to run some noisy audio through the module-echo-cancel using the
> webrtc method. Is there a straightforward way to do this?

I'm not an expert on the echo-cancel stuff, but just load the module
and play something to the sink it creates? Here's the basic way to load
the module:

pactl load-module module-echo-cancel sink_name=foo sink_master=master aec_method=webrtc

"foo" is the name of the new sink, and "master" is the name of the sink
where the filtered audio will be forwarded. Use "pactl list sinks" to
find the correct name for the master sink name, or leave the
sink_master argument out to use the default sink.

If you only want to test noise suppression, you might want to disable
some of the filtering that is enabled by default. For this, pass the
aec_args argument to the module. The contents of aec_args are a string
with space-separated key=value values, like this:

    aec_args="arg1=val1 arg2=val2"

The supported arguments aren't currently properly documented, but maybe
you can figure them out from the code:
https://cgit.freedesktop.org/pulseaudio/pulseaudio/tree/src/modules/echo-cancel/webrtc.cc

The "valid_modargs" array defines the supported keys (line 61), and to
figure out what is enabled by default, see the constants defined from
line 43 onwards.

-- 
Tanu

https://www.patreon.com/tanuk


More information about the pulseaudio-discuss mailing list