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

Issue 7157001: Implements AudioMessageFilter as member in RenderThread (Closed)

Created:
9 years, 6 months ago by henrika_dont_use
Modified:
9 years, 5 months ago
CC:
chromium-reviews, Niklas Enbom, rian_google.com, enal, Scott Franklin
Visibility:
Public.

Description

Ensures that AudioMessageFilter now lives on the main render thread. In addition, removes usage of routing ID by utilizing control messages instead of routed messages. BUG=none TESTS=none Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=92138

Patch Set 1 #

Patch Set 2 : '' #

Total comments: 13

Patch Set 3 : '' #

Patch Set 4 : '' #

Total comments: 9

Patch Set 5 : Removed filter creator class #

Patch Set 6 : Added AudioRendererImpl implementation #

Patch Set 7 : minor lint fix #

Total comments: 11

Patch Set 8 : '' #

Total comments: 8

Patch Set 9 : Removes singleton and usage of routing ID #

Patch Set 10 : Added three unit tests #

Patch Set 11 : Added TODO() comment in failing unit test #

Total comments: 42

Patch Set 12 : Mainly nits removing non-required caching of message loops #

Total comments: 4

Patch Set 13 : Disabled non-functional tests in AudioRendererImplTest #

Patch Set 14 : Moved audio input parts to new CL and added input filter to render thread #

Patch Set 15 : Minor fixes #

Patch Set 16 : Fixed lint error #

Patch Set 17 : Restored input parts again to ensure that this CL builds as is #

Patch Set 18 : Refactored major parts of the failing unit test #

Total comments: 9

Patch Set 19 : Finalized the AudioRenderImpl unit test #

Total comments: 2

Patch Set 20 : Added input message filter and audio input device #

Total comments: 32

Patch Set 21 : Merges http://codereview.chromium.org/7253003 and takes comments from Andrew into account #

Patch Set 22 : Fixes trybot compile error #

Patch Set 23 : Fixes linking error on Linux for unit test #

Patch Set 24 : Rebasing on top of 7217025 and unit test cleanup #

Patch Set 25 : Solves dependecy issues reported by try bots #

Patch Set 26 : Fixed nits in AudioRenderImpl unit test #

Unified diffs Side-by-side diffs Delta from patch set Stats (+800 lines, -714 lines) Patch
M chrome/browser/media/media_internals.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 2 chunks +7 lines, -10 lines 0 comments Download
M chrome/browser/media/media_internals.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 2 chunks +12 lines, -14 lines 0 comments Download
M content/browser/renderer_host/media/audio_input_renderer_host.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 6 chunks +12 lines, -20 lines 0 comments Download
M content/browser/renderer_host/media/audio_input_renderer_host.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 11 chunks +25 lines, -39 lines 0 comments Download
M content/browser/renderer_host/media/audio_renderer_host.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 7 chunks +17 lines, -27 lines 0 comments Download
M content/browser/renderer_host/media/audio_renderer_host.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 14 chunks +45 lines, -58 lines 0 comments Download
M content/browser/renderer_host/media/audio_renderer_host_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 9 chunks +41 lines, -62 lines 0 comments Download
M content/browser/renderer_host/media/media_observer.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 1 chunk +6 lines, -8 lines 0 comments Download
M content/browser/renderer_host/media/mock_media_observer.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 1 chunk +8 lines, -11 lines 0 comments Download
M content/common/media/audio_messages.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 1 chunk +79 lines, -82 lines 0 comments Download
M content/renderer/media/audio_device.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 7 chunks +67 lines, -20 lines 0 comments Download
M content/renderer/media/audio_device.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 12 chunks +23 lines, -64 lines 0 comments Download
M content/renderer/media/audio_input_device.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 6 chunks +61 lines, -19 lines 0 comments Download
M content/renderer/media/audio_input_device.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 8 chunks +20 lines, -62 lines 0 comments Download
M content/renderer/media/audio_input_message_filter.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 4 chunks +3 lines, -11 lines 0 comments Download
M content/renderer/media/audio_input_message_filter.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 2 chunks +12 lines, -18 lines 0 comments Download
M content/renderer/media/audio_message_filter.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 5 chunks +3 lines, -13 lines 0 comments Download
M content/renderer/media/audio_message_filter.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 3 chunks +12 lines, -16 lines 0 comments Download
M content/renderer/media/audio_message_filter_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 8 chunks +10 lines, -21 lines 0 comments Download
M content/renderer/media/audio_renderer_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 4 chunks +8 lines, -6 lines 0 comments Download
M content/renderer/media/audio_renderer_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 19 chunks +58 lines, -49 lines 0 comments Download
M content/renderer/media/audio_renderer_impl_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 4 chunks +222 lines, -54 lines 0 comments Download
M content/renderer/pepper_plugin_delegate_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 9 chunks +20 lines, -16 lines 0 comments Download
M content/renderer/render_thread.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 3 chunks +12 lines, -0 lines 0 comments Download
M content/renderer/render_thread.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 4 chunks +15 lines, -1 line 0 comments Download
M content/renderer/render_view.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 2 chunks +0 lines, -6 lines 0 comments Download
M content/renderer/render_view.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 4 chunks +2 lines, -7 lines 0 comments Download

