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

Issue 2865113002: AecDump implementation. (Closed)

Created:
3 years, 7 months ago by aleloi
Modified:
3 years, 7 months ago
Reviewers:
peah-webrtc
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

AecDump implementation. This CL implements webrtc::AecDump, which is an interface defined in https://codereview.webrtc.org/2778783002. This AudioProcessing submodule writes audio and APM state to a file. The file writing is done by posting IO tasks (write_to_file_task.h) on an rtc::TaskQueue. There is an existing implementation for this through AudioProcessing::StartDebugRecording() and AudioProcessing::StopDebugRecording(). This implementation still works, and is used as the default until this dependent CL: https://codereview.webrtc.org/2896813002/. To be able to build webrtc without protobuf support, the interface is isolated from protobuf types. Audio data from AudioProcessing is passed to AecDumpImpl through the AecDump interface. There it is stored in protobuf objects, which are posted on the task queue. This functionality is verified correct by the CL https://codereview.webrtc.org/2864373002, which enables this recording submodule in APM tests. BUG=webrtc:7404 Review-Url: https://codereview.webrtc.org/2865113002 Cr-Commit-Position: refs/heads/master@{#18241} Committed: https://chromium.googlesource.com/external/webrtc/+/06013e99ac3f2526784627ca5e0eea78c617db87

Patch Set 1 : Clean up of impl code. #

Total comments: 11

Patch Set 2 : Rebase on small fixes. #

Total comments: 21

Patch Set 3 : Comments, factory methods, one lock less. #

Total comments: 19

Patch Set 4 : Minor issues; MakeUnique & updated unit test. #

Patch Set 5 : Add event type for Capture Stream. #

Patch Set 6 : Rebase & remove 'forced' functionality. #

Patch Set 7 : Use ProtoString and fix protobuf utils deps for internal project. #

Patch Set 8 : Removed extra build deps from dependent CL. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+775 lines, -0 lines) Patch
M webrtc/modules/audio_processing/BUILD.gn View 1 2 3 4 5 6 7 1 chunk +1 line, -0 lines 0 comments Download
A webrtc/modules/audio_processing/aec_dump/BUILD.gn View 1 1 chunk +74 lines, -0 lines 0 comments Download
A webrtc/modules/audio_processing/aec_dump/aec_dump_factory.h View 1 2 1 chunk +47 lines, -0 lines 0 comments Download
A webrtc/modules/audio_processing/aec_dump/aec_dump_impl.h View 1 2 3 4 5 6 1 chunk +80 lines, -0 lines 0 comments Download
A webrtc/modules/audio_processing/aec_dump/aec_dump_impl.cc View 1 2 3 4 5 1 chunk +208 lines, -0 lines 0 comments Download
A webrtc/modules/audio_processing/aec_dump/aec_dump_unittest.cc View 1 2 3 4 5 1 chunk +71 lines, -0 lines 0 comments Download
A webrtc/modules/audio_processing/aec_dump/capture_stream_info.h View 1 2 3 4 1 chunk +66 lines, -0 lines 0 comments Download
A webrtc/modules/audio_processing/aec_dump/capture_stream_info.cc View 1 2 1 chunk +69 lines, -0 lines 0 comments Download
A webrtc/modules/audio_processing/aec_dump/null_aec_dump_factory.cc View 1 1 chunk +33 lines, -0 lines 0 comments Download
A webrtc/modules/audio_processing/aec_dump/write_to_file_task.h View 1 2 3 4 5 6 1 chunk +58 lines, -0 lines 0 comments Download
A webrtc/modules/audio_processing/aec_dump/write_to_file_task.cc View 1 2 3 4 5 6 1 chunk +68 lines, -0 lines 0 comments Download

Depends on Patchset:

Messages

Total messages: 67 (56 generated)
aleloi
PTAL on the (non-virtual) AecDump implementation!
3 years, 7 months ago (2017-05-08 14:57:33 UTC) #13
peah-webrtc
Hi, Thanks for the new non-polymorphic variant of the AecDump implementation. It avoids the need ...
3 years, 7 months ago (2017-05-09 07:14:58 UTC) #18
aleloi
PTAL at new patch! https://codereview.webrtc.org/2865113002/diff/80001/webrtc/modules/audio_processing/aec_dump/aec_dump.cc File webrtc/modules/audio_processing/aec_dump/aec_dump.cc (right): https://codereview.webrtc.org/2865113002/diff/80001/webrtc/modules/audio_processing/aec_dump/aec_dump.cc#newcode68 webrtc/modules/audio_processing/aec_dump/aec_dump.cc:68: thread_sync_event.Wait(rtc::Event::kForever); On 2017/05/09 07:14:57, peah-webrtc ...
3 years, 7 months ago (2017-05-12 13:07:56 UTC) #21
aleloi
PTAL on the latest changes to interface and implementation!
3 years, 7 months ago (2017-05-15 13:21:02 UTC) #34
peah-webrtc
Hi, Thanks for the update! It looks great, but I have some comments. https://codereview.webrtc.org/2865113002/diff/180001/webrtc/modules/audio_processing/aec_dump/aec_dump_factory.h File ...
3 years, 7 months ago (2017-05-16 06:30:39 UTC) #35
aleloi
Please take a look on the latest pset! I've made changes in response to comments, ...
3 years, 7 months ago (2017-05-16 20:10:17 UTC) #44
peah-webrtc
Great! Thanks for the new patch! I don't have that many more comments apart from ...
3 years, 7 months ago (2017-05-17 05:36:33 UTC) #50
aleloi
Thanks for the comments! I've mostly done small fixes and not updated the threading/memory/ownership much ...
3 years, 7 months ago (2017-05-17 10:49:56 UTC) #53
peah-webrtc
Awesome! Great work! lgtm https://codereview.webrtc.org/2865113002/diff/240001/webrtc/modules/audio_processing/aec_dump/aec_dump_impl.cc File webrtc/modules/audio_processing/aec_dump/aec_dump_impl.cc (right): https://codereview.webrtc.org/2865113002/diff/240001/webrtc/modules/audio_processing/aec_dump/aec_dump_impl.cc#newcode114 webrtc/modules/audio_processing/aec_dump/aec_dump_impl.cc:114: worker_queue_->PostTask(std::unique_ptr<rtc::QueuedTask>(std::move(task))); On 2017/05/17 10:49:55, aleloi ...
3 years, 7 months ago (2017-05-17 11:13:50 UTC) #56
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/2865113002/340001
3 years, 7 months ago (2017-05-23 15:03:40 UTC) #64
commit-bot: I haz the power
3 years, 7 months ago (2017-05-23 15:52:11 UTC) #67
Message was sent while issue was closed.
Committed patchset #8 (id:340001) as
https://chromium.googlesource.com/external/webrtc/+/06013e99ac3f2526784627ca5...

Powered by Google App Engine
This is Rietveld 408576698