webrtc/modules/audio_processing
Alex Loiko 9489c3a2ea Optionally disable digital gain control in ExperimentalAgc.
This CL adds a flag to optionally disable the digital gain control in
ExperimentalAgc. With the flag, Experimental Agc (henceforth AGC1)
only controls the adaptive analog gain. This flag can be combined to
that which activates AGC2. That way, one can enable the hybrid AGC
configuration AGC1 analog only + AGC2 fixed+adaptive digital.

Previously, there was a flag "use_agc2_digital_adaptive" in
AgcManagerDirect. Our ambition was that to activate the hybrid mode
described above with this flag. The behavior of the flag was not
implemented.

To activate the hybrid mode after this CL, set
ExperimentalAgc::digital_adaptive_disabled=true and
AudioProcessing::Config::GainController2::enabled=true.

We also add flags for these settings in audioproc_f.
Then the required settings are currently

  audioproc_f --agc2 1 --agc 1 --experimental_agc 1 \
      --experimental_agc_disable_digital_adaptive 1 \
      -i [INPUT]

Bug: webrtc:7494
Change-Id: Iea798dc3899cec83d30ba71caba787262fcaef41
Reviewed-on: https://webrtc-review.googlesource.com/89740
Commit-Queue: Alex Loiko <aleloi@webrtc.org>
Reviewed-by: Alessio Bazzica <alessiob@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24249}
2018-08-09 13:37:30 +00:00
..
aec Explicitly add -mfpu=neon to all targets that use NEON 2018-08-01 13:15:42 +00:00
aec3 AEC3: Utilize shadow filter output to respond to audio path changes 2018-08-01 15:20:33 +00:00
aec_dump Use absl::make_unique and absl::WrapUnique directly 2018-07-05 10:59:49 +00:00
aecm Explicitly add -mfpu=neon to all targets that use NEON 2018-08-01 13:15:42 +00:00
agc Optionally disable digital gain control in ExperimentalAgc. 2018-08-09 13:37:30 +00:00
agc2 Reset Agc2 on analog gain changes. 2018-08-08 14:36:37 +00:00
audio_generator Add stub draft of audio generator to APM 2018-03-05 09:28:52 +00:00
echo_detector Replace rtc::Optional with absl::optional in modules/audio processing 2018-06-19 10:38:56 +00:00
include Optionally disable digital gain control in ExperimentalAgc. 2018-08-09 13:37:30 +00:00
intelligibility Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
logging Remove stringstream usages from the APM 2018-04-06 14:17:03 +00:00
ns Move fft4g to proper third_party directory 2018-07-25 15:44:53 +00:00
test Optionally disable digital gain control in ExperimentalAgc. 2018-08-09 13:37:30 +00:00
transient Fix MovingMoments::CalculateMoments. 2018-07-31 15:08:12 +00:00
utility Explicitly add -mfpu=neon to all targets that use NEON 2018-08-01 13:15:42 +00:00
vad Move fft4g to proper third_party directory 2018-07-25 15:44:53 +00:00
audio_buffer.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
audio_buffer.h Delete root header file typedef.h. 2018-07-25 14:59:26 +00:00
audio_buffer_unittest.cc
audio_frame_view_unittest.cc Add namespace 'webrtc' to AudioFrameView. 2018-05-14 12:33:49 +00:00
audio_processing_impl.cc Optionally disable digital gain control in ExperimentalAgc. 2018-08-09 13:37:30 +00:00
audio_processing_impl.h Revert "Add one-stop-shop for built-in AEC toggling in APM" 2018-07-23 14:48:17 +00:00
audio_processing_impl_locking_unittest.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
audio_processing_impl_unittest.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
audio_processing_performance_unittest.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
audio_processing_unittest.cc Delete root header file typedef.h. 2018-07-25 14:59:26 +00:00
BUILD.gn Explicitly add -mfpu=neon to all targets that use NEON 2018-08-01 13:15:42 +00:00
common.h
config_unittest.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
debug.proto Options and settings for the Pre-amplifier. 2018-04-16 12:25:48 +00:00
DEPS
echo_cancellation_bit_exact_unittest.cc
echo_cancellation_impl.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
echo_cancellation_impl.h Enforcing a stream delay of 0 to be assumed in the AEC on Chrome OS 2017-12-22 15:42:13 +00:00
echo_cancellation_impl_unittest.cc Use AudioProcessingBuilder everywhere AudioProcessing is created. 2018-01-09 13:45:20 +00:00
echo_control_mobile_impl.cc Turn off comfort noise generation by default in AECM 2018-07-24 08:52:36 +00:00
echo_control_mobile_impl.h
echo_control_mobile_unittest.cc
gain_control_for_experimental_agc.cc Reset Agc2 on analog gain changes. 2018-08-08 14:36:37 +00:00
gain_control_for_experimental_agc.h Reset Agc2 on analog gain changes. 2018-08-08 14:36:37 +00:00
gain_control_impl.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
gain_control_impl.h Replace rtc::Optional with absl::optional in modules/audio processing 2018-06-19 10:38:56 +00:00
gain_control_unittest.cc
gain_controller2.cc Reset Agc2 on analog gain changes. 2018-08-08 14:36:37 +00:00
gain_controller2.h Reset Agc2 on analog gain changes. 2018-08-08 14:36:37 +00:00
gain_controller2_unittest.cc Set a positive initial gain in the Adaptive Digital GC. 2018-04-27 09:05:25 +00:00
level_estimator_impl.cc
level_estimator_impl.h
level_estimator_unittest.cc
low_cut_filter.cc
low_cut_filter.h
low_cut_filter_unittest.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
noise_suppression_impl.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
noise_suppression_impl.h
noise_suppression_unittest.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
OWNERS Adding alessiob@ and minyue@ as owners of APM. 2018-07-02 07:45:31 +00:00
render_queue_item_verifier.h
residual_echo_detector.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
residual_echo_detector.h Add more parameters to the Initialize function of the echo detector. 2018-03-15 09:21:56 +00:00
residual_echo_detector_unittest.cc Change echo detector to scoped_refptr 2018-06-14 09:51:41 +00:00
rms_level.cc Replace rtc::Optional with absl::optional in modules/audio processing 2018-06-19 10:38:56 +00:00
rms_level.h Delete root header file typedef.h. 2018-07-25 14:59:26 +00:00
rms_level_unittest.cc Move some more numeric utility code from rtc_base/ to rtc_base/numerics/ 2017-11-22 12:39:39 +00:00
splitting_filter.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
splitting_filter.h
splitting_filter_unittest.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
three_band_filter_bank.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
three_band_filter_bank.h
typing_detection.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
typing_detection.h Delete root header file typedef.h. 2018-07-25 14:59:26 +00:00
voice_detection_impl.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
voice_detection_impl.h
voice_detection_unittest.cc