AEC3:Turning off default downmix in surround alignment
This CL changes the downmixing of the input to the delay estimation
for surround/stereo signals to be off by default.
A kill-switch is also added for enforcing the downmix to be on.
Bug: webrtc:10913
Change-Id: I1030fef593ba56416deeb13b80d2f3812bffb9ed
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161012
Commit-Queue: Per Åhgren <peah@webrtc.org>
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29951}
diff --git a/api/audio/echo_canceller3_config.h b/api/audio/echo_canceller3_config.h
index dddc220..f54ad90 100644
--- a/api/audio/echo_canceller3_config.h
+++ b/api/audio/echo_canceller3_config.h
@@ -47,7 +47,7 @@
int converged;
} delay_selection_thresholds = {5, 20};
bool use_external_delay_estimator = false;
- bool downmix_before_delay_estimation = true;
+ bool downmix_before_delay_estimation = false;
bool log_warning_on_delay_changes = false;
} delay;
diff --git a/modules/audio_processing/aec3/echo_canceller3.cc b/modules/audio_processing/aec3/echo_canceller3.cc
index a68ae01..e387940 100644
--- a/modules/audio_processing/aec3/echo_canceller3.cc
+++ b/modules/audio_processing/aec3/echo_canceller3.cc
@@ -51,6 +51,10 @@
adjusted_cfg.erle.clamp_quality_estimate_to_one = false;
}
+ if (field_trial::IsEnabled("WebRTC-Aec3AlignmentOnLeftChannelKillSwitch")) {
+ adjusted_cfg.delay.downmix_before_delay_estimation = true;
+ }
+
return adjusted_cfg;
}