Flags and settings for AGC2 in AgcManagerDirect.
This CL adds two flags to audioproc_f. The flags control AgcManagerDirect. The flags are '--experimental_agc_agc2_level_estimator' and '--experimental_agc_agc2_digital_adaptive'. After this CL, the flags are be applied to AgcManagerDirect. The flags have no effect in release-mode. They cause a crash in debug-mode. In an upcoming CL, '--experimental_agc_agc2_level_estimator 1' will replace the speech level estimation in ExperimentalAgc with that of AGC2. '--experimental_agc_agc2_digital_adaptive 1' will replace the digital gain selection and application with that of AGC2. These audioproc_f will activate both new settings: ./out/Target/audioproc_f --agc 1 --experimental_agc 1 --experimental_agc_agc2_digital_adaptive 1 --experimental_agc_agc2_level_estimator 1 --simulate_mic_gain 1 --simulated_mic_kind 2 See also https://webrtc-review.googlesource.com/c/src/+/79360 Bug: webrtc:7494 Change-Id: If0e65893dffdddb312e553787b8cedaf9a334323 Reviewed-on: https://webrtc-review.googlesource.com/86548 Commit-Queue: Alex Loiko <aleloi@webrtc.org> Reviewed-by: Alessio Bazzica <alessiob@webrtc.org> Cr-Commit-Position: refs/heads/master@{#23802}
This commit is contained in:
@ -366,9 +366,13 @@ AudioProcessingImpl::AudioProcessingImpl(
|
||||
constants_(config.Get<ExperimentalAgc>().startup_min_volume,
|
||||
config.Get<ExperimentalAgc>().clipped_level_min,
|
||||
#if defined(WEBRTC_ANDROID) || defined(WEBRTC_IOS)
|
||||
false,
|
||||
false,
|
||||
false),
|
||||
#else
|
||||
config.Get<ExperimentalAgc>().enabled),
|
||||
config.Get<ExperimentalAgc>().enabled,
|
||||
config.Get<ExperimentalAgc>().enabled_agc2_level_estimator,
|
||||
config.Get<ExperimentalAgc>().enabled_agc2_digital_adaptive),
|
||||
#endif
|
||||
#if defined(WEBRTC_ANDROID) || defined(WEBRTC_IOS)
|
||||
capture_(false),
|
||||
@ -542,7 +546,9 @@ int AudioProcessingImpl::InitializeLocked() {
|
||||
private_submodules_->agc_manager.reset(new AgcManagerDirect(
|
||||
public_submodules_->gain_control.get(),
|
||||
public_submodules_->gain_control_for_experimental_agc.get(),
|
||||
constants_.agc_startup_min_volume, constants_.agc_clipped_level_min));
|
||||
constants_.agc_startup_min_volume, constants_.agc_clipped_level_min,
|
||||
constants_.use_experimental_agc_agc2_level_estimation,
|
||||
constants_.use_experimental_agc_agc2_digital_adaptive));
|
||||
}
|
||||
private_submodules_->agc_manager->Initialize();
|
||||
private_submodules_->agc_manager->SetCaptureMuted(
|
||||
|
||||
Reference in New Issue
Block a user