| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "content/renderer/render_frame_impl.h" | 5 #include "content/renderer/render_frame_impl.h" |
| 6 | 6 |
| 7 #include <map> | 7 #include <map> |
| 8 #include <string> | 8 #include <string> |
| 9 #include <utility> | 9 #include <utility> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 250 #endif | 250 #endif |
| 251 | 251 |
| 252 #if defined(ENABLE_MOJO_MEDIA) | 252 #if defined(ENABLE_MOJO_MEDIA) |
| 253 #include "content/renderer/media/media_interface_provider.h" | 253 #include "content/renderer/media/media_interface_provider.h" |
| 254 #endif | 254 #endif |
| 255 | 255 |
| 256 #if defined(ENABLE_MOJO_CDM) | 256 #if defined(ENABLE_MOJO_CDM) |
| 257 #include "media/mojo/clients/mojo_cdm_factory.h" // nogncheck | 257 #include "media/mojo/clients/mojo_cdm_factory.h" // nogncheck |
| 258 #endif | 258 #endif |
| 259 | 259 |
| 260 #if defined(ENABLE_MOJO_DEMUXER) |
| 261 #include "media/mojo/clients/mojo_demuxer_factory.h" // nogncheck |
| 262 #else |
| 263 #include "media/filters/default_demuxer_factory.h" |
| 264 #endif |
| 265 |
| 260 #if defined(ENABLE_MOJO_RENDERER) | 266 #if defined(ENABLE_MOJO_RENDERER) |
| 261 #include "media/mojo/clients/mojo_renderer_factory.h" // nogncheck | 267 #include "media/mojo/clients/mojo_renderer_factory.h" // nogncheck |
| 262 #endif | 268 #endif |
| 263 | 269 |
| 264 #if !defined(ENABLE_MOJO_RENDERER) || \ | 270 #if !defined(ENABLE_MOJO_RENDERER) || \ |
| 265 BUILDFLAG(ENABLE_RUNTIME_MEDIA_RENDERER_SELECTION) | 271 BUILDFLAG(ENABLE_RUNTIME_MEDIA_RENDERER_SELECTION) |
| 266 #include "media/renderers/default_renderer_factory.h" // nogncheck | 272 #include "media/renderers/default_renderer_factory.h" // nogncheck |
| 267 #endif | 273 #endif |
| 268 | 274 |
| 269 #if defined(ENABLE_MOJO_AUDIO_DECODER) || defined(ENABLE_MOJO_VIDEO_DECODER) | 275 #if defined(ENABLE_MOJO_AUDIO_DECODER) || defined(ENABLE_MOJO_VIDEO_DECODER) |
| (...skipping 2582 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2852 // in the renderer process. See https://crbug.com/681160. | 2858 // in the renderer process. See https://crbug.com/681160. |
| 2853 GetWebkitPreferences().max_keyframe_distance_to_disable_background_video, | 2859 GetWebkitPreferences().max_keyframe_distance_to_disable_background_video, |
| 2854 GetWebkitPreferences().enable_instant_source_buffer_gc, | 2860 GetWebkitPreferences().enable_instant_source_buffer_gc, |
| 2855 GetContentClient()->renderer()->AllowMediaSuspend()); | 2861 GetContentClient()->renderer()->AllowMediaSuspend()); |
| 2856 | 2862 |
| 2857 bool use_fallback_path = false; | 2863 bool use_fallback_path = false; |
| 2858 #if defined(OS_ANDROID) | 2864 #if defined(OS_ANDROID) |
| 2859 use_fallback_path = !UseWebMediaPlayerImpl(url); | 2865 use_fallback_path = !UseWebMediaPlayerImpl(url); |
| 2860 #endif // defined(OS_ANDROID) | 2866 #endif // defined(OS_ANDROID) |
| 2861 | 2867 |
| 2868 std::unique_ptr<media::DemuxerFactory> media_demuxer_factory; |
| 2862 std::unique_ptr<media::RendererFactory> media_renderer_factory; | 2869 std::unique_ptr<media::RendererFactory> media_renderer_factory; |
| 2863 if (use_fallback_path) { | 2870 if (use_fallback_path) { |
| 2864 #if defined(OS_ANDROID) | 2871 #if defined(OS_ANDROID) |
| 2865 auto mojo_renderer_factory = base::MakeUnique<media::MojoRendererFactory>( | 2872 auto mojo_renderer_factory = base::MakeUnique<media::MojoRendererFactory>( |
| 2866 media::MojoRendererFactory::GetGpuFactoriesCB(), | 2873 media::MojoRendererFactory::GetGpuFactoriesCB(), |
| 2867 GetRemoteInterfaces()->get()); | 2874 GetRemoteInterfaces()->get()); |
| 2868 | 2875 |
| 2869 media_renderer_factory = base::MakeUnique<MediaPlayerRendererClientFactory>( | 2876 media_renderer_factory = base::MakeUnique<MediaPlayerRendererClientFactory>( |
| 2870 render_thread->compositor_task_runner(), | 2877 render_thread->compositor_task_runner(), |
| 2871 std::move(mojo_renderer_factory), | 2878 std::move(mojo_renderer_factory), |
| 2872 base::Bind(&StreamTextureWrapperImpl::Create, | 2879 base::Bind(&StreamTextureWrapperImpl::Create, |
| 2873 render_thread->EnableStreamTextureCopy(), | 2880 render_thread->EnableStreamTextureCopy(), |
| 2874 render_thread->GetStreamTexureFactory(), | 2881 render_thread->GetStreamTexureFactory(), |
| 2875 base::ThreadTaskRunnerHandle::Get())); | 2882 base::ThreadTaskRunnerHandle::Get())); |
| 2876 #endif // defined(OS_ANDROID) | 2883 #endif // defined(OS_ANDROID) |
| 2877 } else { | 2884 } else { |
| 2885 #if defined(ENABLE_MOJO_DEMUXER) && defined(ENABLE_MOJO_RENDERER) |
| 2886 media_demuxer_factory = base::MakeUnique<media::MojoDemuxerFactory>( |
| 2887 GetMediaInterfaceProvider()); |
| 2888 #else |
| 2889 media_demuxer_factory = |
| 2890 base::MakeUnique<media::DefaultDemuxerFactory>(media_log); |
| 2891 #endif |
| 2892 |
| 2878 #if defined(ENABLE_MOJO_RENDERER) | 2893 #if defined(ENABLE_MOJO_RENDERER) |
| 2879 #if BUILDFLAG(ENABLE_RUNTIME_MEDIA_RENDERER_SELECTION) | 2894 #if BUILDFLAG(ENABLE_RUNTIME_MEDIA_RENDERER_SELECTION) |
| 2880 if (base::CommandLine::ForCurrentProcess()->HasSwitch( | 2895 if (base::CommandLine::ForCurrentProcess()->HasSwitch( |
| 2881 switches::kDisableMojoRenderer)) { | 2896 switches::kDisableMojoRenderer)) { |
| 2882 media_renderer_factory = base::MakeUnique<media::DefaultRendererFactory>( | 2897 media_renderer_factory = base::MakeUnique<media::DefaultRendererFactory>( |
| 2883 media_log, GetDecoderFactory(), | 2898 media_log, GetDecoderFactory(), |
| 2884 base::Bind(&RenderThreadImpl::GetGpuFactories, | 2899 base::Bind(&RenderThreadImpl::GetGpuFactories, |
| 2885 base::Unretained(render_thread))); | 2900 base::Unretained(render_thread))); |
| 2886 } | 2901 } |
| 2887 #endif // BUILDFLAG(ENABLE_RUNTIME_MEDIA_RENDERER_SELECTION) | 2902 #endif // BUILDFLAG(ENABLE_RUNTIME_MEDIA_RENDERER_SELECTION) |
| (...skipping 17 matching lines...) Expand all Loading... |
| 2905 media_renderer_factory = | 2920 media_renderer_factory = |
| 2906 base::MakeUnique<media::remoting::AdaptiveRendererFactory>( | 2921 base::MakeUnique<media::remoting::AdaptiveRendererFactory>( |
| 2907 std::move(media_renderer_factory), std::move(remoting_controller)); | 2922 std::move(media_renderer_factory), std::move(remoting_controller)); |
| 2908 #endif | 2923 #endif |
| 2909 | 2924 |
| 2910 if (!url_index_.get() || url_index_->frame() != frame_) | 2925 if (!url_index_.get() || url_index_->frame() != frame_) |
| 2911 url_index_.reset(new media::UrlIndex(frame_)); | 2926 url_index_.reset(new media::UrlIndex(frame_)); |
| 2912 | 2927 |
| 2913 media::WebMediaPlayerImpl* media_player = new media::WebMediaPlayerImpl( | 2928 media::WebMediaPlayerImpl* media_player = new media::WebMediaPlayerImpl( |
| 2914 frame_, client, encrypted_client, GetWebMediaPlayerDelegate(), | 2929 frame_, client, encrypted_client, GetWebMediaPlayerDelegate(), |
| 2915 std::move(media_renderer_factory), url_index_, params); | 2930 std::move(media_demuxer_factory), std::move(media_renderer_factory), |
| 2931 url_index_, params); |
| 2916 | 2932 |
| 2917 #if defined(OS_ANDROID) // WMPI_CAST | 2933 #if defined(OS_ANDROID) // WMPI_CAST |
| 2918 media_player->SetMediaPlayerManager(GetMediaPlayerManager()); | 2934 media_player->SetMediaPlayerManager(GetMediaPlayerManager()); |
| 2919 media_player->SetDeviceScaleFactor(render_view_->GetDeviceScaleFactor()); | 2935 media_player->SetDeviceScaleFactor(render_view_->GetDeviceScaleFactor()); |
| 2920 media_player->SetUseFallbackPath(use_fallback_path); | 2936 media_player->SetUseFallbackPath(use_fallback_path); |
| 2921 #endif // defined(OS_ANDROID) | 2937 #endif // defined(OS_ANDROID) |
| 2922 | 2938 |
| 2923 #if BUILDFLAG(ENABLE_MEDIA_REMOTING) | 2939 #if BUILDFLAG(ENABLE_MEDIA_REMOTING) |
| 2924 remoting_controller_ptr->SetSwitchRendererCallback(base::Bind( | 2940 remoting_controller_ptr->SetSwitchRendererCallback(base::Bind( |
| 2925 &media::WebMediaPlayerImpl::ScheduleRestart, media_player->AsWeakPtr())); | 2941 &media::WebMediaPlayerImpl::ScheduleRestart, media_player->AsWeakPtr())); |
| (...skipping 3883 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6809 // event target. Potentially a Pepper plugin will receive the event. | 6825 // event target. Potentially a Pepper plugin will receive the event. |
| 6810 // In order to tell whether a plugin gets the last mouse event and which it | 6826 // In order to tell whether a plugin gets the last mouse event and which it |
| 6811 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets | 6827 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets |
| 6812 // the event, it will notify us via DidReceiveMouseEvent() and set itself as | 6828 // the event, it will notify us via DidReceiveMouseEvent() and set itself as |
| 6813 // |pepper_last_mouse_event_target_|. | 6829 // |pepper_last_mouse_event_target_|. |
| 6814 pepper_last_mouse_event_target_ = nullptr; | 6830 pepper_last_mouse_event_target_ = nullptr; |
| 6815 #endif | 6831 #endif |
| 6816 } | 6832 } |
| 6817 | 6833 |
| 6818 } // namespace content | 6834 } // namespace content |
| OLD | NEW |