Add AGC2 input volume controller mode in audioproc_f

Bug: webrtc:7494
Change-Id: I454f1fcdfe0eff2440b7fba426f8d950250b6a5a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/353740
Commit-Queue: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#42459}
This commit is contained in:
Hanna Silen 2024-06-05 15:52:33 +03:00 committed by WebRTC LUCI CQ
parent 546d15ae20
commit 6f3103f23d
3 changed files with 11 additions and 1 deletions

View File

@ -515,6 +515,10 @@ void AudioProcessingSimulator::ConfigureAudioProcessor() {
apm_config.gain_controller2.adaptive_digital.enabled =
*settings_.agc2_use_adaptive_gain;
}
if (settings_.agc2_use_input_volume_controller) {
apm_config.gain_controller2.input_volume_controller.enabled =
*settings_.agc2_use_input_volume_controller;
}
}
if (settings_.use_pre_amplifier) {
apm_config.pre_amplifier.enabled = *settings_.use_pre_amplifier;

View File

@ -113,6 +113,7 @@ struct SimulationSettings {
absl::optional<int> agc_compression_gain;
absl::optional<bool> agc2_use_adaptive_gain;
absl::optional<float> agc2_fixed_gain_db;
absl::optional<bool> agc2_use_input_volume_controller;
absl::optional<float> pre_amplifier_gain_factor;
absl::optional<float> pre_gain_factor;
absl::optional<float> post_gain_factor;

View File

@ -150,6 +150,10 @@ ABSL_FLAG(float,
agc2_fixed_gain_db,
kParameterNotSpecifiedValue,
"AGC2 fixed gain (dB) to apply");
ABSL_FLAG(int,
agc2_enable_input_volume_controller,
kParameterNotSpecifiedValue,
"Activate (1) or deactivate (0) the AGC2 input volume adjustments");
ABSL_FLAG(float,
pre_amplifier_gain_factor,
kParameterNotSpecifiedValue,
@ -429,9 +433,10 @@ SimulationSettings CreateSettings() {
&settings.agc_compression_gain);
SetSettingIfFlagSet(absl::GetFlag(FLAGS_agc2_enable_adaptive_gain),
&settings.agc2_use_adaptive_gain);
SetSettingIfSpecified(absl::GetFlag(FLAGS_agc2_fixed_gain_db),
&settings.agc2_fixed_gain_db);
SetSettingIfFlagSet(absl::GetFlag(FLAGS_agc2_enable_input_volume_controller),
&settings.agc2_use_input_volume_controller);
SetSettingIfSpecified(absl::GetFlag(FLAGS_pre_amplifier_gain_factor),
&settings.pre_amplifier_gain_factor);
SetSettingIfSpecified(absl::GetFlag(FLAGS_pre_gain_factor),