Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(163)

Issue 2782423003: Major updates to the echo removal functionality in AEC3 (Closed)

Created:
3 years, 8 months ago by peah-webrtc
Modified:
3 years, 8 months ago
Reviewers:
ivoc, aleloi
CC:
webrtc-reviews_webrtc.org, AleBzk, peah-webrtc, Andrew MacDonald, aleloi, tterriberry_mozilla.com, audio-team_agora.io, hlundin-webrtc, kwiberg-webrtc, minyue-webrtc, the sun, aluebs-webrtc, bjornv1
Target Ref:
refs/heads/master
Project:
webrtc
Visibility:
Public.

Description

Major updates to the echo removal functionality in AEC3 This CL adds fairly significant changes to the echo removal functionality, the main ones being. -More centralized control over the echo removal. -Updated echo suppression gain behavior. -Significantly increased usage of the linear adaptive filter. -New echo removal functionality when the linear filter is not usable. This CL is chained to the CL https://codereview.webrtc.org/2784023002/ BUG=webrtc:6018 Review-Url: https://codereview.webrtc.org/2782423003 Cr-Commit-Position: refs/heads/master@{#17575} Committed: https://chromium.googlesource.com/external/webrtc/+/86afe9d6618a57e4817e6f9261042e785b7ff0c8

Patch Set 1 #

Total comments: 16

Patch Set 2 : Changes in response to reviewer comments #

Patch Set 3 : Changes in response to reviewer comments #

Total comments: 7

Patch Set 4 : Changes in response to reviewer comments #

Total comments: 4

Patch Set 5 : Changes in response to reviewer comments #

Patch Set 6 : Rebase #

Patch Set 7 : Correction for incorrect rebase #

Patch Set 8 : Corrected implicit truncation #

Patch Set 9 : Corrected uninitialized value access and corrected difference between SSE2 code and its reference #

Patch Set 10 : Added initialization of uninitialized vector #

Unified diffs Side-by-side diffs Delta from patch set Stats (+719 lines, -1152 lines) Patch
M webrtc/modules/audio_processing/BUILD.gn View 5 2 chunks +0 lines, -3 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/adaptive_fir_filter.h View 1 2 3 4 5 4 chunks +12 lines, -25 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/adaptive_fir_filter.cc View 1 2 3 5 8 chunks +50 lines, -63 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/adaptive_fir_filter_unittest.cc View 5 6 13 chunks +52 lines, -60 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/aec3_common.h View 5 2 chunks +8 lines, -1 line 0 comments Download
M webrtc/modules/audio_processing/aec3/aec_state.h View 5 4 chunks +12 lines, -33 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/aec_state.cc View 1 2 3 5 4 chunks +88 lines, -93 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/aec_state_unittest.cc View 1 2 3 4 5 6 7 8 9 7 chunks +77 lines, -128 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/comfort_noise_generator.cc View 1 chunk +11 lines, -0 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/echo_remover.cc View 1 2 3 4 5 9 chunks +19 lines, -44 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/echo_remover_metrics.cc View 1 chunk +0 lines, -3 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/main_filter_update_gain.cc View 5 2 chunks +7 lines, -9 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/main_filter_update_gain_unittest.cc View 5 6 8 chunks +30 lines, -34 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/output_selector.h View 2 chunks +2 lines, -2 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/output_selector.cc View 2 chunks +3 lines, -16 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/output_selector_unittest.cc View 1 1 chunk +34 lines, -36 lines 0 comments Download
D webrtc/modules/audio_processing/aec3/power_echo_model.h View 5 1 chunk +0 lines, -61 lines 0 comments Download
D webrtc/modules/audio_processing/aec3/power_echo_model.cc View 5 1 chunk +0 lines, -111 lines 0 comments Download
D webrtc/modules/audio_processing/aec3/power_echo_model_unittest.cc View 5 1 chunk +0 lines, -45 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/render_delay_buffer.cc View 1 2 3 4 5 2 chunks +11 lines, -14 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/render_delay_controller.cc View 5 2 chunks +2 lines, -2 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/render_delay_controller_metrics.cc View 1 chunk +1 line, -1 line 0 comments Download
M webrtc/modules/audio_processing/aec3/render_signal_analyzer.h View 5 1 chunk +1 line, -1 line 0 comments Download
M webrtc/modules/audio_processing/aec3/render_signal_analyzer_unittest.cc View 5 6 6 chunks +15 lines, -21 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/residual_echo_estimator.h View 5 1 chunk +3 lines, -9 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/residual_echo_estimator.cc View 5 3 chunks +87 lines, -173 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/residual_echo_estimator_unittest.cc View 5 6 6 chunks +19 lines, -24 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/shadow_filter_update_gain.h View 5 1 chunk +1 line, -1 line 0 comments Download
M webrtc/modules/audio_processing/aec3/shadow_filter_update_gain.cc View 5 2 chunks +7 lines, -5 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/shadow_filter_update_gain_unittest.cc View 5 6 6 chunks +16 lines, -21 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/subtractor.h View 5 3 chunks +2 lines, -13 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/subtractor.cc View 5 3 chunks +23 lines, -33 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/subtractor_output.h View 2 chunks +0 lines, -3 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/subtractor_unittest.cc View 5 6 6 chunks +21 lines, -29 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/suppression_filter.h View 1 chunk +1 line, -0 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/suppression_filter.cc View 2 chunks +2 lines, -5 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/suppression_filter_unittest.cc View 5 chunks +7 lines, -6 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/suppression_gain.h View 1 2 3 4 5 2 chunks +6 lines, -2 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/suppression_gain.cc View 1 2 3 4 5 6 7 8 7 chunks +74 lines, -16 lines 0 comments Download
M webrtc/modules/audio_processing/aec3/suppression_gain_unittest.cc View 1 2 3 4 5 4 chunks +15 lines, -6 lines 0 comments Download

