AEC3: Add multichannel configuration and multichannel detection
The features have two safety fallbacks: - multichannel config has a killswitch WebRTC-Aec3SetupSpecificDefaultConfigDefaultsKillSwitch - stereo detection has a killswitch WebRTC-Aec3StereoContentDetectionKillSwitch Both features are enabled by default in the AEC3 config. Tested: Bitexact on a large number of aecdumps. Bug: chromium:1295710 Change-Id: I340cdc9140dacd4ca22d0911eb9f732b6cf8b226 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/258129 Reviewed-by: Per Åhgren <peah@webrtc.org> Commit-Queue: Sam Zackrisson <saza@webrtc.org> Cr-Commit-Position: refs/heads/main@{#36482}
This commit is contained in:

committed by
WebRTC LUCI CQ

parent
f236ac73de
commit
64cdcc0792
@ -1726,14 +1726,14 @@ void AudioProcessingImpl::InitializeEchoController() {
|
||||
proc_sample_rate_hz(), num_reverse_channels(), num_proc_channels());
|
||||
RTC_DCHECK(submodules_.echo_controller);
|
||||
} else {
|
||||
EchoCanceller3Config config =
|
||||
use_setup_specific_default_aec3_config_
|
||||
? EchoCanceller3::CreateDefaultConfig(num_reverse_channels(),
|
||||
num_proc_channels())
|
||||
: EchoCanceller3Config();
|
||||
EchoCanceller3Config config;
|
||||
absl::optional<EchoCanceller3Config> multichannel_config;
|
||||
if (use_setup_specific_default_aec3_config_) {
|
||||
multichannel_config = EchoCanceller3::CreateDefaultMultichannelConfig();
|
||||
}
|
||||
submodules_.echo_controller = std::make_unique<EchoCanceller3>(
|
||||
config, proc_sample_rate_hz(), num_reverse_channels(),
|
||||
num_proc_channels());
|
||||
config, multichannel_config, proc_sample_rate_hz(),
|
||||
num_reverse_channels(), num_proc_channels());
|
||||
}
|
||||
|
||||
// Setup the storage for returning the linear AEC output.
|
||||
|
Reference in New Issue
Block a user