webrtc/modules/audio_processing
Per Åhgren 31122d6c5f Correct and soften the AEC3 handling of saturated mic signals
This CL changes the handling of saturated microphone signals in AEC3.

Some of the changes included are
-Make the detection of saturated echoes depend on the echo path gain
 estimate.
-Remove redundant code related to echo saturation.
-Correct the computation of residual echoes when the echo is saturated.
-Soften the echo removal during echo saturation.

Bug: webrtc:9119
Change-Id: I5cb11cd449de552ab670beeb24ed8112f8beb734
Reviewed-on: https://webrtc-review.googlesource.com/67220
Commit-Queue: Per Åhgren <peah@webrtc.org>
Reviewed-by: Gustaf Ullberg <gustaf@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#22809}
2018-04-10 15:28:45 +00:00
..
aec Delete unneeded includes of wav_file.h and file_wrapper.h. 2018-03-20 15:59:27 +00:00
aec3 Correct and soften the AEC3 handling of saturated mic signals 2018-04-10 15:28:45 +00:00
aec_dump Move file_wrapper.h to rtc_base/system/ 2018-03-23 11:17:15 +00:00
aecm Use of unititialized value in AECM. 2018-01-25 15:09:14 +00:00
agc Fixing -Wstrict-prototypes warnings. 2018-03-19 16:57:21 +00:00
agc2 Adaptive digital gain applier 2018-04-05 06:40:02 +00:00
audio_generator Add stub draft of audio generator to APM 2018-03-05 09:28:52 +00:00
beamformer Fix macro clash with _USE_MATH_DEFINES. 2017-12-13 09:39:20 +00:00
echo_detector Optional: Use nullopt and implicit construction in /modules/audio_processing 2017-11-20 10:19:30 +00:00
include Make possible to activate adaptive AGC2 in the APM. 2018-03-29 09:42:07 +00:00
intelligibility Move some numeric utility code from rtc_base/ to rtc_base/numerics/ 2017-11-22 11:21:47 +00:00
logging Remove stringstream usages from the APM 2018-04-06 14:17:03 +00:00
ns Fixing -Wstrict-prototypes warnings. 2018-03-19 16:57:21 +00:00
test Add a specific AEC3 behavior for setups with known clock-drift 2018-03-28 16:51:57 +00:00
transient Move file_wrapper.h to rtc_base/system/ 2018-03-23 11:17:15 +00:00
utility Fix typo in the include path of ooura_fft.h 2018-01-11 07:57:40 +00:00
vad Adaptive Digital gain control structure. 2018-03-27 14:12:50 +00:00
audio_buffer.cc
audio_buffer.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
audio_buffer_unittest.cc
audio_frame_view_unittest.cc Comments in FixedDigitalLevelEstimator. 2018-02-16 14:17:08 +00:00
audio_processing_impl.cc Move file_wrapper.h to rtc_base/system/ 2018-03-23 11:17:15 +00:00
audio_processing_impl.h Move file_wrapper.h to rtc_base/system/ 2018-03-23 11:17:15 +00:00
audio_processing_impl_locking_unittest.cc Use AudioProcessingBuilder everywhere AudioProcessing is created. 2018-01-09 13:45:20 +00:00
audio_processing_impl_unittest.cc Change return types of refcount methods. 2017-10-20 07:46:03 +00:00
audio_processing_performance_unittest.cc Use AudioProcessingBuilder everywhere AudioProcessing is created. 2018-01-09 13:45:20 +00:00
audio_processing_unittest.cc Reland "Deprecate the adaptive level controller" 2018-03-09 09:42:13 +00:00
BUILD.gn Prepare for |is_posix| switch in the Fuchsia build 2018-04-05 17:25:39 +00:00
common.h
config_unittest.cc
debug.proto
DEPS
echo_cancellation_bit_exact_unittest.cc
echo_cancellation_impl.cc 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.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 Streamline error handling and logging in the audio processing module 2018-02-15 15:06:26 +00:00
echo_control_mobile_impl.h
echo_control_mobile_unittest.cc
gain_control_for_experimental_agc.cc
gain_control_for_experimental_agc.h
gain_control_impl.cc Optional: Use nullopt and implicit construction in /modules/audio_processing 2017-11-20 10:19:30 +00:00
gain_control_impl.h
gain_control_unittest.cc
gain_controller2.cc Make possible to activate adaptive AGC2 in the APM. 2018-03-29 09:42:07 +00:00
gain_controller2.h Make possible to activate adaptive AGC2 in the APM. 2018-03-29 09:42:07 +00:00
gain_controller2_unittest.cc Make possible to activate adaptive AGC2 in the APM. 2018-03-29 09:42:07 +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
noise_suppression_impl.cc
noise_suppression_impl.h
noise_suppression_unittest.cc
OWNERS Add gustaf to audio_processing OWNERS 2018-02-06 10:54:29 +00:00
render_queue_item_verifier.h
residual_echo_detector.cc Add more parameters to the Initialize function of the echo detector. 2018-03-15 09:21:56 +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 Make the echo detector injectable. 2018-01-11 15:43:01 +00:00
rms_level.cc Optional: Use nullopt and implicit construction in /modules/audio_processing 2017-11-20 10:19:30 +00:00
rms_level.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +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
splitting_filter.h
splitting_filter_unittest.cc
three_band_filter_bank.cc
three_band_filter_bank.h
typing_detection.cc
typing_detection.h Adding NOLINT for typedefs.h and common_types.h 2017-09-15 13:03:51 +00:00
voice_detection_impl.cc
voice_detection_impl.h
voice_detection_unittest.cc