| Index: content/renderer/render_frame_impl.cc
|
| diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
|
| index 43059a4887a9488fb003f26acd034ec38a82c3bf..6314846b1255d5e776f4260a0292b7df2133d07f 100644
|
| --- a/content/renderer/render_frame_impl.cc
|
| +++ b/content/renderer/render_frame_impl.cc
|
| @@ -168,6 +168,7 @@
|
| #include "media/blink/webencryptedmediaclient_impl.h"
|
| #include "media/blink/webmediaplayer_impl.h"
|
| #include "media/media_features.h"
|
| +#include "media/renderers/default_renderer_factory.h"
|
| #include "media/renderers/gpu_video_accelerator_factories.h"
|
| #include "mojo/edk/js/core.h"
|
| #include "mojo/edk/js/support.h"
|
| @@ -274,11 +275,6 @@
|
| #include "media/mojo/clients/mojo_renderer_factory.h" // nogncheck
|
| #endif
|
|
|
| -#if !defined(ENABLE_MOJO_RENDERER) || \
|
| - BUILDFLAG(ENABLE_RUNTIME_MEDIA_RENDERER_SELECTION)
|
| -#include "media/renderers/default_renderer_factory.h" // nogncheck
|
| -#endif
|
| -
|
| #if defined(ENABLE_MOJO_AUDIO_DECODER) || defined(ENABLE_MOJO_VIDEO_DECODER)
|
| #include "media/mojo/clients/mojo_decoder_factory.h" // nogncheck
|
| #endif
|
| @@ -2918,43 +2914,40 @@ blink::WebMediaPlayer* RenderFrameImpl::CreateMediaPlayer(
|
| factory_selector->SetUseMediaPlayer(UseMediaPlayerRenderer(url));
|
| #endif // defined(OS_ANDROID)
|
|
|
| - // |factory_type| will be overwritten in all possible path below, and the
|
| - // DEFAULT value is not accurate. However, this prevents the compiler from
|
| - // issuing a -Wsometimes-uninitialized warning.
|
| - // TODO(tguilbert): Remove |factory_type|, and clean up the logic. The work is
|
| - // already completed and incrementally being submitted. See crbug.com/663503.
|
| - auto factory_type = media::RendererFactorySelector::FactoryType::DEFAULT;
|
| - std::unique_ptr<media::RendererFactory> media_renderer_factory;
|
| -
|
| + bool use_mojo_renderer_factory = false;
|
| #if defined(ENABLE_MOJO_RENDERER)
|
| #if BUILDFLAG(ENABLE_RUNTIME_MEDIA_RENDERER_SELECTION)
|
| - if (base::CommandLine::ForCurrentProcess()->HasSwitch(
|
| - switches::kDisableMojoRenderer)) {
|
| - media_renderer_factory = base::MakeUnique<media::DefaultRendererFactory>(
|
| - media_log.get(), GetDecoderFactory(),
|
| - base::Bind(&RenderThreadImpl::GetGpuFactories,
|
| - base::Unretained(render_thread)));
|
| -
|
| - factory_type = media::RendererFactorySelector::FactoryType::DEFAULT;
|
| - }
|
| + use_mojo_renderer_factory =
|
| + !base::CommandLine::ForCurrentProcess()->HasSwitch(
|
| + switches::kDisableMojoRenderer);
|
| +#else
|
| + use_mojo_renderer_factory = true;
|
| #endif // BUILDFLAG(ENABLE_RUNTIME_MEDIA_RENDERER_SELECTION)
|
| - if (!media_renderer_factory) {
|
| - media_renderer_factory = base::MakeUnique<media::MojoRendererFactory>(
|
| - base::Bind(&RenderThreadImpl::GetGpuFactories,
|
| - base::Unretained(render_thread)),
|
| - GetMediaInterfaceProvider());
|
| + if (use_mojo_renderer_factory) {
|
| + factory_selector->AddFactory(
|
| + media::RendererFactorySelector::FactoryType::MOJO,
|
| + base::MakeUnique<media::MojoRendererFactory>(
|
| + base::Bind(&RenderThreadImpl::GetGpuFactories,
|
| + base::Unretained(render_thread)),
|
| + GetMediaInterfaceProvider()));
|
|
|
| - factory_type = media::RendererFactorySelector::FactoryType::MOJO;
|
| + factory_selector->SetBaseFactoryType(
|
| + media::RendererFactorySelector::FactoryType::MOJO);
|
| }
|
| -#else
|
| - media_renderer_factory = base::MakeUnique<media::DefaultRendererFactory>(
|
| - media_log.get(), GetDecoderFactory(),
|
| - base::Bind(&RenderThreadImpl::GetGpuFactories,
|
| - base::Unretained(render_thread)));
|
| -
|
| - factory_type = media::RendererFactorySelector::FactoryType::DEFAULT;
|
| #endif // defined(ENABLE_MOJO_RENDERER)
|
|
|
| + if (!use_mojo_renderer_factory) {
|
| + factory_selector->AddFactory(
|
| + media::RendererFactorySelector::FactoryType::DEFAULT,
|
| + base::MakeUnique<media::DefaultRendererFactory>(
|
| + media_log.get(), GetDecoderFactory(),
|
| + base::Bind(&RenderThreadImpl::GetGpuFactories,
|
| + base::Unretained(render_thread))));
|
| +
|
| + factory_selector->SetBaseFactoryType(
|
| + media::RendererFactorySelector::FactoryType::DEFAULT);
|
| + }
|
| +
|
| #if BUILDFLAG(ENABLE_MEDIA_REMOTING)
|
| auto courier_factory =
|
| base::MakeUnique<media::remoting::CourierRendererFactory>(
|
| @@ -2974,9 +2967,6 @@ blink::WebMediaPlayer* RenderFrameImpl::CreateMediaPlayer(
|
| if (!url_index_.get() || url_index_->frame() != frame_)
|
| url_index_.reset(new media::UrlIndex(frame_));
|
|
|
| - factory_selector->AddFactory(factory_type, std::move(media_renderer_factory));
|
| - factory_selector->SetBaseFactoryType(factory_type);
|
| -
|
| std::unique_ptr<media::WebMediaPlayerParams> params(
|
| new media::WebMediaPlayerParams(
|
| std::move(media_log),
|
|
|