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

Unified Diff: content/renderer/media/audio_message_filter.cc

Issue 11359196: Associate audio streams with their source/destination RenderView. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebased; and numerous clean-ups. Created 8 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/renderer/media/audio_message_filter.cc
diff --git a/content/renderer/media/audio_message_filter.cc b/content/renderer/media/audio_message_filter.cc
index d8a6e70c77eac5fa03ad3251e617b6f7b670e02c..3cbb355f7bb666027786f9ebfc1997df30f9a80e 100644
--- a/content/renderer/media/audio_message_filter.cc
+++ b/content/renderer/media/audio_message_filter.cc
@@ -11,6 +11,7 @@
#include "content/common/media/audio_messages.h"
#include "content/renderer/render_thread_impl.h"
#include "ipc/ipc_logging.h"
+#include "media/audio/audio_output_device.h"
namespace content {
@@ -42,6 +43,26 @@ void AudioMessageFilter::CreateStream(int stream_id,
Send(new AudioHostMsg_CreateStream(stream_id, params, input_channels));
}
+void AudioMessageFilter::AssociateStreamWithProducer(int stream_id,
+ int render_view_id) {
+ Send(new AudioHostMsg_AssociateStreamWithProducer(stream_id, render_view_id));
+}
+
+void AudioMessageFilter::AssociateDeviceWithProducer(
+ const scoped_refptr<media::AudioOutputDevice>& device,
+ int render_view_id) {
+ ChildProcess::current()->io_message_loop()->PostTask(
scherkus (not reviewing) 2012/11/27 22:55:26 curiously enough, Send() will re-post to the IO th
miu 2012/11/28 07:26:20 Done.
+ FROM_HERE,
+ base::Bind(&AudioMessageFilter::AssociateDeviceWithProducerOnIOThread,
+ this, device, render_view_id));
+}
+
+void AudioMessageFilter::AssociateDeviceWithProducerOnIOThread(
+ const scoped_refptr<media::AudioOutputDevice>& device,
+ int render_view_id) {
+ AssociateStreamWithProducer(device->stream_id(), render_view_id);
+}
+
void AudioMessageFilter::PlayStream(int stream_id) {
Send(new AudioHostMsg_PlayStream(stream_id));
}

Powered by Google App Engine
This is Rietveld 408576698