| Index: content/renderer/render_frame_impl.cc
|
| diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
|
| index 59744b0aeab929bfaacf17af84890c70b2d58437..4cc4bcc9c2346f1ba6612a26976351d2fef568c9 100644
|
| --- a/content/renderer/render_frame_impl.cc
|
| +++ b/content/renderer/render_frame_impl.cc
|
| @@ -146,6 +146,8 @@
|
| #include "media/blink/url_index.h"
|
| #include "media/blink/webencryptedmediaclient_impl.h"
|
| #include "media/blink/webmediaplayer_impl.h"
|
| +#include "media/remoting/remoting_controller.h"
|
| +#include "media/remoting/remoting_renderer_factory.h"
|
| #include "media/renderers/gpu_video_accelerator_factories.h"
|
| #include "mojo/edk/js/core.h"
|
| #include "mojo/edk/js/support.h"
|
| @@ -2689,12 +2691,19 @@ blink::WebMediaPlayer* RenderFrameImpl::createMediaPlayer(
|
| base::Bind(&RenderThreadImpl::GetGpuFactories,
|
| base::Unretained(render_thread)),
|
| GetMediaInterfaceProvider()));
|
| + media::RendererController* renderer_controller = nullptr;
|
| #else
|
| - std::unique_ptr<media::RendererFactory> media_renderer_factory(
|
| + std::unique_ptr<media::RendererFactory> default_renderer_factory(
|
| new media::DefaultRendererFactory(
|
| media_log, GetDecoderFactory(),
|
| base::Bind(&RenderThreadImpl::GetGpuFactories,
|
| base::Unretained(render_thread))));
|
| + std::unique_ptr<media::RemotingController> remoting_controller(
|
| + new media::RemotingController(GetRemoterFactory()));
|
| + media::RendererController* renderer_controller = remoting_controller.get();
|
| + std::unique_ptr<media::RendererFactory> media_renderer_factory(
|
| + new media::RemotingRendererFactory(std::move(default_renderer_factory),
|
| + std::move(remoting_controller)));
|
| #endif // defined(ENABLE_MOJO_RENDERER)
|
|
|
| if (!url_index_.get() || url_index_->frame() != frame_)
|
| @@ -2705,10 +2714,11 @@ blink::WebMediaPlayer* RenderFrameImpl::createMediaPlayer(
|
| // Remoting can take place. Control logic in/around WebMediaPlayerImpl will
|
| // implement media.mojom.RemotingSource. http://crbug.com/643964
|
|
|
| - media::WebMediaPlayerImpl* media_player = new media::WebMediaPlayerImpl(
|
| - frame_, client, encrypted_client,
|
| - GetWebMediaPlayerDelegate()->AsWeakPtr(),
|
| - std::move(media_renderer_factory), url_index_, params);
|
| + media::WebMediaPlayerImpl* media_player =
|
| + new media::WebMediaPlayerImpl(frame_, client, encrypted_client,
|
| + GetWebMediaPlayerDelegate()->AsWeakPtr(),
|
| + std::move(media_renderer_factory),
|
| + url_index_, renderer_controller, params);
|
|
|
| #if defined(OS_ANDROID) // WMPI_CAST
|
| media_player->SetMediaPlayerManager(GetMediaPlayerManager());
|
|
|