webrtc/modules/audio_processing
Gustaf Ullberg 2bab5ad3b1 AEC3: Avoid using filter output in suppression gain computation in non-linear mode
As non-linear mode uses a suppressed version of y (not e) as output, this change
uses Y2, rather than E2, as nearend spectrum when computing the suppression gains.
E2 is still used in linear mode.

This change also affects how the minimum suppression gains are calculated. The
minimum gain is now min_echo_power / weighted_residual_echo.

Bug: webrtc:10550
Change-Id: I2904c5a09dd64b06bf25eb5a37c18dab50297794
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/133023
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Reviewed-by: Per Åhgren <peah@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27629}
2019-04-15 16:08:41 +00:00
..
aec Qualify cmath functions. 2019-03-15 07:31:59 +00:00
aec3 AEC3: Avoid using filter output in suppression gain computation in non-linear mode 2019-04-15 16:08:41 +00:00
aec_dump Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
aecm [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
agc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
agc2 RNN VAD: Switch to PFFFT 2019-04-10 09:54:54 +00:00
audio_generator (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
echo_detector [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
include Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
logging webrtc: Remove semicolons. 2019-02-20 16:02:59 +00:00
ns Move fft4g to proper third_party directory 2018-07-25 15:44:53 +00:00
test Allow audioproc_f to override the pre-amp gain in aecdumps 2019-04-12 15:05:15 +00:00
transient Reland "Trim down FileWrapper class to be merely a wrapper owning a FILE*" 2019-01-21 12:46:25 +00:00
utility Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
vad Cleanup BUILD.gn files from imports like foo:foo 2019-03-21 13:05:28 +00:00
audio_buffer.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
audio_buffer.h Make AEC3 the default desktop AEC option in WebRTC 2019-03-06 08:43:48 +00:00
audio_buffer_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
audio_frame_view_unittest.cc Add namespace 'webrtc' to AudioFrameView. 2018-05-14 12:33:49 +00:00
audio_processing_impl.cc Add replacement interface for webrtc::GainConrol 2019-03-27 15:19:41 +00:00
audio_processing_impl.h Add replacement interface for webrtc::GainConrol 2019-03-27 15:19:41 +00:00
audio_processing_impl_locking_unittest.cc Stop using Googletest legacy APIs. 2019-01-31 13:23:33 +00:00
audio_processing_impl_unittest.cc Fix -Wextra-semi warnings. 2019-02-25 09:22:51 +00:00
audio_processing_performance_unittest.cc Stop using Googletest legacy APIs. 2019-01-31 13:23:33 +00:00
audio_processing_unittest.cc Change unittests to use AEC3 instead of AEC2 2019-04-15 07:33:52 +00:00
BUILD.gn Added more refined benchmarking code for audioproc_f 2019-04-04 08:37:16 +00:00
common.h Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
config_unittest.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
debug.proto Reland "Remove APM-internal usage of EchoControlMobile" 2018-10-03 07:45:33 +00:00
DEPS Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
echo_cancellation_bit_exact_unittest.cc Remove locks from AEC2 and move it into private_submodules_ 2018-11-01 08:40:16 +00:00
echo_cancellation_impl.cc Make AEC3 the default desktop AEC option in WebRTC 2019-03-06 08:43:48 +00:00
echo_cancellation_impl.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
echo_cancellation_impl_unittest.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
echo_control_mobile_bit_exact_unittest.cc Remove locks from AECM and move it into private_submodules_ 2018-11-05 16:25:09 +00:00
echo_control_mobile_impl.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
echo_control_mobile_impl.h Remove locks from AECM and move it into private_submodules_ 2018-11-05 16:25:09 +00:00
echo_control_mobile_unittest.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
gain_control_config_proxy.cc Add replacement interface for webrtc::GainConrol 2019-03-27 15:19:41 +00:00
gain_control_config_proxy.h Add replacement interface for webrtc::GainConrol 2019-03-27 15:19:41 +00:00
gain_control_config_proxy_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
gain_control_for_experimental_agc.cc Add replacement interface for webrtc::GainConrol 2019-03-27 15:19:41 +00:00
gain_control_for_experimental_agc.h Add replacement interface for webrtc::GainConrol 2019-03-27 15:19:41 +00:00
gain_control_impl.cc Add replacement interface for webrtc::GainConrol 2019-03-27 15:19:41 +00:00
gain_control_impl.h Add replacement interface for webrtc::GainConrol 2019-03-27 15:19:41 +00:00
gain_control_unittest.cc Add replacement interface for webrtc::GainConrol 2019-03-27 15:19:41 +00:00
gain_controller2.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
gain_controller2.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
gain_controller2_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
level_estimator_impl.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
level_estimator_impl.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
level_estimator_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
low_cut_filter.cc Fix potential null pointer dereference. 2018-12-21 15:36:51 +00:00
low_cut_filter.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
low_cut_filter_unittest.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
noise_suppression_impl.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
noise_suppression_impl.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
noise_suppression_proxy.cc Add noise suppression settings to AudioProcessing::Config 2019-01-14 16:17:19 +00:00
noise_suppression_proxy.h (7) Rename files to snake_case: remove forwarding headers 2019-01-26 00:33:46 +00:00
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 Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
residual_echo_detector.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11: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 (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +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 [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
rms_level_unittest.cc [Cleanup] Remove our own definition of M_PI. 2019-04-12 15:03:45 +00:00
splitting_filter.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
splitting_filter.h Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
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 Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
typing_detection.cc Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
typing_detection.h Reland "Export symbols needed by the Chromium component build (part 1)." 2018-10-11 09:50:21 +00:00
voice_detection_impl.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
voice_detection_impl.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
voice_detection_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00