echo-cancel: Canceller may use different spec for playback and capture
authorArun Raghavan <git@arunraghavan.net>
Wed, 17 Feb 2016 14:16:56 +0000 (19:46 +0530)
committerTanu Kaskinen <tanuk@iki.fi>
Wed, 24 Feb 2016 16:43:58 +0000 (18:43 +0200)
The original intention was to configure low enough parameters to keep
CPU consumption down. Prior to this change, we assumed that the EC
backend would override the sink parameters based on the source
parameters to achieve this goal, and with this change we remove that
assumption by forcing the default parameters for the sink to be low
enough.

src/modules/echo-cancel/module-echo-cancel.c

index 18fe5dc..c3a6a1c 100644 (file)
@@ -1690,7 +1690,9 @@ int pa__init(pa_module*m) {
     pa_channel_map_init_auto(&source_map, source_ss.channels, PA_CHANNEL_MAP_DEFAULT);
 
     sink_ss = sink_master->sample_spec;
-    sink_map = sink_master->channel_map;
+    sink_ss.rate = DEFAULT_RATE;
+    sink_ss.channels = DEFAULT_CHANNELS;
+    pa_channel_map_init_auto(&sink_map, sink_ss.channels, PA_CHANNEL_MAP_DEFAULT);
 
     u = pa_xnew0(struct userdata, 1);
     if (!u) {