Index: content/renderer/render_frame_impl.cc |
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc |
index d29b7009063fc17cf45a7d826d6b104ae4644457..057d82e0abbdbbe827efd8c7751bdf968781e4c2 100644 |
--- a/content/renderer/render_frame_impl.cc |
+++ b/content/renderer/render_frame_impl.cc |
@@ -2032,23 +2032,30 @@ blink::WebMediaPlayer* RenderFrameImpl::createMediaPlayer( |
if (!web_stream.isNull()) |
return CreateWebMediaPlayerForMediaStream(client); |
+ RenderThreadImpl* render_thread = RenderThreadImpl::current(); |
+ |
#if defined(OS_ANDROID) && !defined(ENABLE_MEDIA_PIPELINE_ON_ANDROID) |
- return CreateAndroidWebMediaPlayer(client, encrypted_client, |
- GetMediaPermission(), initial_cdm); |
+ scoped_refptr<media::AudioRendererSink> audio_renderer_sink; |
+ media::WebMediaPlayerParams::Context3DCB context_3d_cb; |
#else |
- scoped_refptr<media::MediaLog> media_log(new RenderMediaLog()); |
+ scoped_refptr<media::AudioRendererSink> audio_renderer_sink = |
+ render_thread->GetAudioRendererMixerManager()->CreateInput(routing_id_); |
+ media::WebMediaPlayerParams::Context3DCB context_3d_cb = |
+ base::Bind(&GetSharedMainThreadContext3D); |
+#endif // defined(OS_ANDROID) && !defined(ENABLE_MEDIA_PIPELINE_ON_ANDROID) |
- RenderThreadImpl* render_thread = RenderThreadImpl::current(); |
+ scoped_refptr<media::MediaLog> media_log(new RenderMediaLog()); |
media::WebMediaPlayerParams params( |
base::Bind(&ContentRendererClient::DeferMediaLoad, |
base::Unretained(GetContentClient()->renderer()), |
static_cast<RenderFrame*>(this), has_played_media_), |
- render_thread->GetAudioRendererMixerManager()->CreateInput(routing_id_), |
- media_log, render_thread->GetMediaThreadTaskRunner(), |
- render_thread->compositor_task_runner(), |
- base::Bind(&GetSharedMainThreadContext3D), GetMediaPermission(), |
- initial_cdm); |
+ audio_renderer_sink, media_log, render_thread->GetMediaThreadTaskRunner(), |
+ render_thread->compositor_task_runner(), context_3d_cb, |
+ GetMediaPermission(), initial_cdm); |
+#if defined(OS_ANDROID) && !defined(ENABLE_MEDIA_PIPELINE_ON_ANDROID) |
+ return CreateAndroidWebMediaPlayer(client, encrypted_client, params); |
+#else |
#if defined(ENABLE_MOJO_MEDIA) |
scoped_ptr<media::RendererFactory> media_renderer_factory( |
new media::MojoRendererFactory(GetMediaServiceFactory())); |
@@ -4952,12 +4959,10 @@ NavigationState* RenderFrameImpl::CreateNavigationStateFromPending() { |
} |
#if defined(OS_ANDROID) |
- |
WebMediaPlayer* RenderFrameImpl::CreateAndroidWebMediaPlayer( |
WebMediaPlayerClient* client, |
WebMediaPlayerEncryptedMediaClient* encrypted_client, |
- media::MediaPermission* media_permission, |
- WebContentDecryptionModule* initial_cdm) { |
+ const media::WebMediaPlayerParams& params) { |
scoped_refptr<StreamTextureFactory> stream_texture_factory; |
if (SynchronousCompositorFactory* factory = |
SynchronousCompositorFactory::GetInstance()) { |
@@ -4986,10 +4991,7 @@ WebMediaPlayer* RenderFrameImpl::CreateAndroidWebMediaPlayer( |
return new WebMediaPlayerAndroid( |
frame_, client, encrypted_client, weak_factory_.GetWeakPtr(), |
- GetMediaPlayerManager(), GetCdmFactory(), media_permission, initial_cdm, |
- stream_texture_factory, |
- RenderThreadImpl::current()->GetMediaThreadTaskRunner(), |
- new RenderMediaLog()); |
+ GetMediaPlayerManager(), GetCdmFactory(), stream_texture_factory, params); |
} |
RendererMediaPlayerManager* RenderFrameImpl::GetMediaPlayerManager() { |
@@ -4997,7 +4999,6 @@ RendererMediaPlayerManager* RenderFrameImpl::GetMediaPlayerManager() { |
media_player_manager_ = new RendererMediaPlayerManager(this); |
return media_player_manager_; |
} |
- |
#endif // defined(OS_ANDROID) |
media::MediaPermission* RenderFrameImpl::GetMediaPermission() { |