Added flags for the adaptive analog AGC in audioproc_f.

Added back the 'agc2 level estimation' flag. Also added a flag for
moving the level measurement before AEC and NS. This is to run offline
experiments with audioproc_f.


Bug: webrtc:7494
Change-Id: I3e3ffceede7166b754130be2b707b620ba527e9f
Reviewed-on: https://webrtc-review.googlesource.com/97442
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Commit-Queue: Alex Loiko <aleloi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24657}
This commit is contained in:
Alex Loiko
2018-09-10 13:59:41 +02:00
committed by Commit Bot
parent b2d7116733
commit d934244feb
8 changed files with 47 additions and 13 deletions

View File

@ -730,7 +730,9 @@ void AudioProcessingSimulator::CreateAudioProcessor() {
!!settings_.use_experimental_agc_agc2_level_estimator &&
*settings_.use_experimental_agc_agc2_level_estimator,
!!settings_.experimental_agc_disable_digital_adaptive &&
*settings_.experimental_agc_disable_digital_adaptive));
*settings_.experimental_agc_disable_digital_adaptive,
!!settings_.experimental_agc_analyze_before_aec &&
*settings_.experimental_agc_analyze_before_aec));
if (settings_.use_ed) {
apm_config.residual_echo_detector.enabled = *settings_.use_ed;
}

View File

@ -68,6 +68,7 @@ struct SimulationSettings {
absl::optional<bool> use_experimental_agc;
absl::optional<bool> use_experimental_agc_agc2_level_estimator;
absl::optional<bool> experimental_agc_disable_digital_adaptive;
absl::optional<bool> experimental_agc_analyze_before_aec;
absl::optional<int> aecm_routing_mode;
absl::optional<bool> use_aecm_comfort_noise;
absl::optional<int> agc_mode;

View File

@ -119,6 +119,15 @@ DEFINE_int(experimental_agc_disable_digital_adaptive,
kParameterNotSpecifiedValue,
"Force-deactivate (1) digital adaptation in "
"experimental AGC. Digital adaptation is active by default (0).");
DEFINE_int(experimental_agc_analyze_before_aec,
kParameterNotSpecifiedValue,
"Make level estimation happen before AEC"
" in the experimental AGC. After AEC is the default (0)");
DEFINE_int(
experimental_agc_agc2_level_estimator,
kParameterNotSpecifiedValue,
"AGC2 level estimation"
" in the experimental AGC. AGC1 level estimation is the default (0)");
DEFINE_int(
refined_adaptive_filter,
kParameterNotSpecifiedValue,
@ -259,7 +268,10 @@ SimulationSettings CreateSettings() {
SetSettingIfFlagSet(FLAG_experimental_agc, &settings.use_experimental_agc);
SetSettingIfFlagSet(FLAG_experimental_agc_disable_digital_adaptive,
&settings.experimental_agc_disable_digital_adaptive);
SetSettingIfFlagSet(FLAG_experimental_agc_analyze_before_aec,
&settings.experimental_agc_analyze_before_aec);
SetSettingIfFlagSet(FLAG_experimental_agc_agc2_level_estimator,
&settings.use_experimental_agc_agc2_level_estimator);
SetSettingIfSpecified(FLAG_aecm_routing_mode, &settings.aecm_routing_mode);
SetSettingIfFlagSet(FLAG_aecm_comfort_noise,
&settings.use_aecm_comfort_noise);