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;
 }