Index: content/renderer/render_frame_impl.cc |
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc |
index 75e77b4d606c1de3cd88f31759c3baaf13e0801d..db742df167362f6e7b10fa20cc3a3171a953b4b3 100644 |
--- a/content/renderer/render_frame_impl.cc |
+++ b/content/renderer/render_frame_impl.cc |
@@ -203,6 +203,7 @@ |
#include "content/renderer/java/gin_java_bridge_dispatcher.h" |
#include "content/renderer/media/android/renderer_media_player_manager.h" |
#include "content/renderer/media/android/renderer_media_session_manager.h" |
+#include "content/renderer/media/android/renderer_surface_view_manager.h" |
#include "content/renderer/media/android/stream_texture_factory_impl.h" |
#include "content/renderer/media/android/webmediaplayer_android.h" |
#include "content/renderer/media/android/webmediasession_android.h" |
@@ -981,6 +982,7 @@ RenderFrameImpl::RenderFrameImpl(const CreateParams& params) |
#if defined(OS_ANDROID) |
media_player_manager_(NULL), |
media_session_manager_(NULL), |
+ surface_manager_(nullptr), |
#endif |
#if defined(ENABLE_BROWSER_CDMS) |
cdm_manager_(NULL), |
@@ -2447,6 +2449,10 @@ blink::WebMediaPlayer* RenderFrameImpl::createMediaPlayer( |
base::Bind(&GetSharedMainThreadContext3D); |
scoped_refptr<media::MediaLog> media_log(new RenderMediaLog()); |
+#if defined(OS_ANDROID) |
+ if (!surface_manager_) |
+ surface_manager_ = new RendererSurfaceViewManager(this); |
+#endif |
media::WebMediaPlayerParams params( |
base::Bind(&ContentRendererClient::DeferMediaLoad, |
base::Unretained(GetContentClient()->renderer()), |
@@ -2457,7 +2463,7 @@ blink::WebMediaPlayer* RenderFrameImpl::createMediaPlayer( |
render_thread->compositor_task_runner(), context_3d_cb, |
base::Bind(&v8::Isolate::AdjustAmountOfExternalAllocatedMemory, |
base::Unretained(blink::mainThreadIsolate())), |
- GetMediaPermission(), initial_cdm); |
+ GetMediaPermission(), initial_cdm, surface_manager_); |
#if defined(OS_ANDROID) |
if (!CanUseWebMediaPlayerImpl(load_type, url)) { |