Index: media/mojo/services/service_factory_impl.cc |
diff --git a/media/mojo/services/service_factory_impl.cc b/media/mojo/services/service_factory_impl.cc |
index ce1f2194a92a8160d74bad0afeec95e42d45012a..87959169d94c54d235c723e730ffccbaf8bad7dc 100644 |
--- a/media/mojo/services/service_factory_impl.cc |
+++ b/media/mojo/services/service_factory_impl.cc |
@@ -6,6 +6,7 @@ |
#include "base/logging.h" |
#include "base/message_loop/message_loop.h" |
+#include "media/audio/audio_device_description.h" |
#include "media/base/media_log.h" |
#include "media/mojo/services/mojo_media_client.h" |
#include "services/shell/public/interfaces/interface_provider.mojom.h" |
@@ -81,14 +82,20 @@ void ServiceFactoryImpl::CreateVideoDecoder( |
} |
void ServiceFactoryImpl::CreateRenderer( |
- mojo::InterfaceRequest<mojom::Renderer> request) { |
+ mojo::InterfaceRequest<mojom::Renderer> request, |
+ const mojo::String& audio_device_id) { |
#if defined(ENABLE_MOJO_RENDERER) |
// The created object is owned by the pipe. |
// The audio and video sinks are owned by the client. |
+ std::string device_id = audio_device_id.get(); |
+ if (audio_device_id.is_null()) |
+ device_id = AudioDeviceDescription::kDefaultDeviceId; |
+ |
+ AudioRendererSink* audio_renderer_sink = |
+ mojo_media_client_->CreateAudioRendererSink(device_id); |
+ |
scoped_refptr<base::SingleThreadTaskRunner> task_runner( |
base::MessageLoop::current()->task_runner()); |
- AudioRendererSink* audio_renderer_sink = |
- mojo_media_client_->CreateAudioRendererSink(); |
VideoRendererSink* video_renderer_sink = |
mojo_media_client_->CreateVideoRendererSink(task_runner); |