 Chromium Code Reviews
 Chromium Code Reviews Issue 783003002:
  Introduce media::RendererFactory interface.  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/src.git@master
    
  
    Issue 783003002:
  Introduce media::RendererFactory interface.  (Closed) 
  Base URL: https://chromium.googlesource.com/chromium/src.git@master| Index: content/renderer/render_frame_impl.cc | 
| diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc | 
| index c4e85c14c34a99711a48f3b6401d50e40bbc45ac..0360d08c87d88b124e77d47bf612d0b73119777c 100644 | 
| --- a/content/renderer/render_frame_impl.cc | 
| +++ b/content/renderer/render_frame_impl.cc | 
| @@ -94,11 +94,11 @@ | 
| #include "content/renderer/websharedworker_proxy.h" | 
| #include "gin/modules/module_registry.h" | 
| #include "media/base/audio_renderer_mixer_input.h" | 
| -#include "media/base/renderer.h" | 
| -#include "media/blink/encrypted_media_player_support.h" | 
| +#include "media/base/media_log.h" | 
| #include "media/blink/webcontentdecryptionmodule_impl.h" | 
| #include "media/blink/webmediaplayer_impl.h" | 
| #include "media/blink/webmediaplayer_params.h" | 
| +#include "media/filters/default_renderer_factory.h" | 
| #include "media/filters/gpu_video_accelerator_factories.h" | 
| #include "mojo/edk/js/core.h" | 
| #include "mojo/edk/js/support.h" | 
| @@ -1761,6 +1761,8 @@ blink::WebMediaPlayer* RenderFrameImpl::createMediaPlayer( | 
| #if defined(OS_ANDROID) | 
| return CreateAndroidWebMediaPlayer(url, client, initial_cdm); | 
| #else | 
| + scoped_refptr<media::MediaLog> media_log(new RenderMediaLog()); | 
| + | 
| RenderThreadImpl* render_thread = RenderThreadImpl::current(); | 
| media::WebMediaPlayerParams params( | 
| base::Bind(&ContentRendererClient::DeferMediaLoad, | 
| @@ -1768,12 +1770,8 @@ blink::WebMediaPlayer* RenderFrameImpl::createMediaPlayer( | 
| static_cast<RenderFrame*>(this)), | 
| render_thread->GetAudioRendererMixerManager()->CreateInput( | 
| render_view_->routing_id_, routing_id_), | 
| - *render_thread->GetAudioHardwareConfig(), | 
| - new RenderMediaLog(), | 
| - render_thread->GetGpuFactories(), | 
| - render_thread->GetMediaThreadTaskRunner(), | 
| - render_thread->compositor_message_loop_proxy(), | 
| - initial_cdm); | 
| + media_log, render_thread->GetMediaThreadTaskRunner(), | 
| + render_thread->compositor_message_loop_proxy(), initial_cdm); | 
| #if defined(ENABLE_PEPPER_CDMS) | 
| scoped_ptr<media::CdmFactory> cdm_factory( | 
| @@ -1782,12 +1780,17 @@ blink::WebMediaPlayer* RenderFrameImpl::createMediaPlayer( | 
| scoped_ptr<media::CdmFactory> cdm_factory(new RenderCdmFactory()); | 
| #endif | 
| - scoped_ptr<media::Renderer> media_renderer = | 
| - GetContentClient()->renderer()->CreateMediaRenderer( | 
| - this, render_thread->GetMediaThreadTaskRunner()); | 
| + scoped_ptr<media::RendererFactory> media_renderer_factory( | 
| + new media::DefaultRendererFactory( | 
| + base::Bind(&ContentRendererClient::CreateMediaRenderer, | 
| 
xhwang
2014/12/08 22:58:40
Now I feel it makes more sense to change ContentRe
 | 
| + base::Unretained(GetContentClient()->renderer()), | 
| + static_cast<RenderFrame*>(this)), | 
| + render_thread->GetMediaThreadTaskRunner(), media_log, | 
| + render_thread->GetGpuFactories(), | 
| + *render_thread->GetAudioHardwareConfig())); | 
| return new media::WebMediaPlayerImpl( | 
| - frame, client, weak_factory_.GetWeakPtr(), media_renderer.Pass(), | 
| + frame, client, weak_factory_.GetWeakPtr(), media_renderer_factory.Pass(), | 
| cdm_factory.Pass(), params); | 
| #endif // defined(OS_ANDROID) | 
| } |