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

Issue 2292863002: Introduced new scheme for controlling the functionality inside the audio processing module (Closed)

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

Description

The current scheme for setting parameters and specifying the behavior of the audio processing module is quite complex and hard to implement in a threadsafe and efficient manner. Therefore a new scheme for setting the parameters in the audio processing module is introduced in this CL. The idea is to roll this scheme out gradually and as a first functionality in the audio processing module where this is applied the level controller was chosen. This CL includes the replacement of the Config-based level controller scheme with the new scheme. BUG=webrtc:5298 Committed: https://crrev.com/c8bbe3fe9aad9e9a1189a42dcaa8f5d6c261ecc8 Cr-Commit-Position: refs/heads/master@{#14171}

Patch Set 1 #

Total comments: 50

Patch Set 2 : Changes in response to reviewer comments #

Total comments: 18

Patch Set 3 : Changes in response to reviewer comments #

Total comments: 36

Patch Set 4 : Changes in response to reviewer comments #

Total comments: 10

Patch Set 5 : Changes in response to reviewer comments #

Patch Set 6 : Removed the validation method and added logging of the config settings and revertion to default val… #

Total comments: 26

Patch Set 7 : Changes in response to reviewer comments #

Patch Set 8 : Corrected comment #

Total comments: 6

Patch Set 9 : Changes in response to reviewer comments #

Total comments: 4

Patch Set 10 : Changes in response to reviewer comments #

Patch Set 11 : Rebase #

Patch Set 12 : Fixed bad merge #

Unified diffs Side-by-side diffs Delta from patch set Stats (+167 lines, -76 lines) Patch
M webrtc/media/engine/fakewebrtcvoiceengine.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -0 lines 0 comments Download
M webrtc/media/engine/webrtcvoiceengine.cc View 1 2 3 4 5 6 7 8 9 10 2 chunks +3 lines, -1 line 0 comments Download
M webrtc/modules/audio_processing/audio_processing_impl.h View 1 2 3 4 5 6 7 8 9 10 11 4 chunks +8 lines, -8 lines 0 comments Download
M webrtc/modules/audio_processing/audio_processing_impl.cc View 1 2 3 4 5 6 7 8 9 10 5 chunks +34 lines, -18 lines 0 comments Download
M webrtc/modules/audio_processing/audio_processing_impl_unittest.cc View 1 2 chunks +3 lines, -3 lines 0 comments Download
M webrtc/modules/audio_processing/echo_cancellation_impl.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -1 line 0 comments Download
M webrtc/modules/audio_processing/echo_cancellation_impl.cc View 1 1 chunk +1 line, -1 line 0 comments Download
M webrtc/modules/audio_processing/include/audio_processing.h View 1 2 3 4 5 6 7 8 9 10 5 chunks +28 lines, -13 lines 0 comments Download
M webrtc/modules/audio_processing/include/mock_audio_processing.h View 1 2 3 4 5 1 chunk +2 lines, -2 lines 0 comments Download
M webrtc/modules/audio_processing/level_controller/level_controller.h View 1 2 3 4 5 6 7 8 1 chunk +6 lines, -0 lines 0 comments Download
M webrtc/modules/audio_processing/level_controller/level_controller.cc View 1 2 3 4 5 6 7 8 9 1 chunk +13 lines, -0 lines 0 comments Download
M webrtc/modules/audio_processing/level_controller/level_controller_complexity_unittest.cc View 1 2 3 4 5 1 chunk +4 lines, -2 lines 0 comments Download
M webrtc/modules/audio_processing/level_controller/level_controller_unittest.cc View 1 2 3 4 5 6 7 8 9 1 chunk +19 lines, -0 lines 0 comments Download
M webrtc/modules/audio_processing/test/aec_dump_based_simulator.cc View 1 2 3 4 5 2 chunks +3 lines, -1 line 0 comments Download
M webrtc/modules/audio_processing/test/audio_processing_simulator.cc View 1 2 3 4 5 6 7 8 9 10 3 chunks +5 lines, -1 line 0 comments Download
M webrtc/modules/audio_processing/test/debug_dump_test.cc View 1 2 3 4 5 6 7 8 9 18 chunks +33 lines, -23 lines 0 comments Download
M webrtc/modules/audio_processing/test/process_test.cc View 1 2 3 4 5 6 7 8 9 10 3 chunks +3 lines, -2 lines 0 comments Download

Messages

