Reland "Refactoring of the noise suppressor and adding true multichannel support"
This is a reland of 87a7b82520b83a6cf42da27cdc46142c2eb6248c Original change's description: > Refactoring of the noise suppressor and adding true multichannel support > > This CL adds proper multichannel support to the noise suppressor. > To accomplish that in a safe way, a full refactoring of the noise > suppressor code has been done. > > Due to floating point precision, the changes made are not entirely > bitexact. They are, however, very close to being bitexact. > > As a safety measure, the former noise suppressor code is preserved > and a kill-switch is added to allow revering to the legacy noise > suppressor in case issues arise. > > Bug: webrtc:10895, b/143344262 > Change-Id: I0b071011b23265ac12e6d4b3956499d122286657 > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/158407 > Commit-Queue: Per Åhgren <peah@webrtc.org> > Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#29646} Bug: webrtc:10895, b/143344262 Change-Id: I236f1e67bb0baa4e30908a4cf7a8a7bb55fbced3 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/158747 Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org> Commit-Queue: Per Åhgren <peah@webrtc.org> Cr-Commit-Position: refs/heads/master@{#29663}
This commit is contained in:
@ -504,6 +504,12 @@ void AudioProcessingSimulator::CreateAudioProcessor() {
|
||||
*settings_.maximum_internal_processing_rate;
|
||||
}
|
||||
|
||||
const bool use_legacy_ns =
|
||||
settings_.use_legacy_ns && *settings_.use_legacy_ns;
|
||||
if (use_legacy_ns) {
|
||||
apm_config.noise_suppression.use_legacy_ns = use_legacy_ns;
|
||||
}
|
||||
|
||||
if (settings_.use_ns) {
|
||||
apm_config.noise_suppression.enabled = *settings_.use_ns;
|
||||
}
|
||||
|
||||
@ -65,6 +65,7 @@ struct SimulationSettings {
|
||||
absl::optional<bool> use_extended_filter;
|
||||
absl::optional<bool> use_drift_compensation;
|
||||
absl::optional<bool> use_legacy_aec;
|
||||
absl::optional<bool> use_legacy_ns;
|
||||
absl::optional<bool> use_experimental_agc;
|
||||
absl::optional<bool> use_experimental_agc_agc2_level_estimator;
|
||||
absl::optional<bool> experimental_agc_disable_digital_adaptive;
|
||||
|
||||
@ -129,6 +129,10 @@ ABSL_FLAG(int,
|
||||
use_legacy_aec,
|
||||
kParameterNotSpecifiedValue,
|
||||
"Activate (1) or deactivate(0) the legacy AEC");
|
||||
ABSL_FLAG(int,
|
||||
use_legacy_ns,
|
||||
kParameterNotSpecifiedValue,
|
||||
"Activate (1) or deactivate(0) the legacy AEC");
|
||||
ABSL_FLAG(int,
|
||||
experimental_agc,
|
||||
kParameterNotSpecifiedValue,
|
||||
@ -393,6 +397,8 @@ SimulationSettings CreateSettings() {
|
||||
|
||||
SetSettingIfFlagSet(absl::GetFlag(FLAGS_use_legacy_aec),
|
||||
&settings.use_legacy_aec);
|
||||
SetSettingIfFlagSet(absl::GetFlag(FLAGS_use_legacy_ns),
|
||||
&settings.use_legacy_ns);
|
||||
SetSettingIfFlagSet(absl::GetFlag(FLAGS_experimental_agc),
|
||||
&settings.use_experimental_agc);
|
||||
SetSettingIfFlagSet(
|
||||
|
||||
Reference in New Issue
Block a user