Messages

Total messages: 46 (0 generated)
henrika_dont_use
This patch has been tested on Windows 7 for HTML5 audio/video and WebRTC but not ...
9 years, 6 months ago (2011-06-14 15:24:27 UTC) #1
Chris Rogers
This is easily fixed, but gcc on Mac OS X is giving a compiler warning ...
9 years, 6 months ago (2011-06-14 20:04:00 UTC) #2
Chris Rogers
Built on Mac OS X with this patch and the web audio API seems to ...
9 years, 6 months ago (2011-06-14 20:19:20 UTC) #3
scherkus (not reviewing)
looking good so far! http://codereview.chromium.org/7157001/diff/11001/content/renderer/render_thread.cc File content/renderer/render_thread.cc (right): http://codereview.chromium.org/7157001/diff/11001/content/renderer/render_thread.cc#newcode175 content/renderer/render_thread.cc:175: AudioMessageFilterCreator::SharedFilter(); indent two more spaces ...
9 years, 6 months ago (2011-06-14 22:22:12 UTC) #4
Chris Rogers
Hi Henrik, I don't have time to check the window's build for web audio API ...
9 years, 6 months ago (2011-06-14 22:57:10 UTC) #5
henrika_dont_use
Think I've ensured that both reviewers are happy for now. Still, I am not 100% ...
9 years, 6 months ago (2011-06-15 15:16:39 UTC) #6
scherkus (not reviewing)
few more sanity checking questions but overall I think we're good here http://codereview.chromium.org/7157001/diff/11001/content/renderer/render_view.cc File content/renderer/render_view.cc ...
9 years, 6 months ago (2011-06-16 21:56:22 UTC) #7
henrika_dont_use
Improved comments and removed creator layer based on recommendation from Andrew. http://codereview.chromium.org/7157001/diff/19001/content/renderer/media/audio_device.h File content/renderer/media/audio_device.h (right): ...
9 years, 6 months ago (2011-06-17 11:52:01 UTC) #8
henrika_dont_use
Removed the creator class. Tried to cache result of <>:get to remove some overhead but ...
9 years, 6 months ago (2011-06-17 14:20:53 UTC) #9
scherkus (not reviewing)
LGTM after fixing nits again thanks for doing this -- big improvement in readability/design! http://codereview.chromium.org/7157001/diff/19001/content/renderer/media/audio_device.h ...
9 years, 6 months ago (2011-06-17 17:50:09 UTC) #10
Chris Rogers
Henrik, thanks so much for doing this. It's a vast improvement over the current code!
9 years, 6 months ago (2011-06-17 18:38:40 UTC) #11
henrika_dont_use
Rewrote the message filter using new Traits for reference counted objects. Ensured that the routing ...
9 years, 6 months ago (2011-06-21 16:43:38 UTC) #12
scherkus (not reviewing)
more nits brettw: base/memory/singleton.h jam: routing_id usage FYI the discussion on chromium-dev seemed to lean ...
9 years, 6 months ago (2011-06-21 17:23:59 UTC) #13
brettw
I think I agree with your assessment that it will be better to attach to ...
9 years, 6 months ago (2011-06-21 17:26:39 UTC) #14
jam
the changes to singleton aren't needed per the email thread on chromium-dev http://codereview.chromium.org/7157001/diff/27019/content/renderer/media/audio_message_filter.h File content/renderer/media/audio_message_filter.h ...
9 years, 6 months ago (2011-06-21 19:02:04 UTC) #15
jam
CCing chromium-reviews. This is added by default. Please do not remove it.
9 years, 6 months ago (2011-06-21 19:17:37 UTC) #16
jam
btw here's how the video guys changed routing messages to control, it might be an ...
9 years, 6 months ago (2011-06-22 21:36:51 UTC) #17
henrika_dont_use
Thanks John, I'm inspired.
9 years, 6 months ago (2011-06-23 14:02:57 UTC) #18
henrika_dont_use
New design based on offline discussions. Functionality for HTML5 a/v verified using this suitable video ...
9 years, 6 months ago (2011-06-23 14:18:40 UTC) #19
jam
looks much better :) almost there, just some nits. http://codereview.chromium.org/7157001/diff/39015/content/renderer/media/audio_device.cc File content/renderer/media/audio_device.cc (right): http://codereview.chromium.org/7157001/diff/39015/content/renderer/media/audio_device.cc#newcode26 content/renderer/media/audio_device.cc:26: ...
9 years, 6 months ago (2011-06-23 18:59:55 UTC) #20
scherkus (not reviewing)
few nits but wow this is like a breath of fresh air or something -- ...
9 years, 6 months ago (2011-06-23 19:14:43 UTC) #21
wjia(left Chromium)
http://codereview.chromium.org/7157001/diff/39015/content/browser/renderer_host/media/audio_input_renderer_host.h File content/browser/renderer_host/media/audio_input_renderer_host.h (right): http://codereview.chromium.org/7157001/diff/39015/content/browser/renderer_host/media/audio_input_renderer_host.h#newcode123 content/browser/renderer_host/media/audio_input_renderer_host.h:123: void SendErrorMessage(int32 stream_id); it would be good to use ...
9 years, 6 months ago (2011-06-23 19:43:22 UTC) #22
henrika_dont_use
Tried to take all input into account. However, I do end up in a state ...
9 years, 6 months ago (2011-06-27 15:05:44 UTC) #23
jam
lgtm http://codereview.chromium.org/7157001/diff/46001/content/renderer/media/audio_device.cc File content/renderer/media/audio_device.cc (right): http://codereview.chromium.org/7157001/diff/46001/content/renderer/media/audio_device.cc#newcode172 content/renderer/media/audio_device.cc:172: ChildProcess::current()->io_message_loop()->PostTask(FROM_HERE, nit: MessageLoop::current()-> is smaller :) http://codereview.chromium.org/7157001/diff/46001/content/renderer/render_thread.cc File ...
9 years, 6 months ago (2011-06-27 16:18:19 UTC) #24
scherkus (not reviewing)
LGTM will you be disabling the crashing tests or did we resolve that issue?
9 years, 6 months ago (2011-06-27 19:02:08 UTC) #25
henrika_dont_use
Fixed last two minor comments from John. http://codereview.chromium.org/7157001/diff/46001/content/renderer/media/audio_device.cc File content/renderer/media/audio_device.cc (right): http://codereview.chromium.org/7157001/diff/46001/content/renderer/media/audio_device.cc#newcode172 content/renderer/media/audio_device.cc:172: ChildProcess::current()->io_message_loop()->PostTask(FROM_HERE, On ...
9 years, 5 months ago (2011-06-28 11:57:40 UTC) #26
henrika_dont_use
Disabled all failing unit tests for now. Will continue discussion in a separate e-mail thread.
9 years, 5 months ago (2011-06-28 13:01:46 UTC) #27
henrika_dont_use
Sorry, some additional modifications based on similar work on the audio input side. - Added ...
9 years, 5 months ago (2011-06-28 15:38:47 UTC) #28
henrika_dont_use
Removed dependency of separate "input CL" to ensure that this CL can be committed as ...
9 years, 5 months ago (2011-06-29 08:13:25 UTC) #29
henrika_dont_use
Enabled major parts of the previously disabled unit tests for AudioRendererImpl. Goal has been to ...
9 years, 5 months ago (2011-06-29 16:31:14 UTC) #30
tommi (sloooow) - chröme
nice job Henrik. I'll wait with my final approval for the last update that enables ...
9 years, 5 months ago (2011-06-30 14:11:23 UTC) #31
henrika_dont_use
Fixes based on comments from Tommi. http://codereview.chromium.org/7157001/diff/35005/content/renderer/media/audio_device.cc File content/renderer/media/audio_device.cc (right): http://codereview.chromium.org/7157001/diff/35005/content/renderer/media/audio_device.cc#newcode55 content/renderer/media/audio_device.cc:55: ChildProcess::current()->io_message_loop()->PostTask( Not needed ...
9 years, 5 months ago (2011-06-30 14:59:51 UTC) #32
henrika_dont_use
- Added support for all tests in the AudioRenderImpl unit test. - Ensured that no ...
9 years, 5 months ago (2011-06-30 15:09:14 UTC) #33
tommi (sloooow) - chröme
lgtm. http://codereview.chromium.org/7157001/diff/65001/content/renderer/media/audio_renderer_impl_unittest.cc File content/renderer/media/audio_renderer_impl_unittest.cc (right): http://codereview.chromium.org/7157001/diff/65001/content/renderer/media/audio_renderer_impl_unittest.cc#newcode162 content/renderer/media/audio_renderer_impl_unittest.cc:162: const IPC::Message& message) { fix indent in this ...
9 years, 5 months ago (2011-06-30 20:24:44 UTC) #34
henrika_dont_use
Fixed nit based on comment from Tommi. http://codereview.chromium.org/7157001/diff/65001/content/renderer/media/audio_renderer_impl_unittest.cc File content/renderer/media/audio_renderer_impl_unittest.cc (right): http://codereview.chromium.org/7157001/diff/65001/content/renderer/media/audio_renderer_impl_unittest.cc#newcode162 content/renderer/media/audio_renderer_impl_unittest.cc:162: const IPC::Message& ...
9 years, 5 months ago (2011-07-01 08:41:25 UTC) #35
henrika_dont_use
Added the input parts as well to this CL to save time. Please note that ...
9 years, 5 months ago (2011-07-05 09:31:42 UTC) #36
tommi (sloooow) - chröme
LGTM++ Are any issues/lgtms pending? I thought this had already been submitted. On Tue, Jul ...
9 years, 5 months ago (2011-07-05 20:10:56 UTC) #37
henrika_dont_use
I think that Andrew would like to take a final look at the latest unit ...
9 years, 5 months ago (2011-07-06 06:50:35 UTC) #38
scherkus (not reviewing)
mostly style nits + recommendations for organizing the unit tests but LGTM http://codereview.chromium.org/7157001/diff/68001/content/renderer/media/audio_renderer_impl_unittest.cc File content/renderer/media/audio_renderer_impl_unittest.cc ...
9 years, 5 months ago (2011-07-07 21:26:47 UTC) #39
henrika_dont_use
Done modifications based on comments from Andrew. Will make some additional code cleanup for the ...
9 years, 5 months ago (2011-07-08 12:47:58 UTC) #40
henrika_dont_use
I have now also merged the latest modifications by Eugene (http://codereview.chromium.org/7253003) into this CL.
9 years, 5 months ago (2011-07-08 12:57:22 UTC) #41
commit-bot: I haz the power
Try job failure for 7157001-74007 (retry) on linux for step "compile" (clobber build). It's a ...
9 years, 5 months ago (2011-07-08 14:18:21 UTC) #42
henrika_dont_use
Sorry guys. I removed the marker from the commit button. Seems to be some timing ...
9 years, 5 months ago (2011-07-08 15:55:20 UTC) #43
brettw
content LGTM (just gave a quick once-over)
9 years, 5 months ago (2011-07-08 17:32:08 UTC) #44
henrika_dont_use
Committed to try-bots again after rebasing on top of 7217025.
9 years, 5 months ago (2011-07-11 11:45:09 UTC) #45
henrika_dont_use
9 years, 5 months ago (2011-07-11 17:59:47 UTC) #46
Will be committed here: http://codereview.chromium.org/7327034/

Powered by Google App Engine
This is Rietveld 408576698