Total messages: 46 (15 generated)
peah-webrtc
4 years, 3 months ago (2016-08-30 08:34:42 UTC) #3
the sun
https://codereview.webrtc.org/2292863002/diff/20001/webrtc/media/engine/webrtcvoiceengine.cc File webrtc/media/engine/webrtcvoiceengine.cc (left): https://codereview.webrtc.org/2292863002/diff/20001/webrtc/media/engine/webrtcvoiceengine.cc#oldcode876 webrtc/media/engine/webrtcvoiceengine.cc:876: config.Set<webrtc::LevelControl>(new webrtc::LevelControl(*level_control_)); oh, yeah! :) https://codereview.webrtc.org/2292863002/diff/20001/webrtc/media/engine/webrtcvoiceengine.cc File webrtc/media/engine/webrtcvoiceengine.cc (right): ...
4 years, 3 months ago (2016-08-30 10:32:39 UTC) #5
hlundin-webrtc
Nice. See comments inline. https://codereview.webrtc.org/2292863002/diff/20001/webrtc/media/engine/webrtcvoiceengine.cc File webrtc/media/engine/webrtcvoiceengine.cc (right): https://codereview.webrtc.org/2292863002/diff/20001/webrtc/media/engine/webrtcvoiceengine.cc#newcode878 webrtc/media/engine/webrtcvoiceengine.cc:878: voe_wrapper_->base()->audio_processing()->ApplySettings(apm_settings); Verify the settings before ...
4 years, 3 months ago (2016-08-30 11:26:27 UTC) #6
peah-webrtc
https://codereview.webrtc.org/2292863002/diff/20001/webrtc/media/engine/webrtcvoiceengine.cc File webrtc/media/engine/webrtcvoiceengine.cc (left): https://codereview.webrtc.org/2292863002/diff/20001/webrtc/media/engine/webrtcvoiceengine.cc#oldcode876 webrtc/media/engine/webrtcvoiceengine.cc:876: config.Set<webrtc::LevelControl>(new webrtc::LevelControl(*level_control_)); On 2016/08/30 10:32:38, the sun wrote: > ...
4 years, 3 months ago (2016-08-30 17:05:58 UTC) #8
the sun
https://codereview.webrtc.org/2292863002/diff/20001/webrtc/modules/audio_processing/include/audio_processing.h File webrtc/modules/audio_processing/include/audio_processing.h (right): https://codereview.webrtc.org/2292863002/diff/20001/webrtc/modules/audio_processing/include/audio_processing.h#newcode220 webrtc/modules/audio_processing/include/audio_processing.h:220: // RTC_DCHECK(settings.IsOk()); On 2016/08/30 11:26:26, hlundin-webrtc wrote: > The ...
4 years, 3 months ago (2016-08-30 18:05:35 UTC) #9
peah-webrtc
https://codereview.webrtc.org/2292863002/diff/60001/webrtc/media/engine/webrtcvoiceengine.cc File webrtc/media/engine/webrtcvoiceengine.cc (right): https://codereview.webrtc.org/2292863002/diff/60001/webrtc/media/engine/webrtcvoiceengine.cc#newcode888 webrtc/media/engine/webrtcvoiceengine.cc:888: voe_wrapper_->base()->audio_processing()->ApplyConfig(apm_config); On 2016/08/30 18:05:35, the sun wrote: > It ...
4 years, 3 months ago (2016-08-31 08:08:32 UTC) #10
the sun
https://codereview.webrtc.org/2292863002/diff/80001/webrtc/media/engine/fakewebrtcvoiceengine.h File webrtc/media/engine/fakewebrtcvoiceengine.h (right): https://codereview.webrtc.org/2292863002/diff/80001/webrtc/media/engine/fakewebrtcvoiceengine.h#newcode45 webrtc/media/engine/fakewebrtcvoiceengine.h:45: WEBRTC_BOOL_STUB(ApplyConfig, (const AudioProcessing::Config& config)); Use same order as in ...
4 years, 3 months ago (2016-09-01 13:48:01 UTC) #11
peah-webrtc
https://codereview.webrtc.org/2292863002/diff/20001/webrtc/modules/audio_processing/include/audio_processing.h File webrtc/modules/audio_processing/include/audio_processing.h (right): https://codereview.webrtc.org/2292863002/diff/20001/webrtc/modules/audio_processing/include/audio_processing.h#newcode220 webrtc/modules/audio_processing/include/audio_processing.h:220: // RTC_DCHECK(settings.IsOk()); On 2016/08/30 18:05:35, the sun wrote: > ...
4 years, 3 months ago (2016-09-02 08:22:04 UTC) #12
the sun
https://codereview.webrtc.org/2292863002/diff/80001/webrtc/modules/audio_processing/include/audio_processing.h File webrtc/modules/audio_processing/include/audio_processing.h (right): https://codereview.webrtc.org/2292863002/diff/80001/webrtc/modules/audio_processing/include/audio_processing.h#newcode202 webrtc/modules/audio_processing/include/audio_processing.h:202: // apm->ApplyConfig(config); On 2016/09/02 08:22:00, peah-webrtc wrote: > On ...
4 years, 3 months ago (2016-09-02 09:37:06 UTC) #13
hlundin-webrtc
https://codereview.webrtc.org/2292863002/diff/20001/webrtc/modules/audio_processing/include/audio_processing.h File webrtc/modules/audio_processing/include/audio_processing.h (right): https://codereview.webrtc.org/2292863002/diff/20001/webrtc/modules/audio_processing/include/audio_processing.h#newcode220 webrtc/modules/audio_processing/include/audio_processing.h:220: // RTC_DCHECK(settings.IsOk()); On 2016/09/02 08:21:59, peah-webrtc wrote: > On ...
4 years, 3 months ago (2016-09-06 08:56:04 UTC) #14
peah-webrtc
https://codereview.webrtc.org/2292863002/diff/20001/webrtc/modules/audio_processing/include/audio_processing.h File webrtc/modules/audio_processing/include/audio_processing.h (right): https://codereview.webrtc.org/2292863002/diff/20001/webrtc/modules/audio_processing/include/audio_processing.h#newcode220 webrtc/modules/audio_processing/include/audio_processing.h:220: // RTC_DCHECK(settings.IsOk()); On 2016/09/06 08:56:03, hlundin-webrtc wrote: > On ...
4 years, 3 months ago (2016-09-07 05:43:00 UTC) #15
peah-webrtc
I have added a new patchset according to what was discussed offline according to the ...
4 years, 3 months ago (2016-09-07 12:45:37 UTC) #16
peah-webrtc
I have added a new patchset according to what was discussed offline according to the ...
4 years, 3 months ago (2016-09-07 12:45:38 UTC) #17
the sun
https://codereview.webrtc.org/2292863002/diff/140001/webrtc/modules/audio_processing/audio_processing_impl.cc File webrtc/modules/audio_processing/audio_processing_impl.cc (right): https://codereview.webrtc.org/2292863002/diff/140001/webrtc/modules/audio_processing/audio_processing_impl.cc#newcode418 webrtc/modules/audio_processing/audio_processing_impl.cc:418: bool config_ok = LevelController::Validate(config_to_use.level_controller); I really like this; nice ...
4 years, 3 months ago (2016-09-07 15:49:39 UTC) #18
hlundin-webrtc
Nice. A few more comments from me. https://codereview.webrtc.org/2292863002/diff/140001/webrtc/modules/audio_processing/audio_processing_impl.cc File webrtc/modules/audio_processing/audio_processing_impl.cc (right): https://codereview.webrtc.org/2292863002/diff/140001/webrtc/modules/audio_processing/audio_processing_impl.cc#newcode418 webrtc/modules/audio_processing/audio_processing_impl.cc:418: bool config_ok ...
4 years, 3 months ago (2016-09-07 21:13:05 UTC) #19
peah-webrtc
https://codereview.webrtc.org/2292863002/diff/140001/webrtc/modules/audio_processing/audio_processing_impl.cc File webrtc/modules/audio_processing/audio_processing_impl.cc (right): https://codereview.webrtc.org/2292863002/diff/140001/webrtc/modules/audio_processing/audio_processing_impl.cc#newcode418 webrtc/modules/audio_processing/audio_processing_impl.cc:418: bool config_ok = LevelController::Validate(config_to_use.level_controller); On 2016/09/07 15:49:39, the sun ...
4 years, 3 months ago (2016-09-08 09:13:49 UTC) #20
the sun
https://codereview.webrtc.org/2292863002/diff/140001/webrtc/modules/audio_processing/audio_processing_impl.cc File webrtc/modules/audio_processing/audio_processing_impl.cc (right): https://codereview.webrtc.org/2292863002/diff/140001/webrtc/modules/audio_processing/audio_processing_impl.cc#newcode424 webrtc/modules/audio_processing/audio_processing_impl.cc:424: config_to_use.level_controller = LevelController::DefaultConfig(); On 2016/09/08 09:13:48, peah-webrtc wrote: > ...
4 years, 3 months ago (2016-09-08 09:45:55 UTC) #21
peah-webrtc
https://codereview.webrtc.org/2292863002/diff/140001/webrtc/modules/audio_processing/audio_processing_impl.cc File webrtc/modules/audio_processing/audio_processing_impl.cc (right): https://codereview.webrtc.org/2292863002/diff/140001/webrtc/modules/audio_processing/audio_processing_impl.cc#newcode424 webrtc/modules/audio_processing/audio_processing_impl.cc:424: config_to_use.level_controller = LevelController::DefaultConfig(); On 2016/09/08 09:45:55, the sun wrote: ...
4 years, 3 months ago (2016-09-08 19:34:25 UTC) #22
the sun
lgtm https://codereview.webrtc.org/2292863002/diff/200001/webrtc/modules/audio_processing/level_controller/level_controller.cc File webrtc/modules/audio_processing/level_controller/level_controller.cc (right): https://codereview.webrtc.org/2292863002/diff/200001/webrtc/modules/audio_processing/level_controller/level_controller.cc#newcode269 webrtc/modules/audio_processing/level_controller/level_controller.cc:269: << "enabled:" << (config.enabled ? "true" : "false") ...
4 years, 3 months ago (2016-09-08 20:32:27 UTC) #23
hlundin-webrtc
lgtm % solenberg's comments.
4 years, 3 months ago (2016-09-09 11:20:23 UTC) #24
peah-webrtc
https://codereview.webrtc.org/2292863002/diff/200001/webrtc/modules/audio_processing/level_controller/level_controller.cc File webrtc/modules/audio_processing/level_controller/level_controller.cc (right): https://codereview.webrtc.org/2292863002/diff/200001/webrtc/modules/audio_processing/level_controller/level_controller.cc#newcode269 webrtc/modules/audio_processing/level_controller/level_controller.cc:269: << "enabled:" << (config.enabled ? "true" : "false") << ...
4 years, 3 months ago (2016-09-09 12:58:26 UTC) #25
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/2292863002/240001
4 years, 3 months ago (2016-09-09 13:00:10 UTC) #28
commit-bot: I haz the power
Try jobs failed on following builders: mac_baremetal on master.tryserver.webrtc (JOB_FAILED, http://build.chromium.org/p/tryserver.webrtc/builders/mac_baremetal/builds/14213)
4 years, 3 months ago (2016-09-09 13:04:14 UTC) #30
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/2292863002/260001
4 years, 3 months ago (2016-09-09 13:44:52 UTC) #33
commit-bot: I haz the power
Try jobs failed on following builders: android_arm64_rel on master.tryserver.webrtc (JOB_TIMED_OUT, no build URL) android_dbg on ...
4 years, 3 months ago (2016-09-09 15:45:22 UTC) #35
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/2292863002/260001
4 years, 3 months ago (2016-09-09 17:10:52 UTC) #37
commit-bot: I haz the power
Try jobs failed on following builders: android_dbg on master.tryserver.webrtc (JOB_TIMED_OUT, no build URL)
4 years, 3 months ago (2016-09-09 19:11:22 UTC) #39
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/2292863002/260001
4 years, 3 months ago (2016-09-09 21:06:08 UTC) #41
commit-bot: I haz the power
Committed patchset #12 (id:260001)
4 years, 3 months ago (2016-09-09 21:16:08 UTC) #43
commit-bot: I haz the power
Patchset 12 (id:??) landed as https://crrev.com/c8bbe3fe9aad9e9a1189a42dcaa8f5d6c261ecc8 Cr-Commit-Position: refs/heads/master@{#14171}
4 years, 3 months ago (2016-09-09 21:17:13 UTC) #45
kjellander_webrtc
4 years, 3 months ago (2016-09-12 05:16:39 UTC) #46
Message was sent while issue was closed.
A revert of this CL (patchset #12 id:260001) has been created in
https://codereview.webrtc.org/2334583002/ by kjellander@webrtc.org.

The reason for reverting is: Interface change in the mock breaks downstream
code..

Powered by Google App Engine
This is Rietveld 408576698