Messages

Total messages: 39 (22 generated)
peah-webrtc
Hi, Here is the second CL for the new AEC3 functionality that is now ready ...
3 years, 8 months ago (2017-03-30 12:04:05 UTC) #8
ivoc
This one is looking pretty good as well! See some comments below. https://codereview.webrtc.org/2782423003/diff/100001/webrtc/modules/audio_processing/aec3/adaptive_fir_filter.cc File webrtc/modules/audio_processing/aec3/adaptive_fir_filter.cc ...
3 years, 8 months ago (2017-04-05 15:21:25 UTC) #13
peah-webrtc
Thanks for the comments! I have addressed them in two patches. PTAL https://codereview.webrtc.org/2782423003/diff/100001/webrtc/modules/audio_processing/aec3/adaptive_fir_filter.cc File webrtc/modules/audio_processing/aec3/adaptive_fir_filter.cc ...
3 years, 8 months ago (2017-04-06 07:20:32 UTC) #14
ivoc
LGTM with 2 more comments, nice! https://codereview.webrtc.org/2782423003/diff/140001/webrtc/modules/audio_processing/aec3/adaptive_fir_filter.cc File webrtc/modules/audio_processing/aec3/adaptive_fir_filter.cc (right): https://codereview.webrtc.org/2782423003/diff/140001/webrtc/modules/audio_processing/aec3/adaptive_fir_filter.cc#newcode253 webrtc/modules/audio_processing/aec3/adaptive_fir_filter.cc:253: for (auto H2_k ...
3 years, 8 months ago (2017-04-06 09:09:53 UTC) #15
peah-webrtc
Thanks again for the comments!!! I've uploaded a new patch with the changes. https://codereview.webrtc.org/2782423003/diff/140001/webrtc/modules/audio_processing/aec3/adaptive_fir_filter.cc File ...
3 years, 8 months ago (2017-04-06 09:25:31 UTC) #16
hlundin-webrtc
https://codereview.webrtc.org/2782423003/diff/140001/webrtc/modules/audio_processing/aec3/aec_state.cc File webrtc/modules/audio_processing/aec3/aec_state.cc (right): https://codereview.webrtc.org/2782423003/diff/140001/webrtc/modules/audio_processing/aec3/aec_state.cc#newcode135 webrtc/modules/audio_processing/aec3/aec_state.cc:135: RTC_DCHECK_GT(0, x.size()); On 2017/04/06 09:25:31, peah-webrtc wrote: > On ...
3 years, 8 months ago (2017-04-06 09:50:48 UTC) #17
peah-webrtc
https://codereview.webrtc.org/2782423003/diff/140001/webrtc/modules/audio_processing/aec3/aec_state.cc File webrtc/modules/audio_processing/aec3/aec_state.cc (right): https://codereview.webrtc.org/2782423003/diff/140001/webrtc/modules/audio_processing/aec3/aec_state.cc#newcode135 webrtc/modules/audio_processing/aec3/aec_state.cc:135: RTC_DCHECK_GT(0, x.size()); On 2017/04/06 09:50:48, hlundin-webrtc wrote: > On ...
3 years, 8 months ago (2017-04-06 10:45:54 UTC) #18
hlundin-webrtc
https://codereview.webrtc.org/2782423003/diff/140001/webrtc/modules/audio_processing/aec3/aec_state.cc File webrtc/modules/audio_processing/aec3/aec_state.cc (right): https://codereview.webrtc.org/2782423003/diff/140001/webrtc/modules/audio_processing/aec3/aec_state.cc#newcode135 webrtc/modules/audio_processing/aec3/aec_state.cc:135: RTC_DCHECK_GT(0, x.size()); On 2017/04/06 10:45:54, peah-webrtc wrote: > On ...
3 years, 8 months ago (2017-04-06 11:13:26 UTC) #19
aleloi
https://codereview.webrtc.org/2782423003/diff/160001/webrtc/modules/audio_processing/aec3/adaptive_fir_filter.h File webrtc/modules/audio_processing/aec3/adaptive_fir_filter.h (right): https://codereview.webrtc.org/2782423003/diff/160001/webrtc/modules/audio_processing/aec3/adaptive_fir_filter.h#newcode74 webrtc/modules/audio_processing/aec3/adaptive_fir_filter.h:74: // the adaptive filter. This comment needs to be ...
3 years, 8 months ago (2017-04-06 14:34:22 UTC) #20
aleloi
lgtm. I havn't looked super-carefully at everything, but the changes in adaptive_fir_filter, aec_state, residual_echo_estimator, suppression_gain ...
3 years, 8 months ago (2017-04-06 14:41:46 UTC) #21
peah-webrtc
Thanks for the comments! I have uploaded a patch addressing those. https://codereview.webrtc.org/2782423003/diff/160001/webrtc/modules/audio_processing/aec3/adaptive_fir_filter.h File webrtc/modules/audio_processing/aec3/adaptive_fir_filter.h (right): ...
3 years, 8 months ago (2017-04-06 21:11:14 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2782423003/220001
3 years, 8 months ago (2017-04-06 21:11:43 UTC) #25
commit-bot: I haz the power
Try jobs failed on following builders: win_dbg on master.tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/win_dbg/builds/17985)
3 years, 8 months ago (2017-04-06 21:18:32 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2782423003/260001
3 years, 8 months ago (2017-04-06 21:42:58 UTC) #31
commit-bot: I haz the power
Try jobs failed on following builders: linux_msan on master.tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/linux_msan/builds/19458)
3 years, 8 months ago (2017-04-06 22:00:48 UTC) #33
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2782423003/280001
3 years, 8 months ago (2017-04-06 22:20:52 UTC) #36
commit-bot: I haz the power
3 years, 8 months ago (2017-04-06 22:45:39 UTC) #39
Message was sent while issue was closed.
Committed patchset #10 (id:280001) as
https://chromium.googlesource.com/external/webrtc/+/86afe9d6618a57e4817e6f926...

Powered by Google App Engine
This is Rietveld 408576698