| 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 212 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 223 #include "content/renderer/media/android/stream_texture_factory.h" | 223 #include "content/renderer/media/android/stream_texture_factory.h" |
| 224 #include "content/renderer/media/android/webmediaplayer_android.h" | 224 #include "content/renderer/media/android/webmediaplayer_android.h" |
| 225 #include "content/renderer/media/android/webmediasession_android.h" | 225 #include "content/renderer/media/android/webmediasession_android.h" |
| 226 #include "media/base/android/media_codec_util.h" | 226 #include "media/base/android/media_codec_util.h" |
| 227 #include "third_party/WebKit/public/platform/WebFloatPoint.h" | 227 #include "third_party/WebKit/public/platform/WebFloatPoint.h" |
| 228 #endif | 228 #endif |
| 229 | 229 |
| 230 #if defined(ENABLE_PEPPER_CDMS) | 230 #if defined(ENABLE_PEPPER_CDMS) |
| 231 #include "content/renderer/media/cdm/pepper_cdm_wrapper_impl.h" | 231 #include "content/renderer/media/cdm/pepper_cdm_wrapper_impl.h" |
| 232 #include "content/renderer/media/cdm/render_cdm_factory.h" | 232 #include "content/renderer/media/cdm/render_cdm_factory.h" |
| 233 #elif defined(ENABLE_BROWSER_CDMS) | |
| 234 #include "content/renderer/media/cdm/render_cdm_factory.h" | |
| 235 #include "content/renderer/media/cdm/renderer_cdm_manager.h" | |
| 236 #endif | 233 #endif |
| 237 | 234 |
| 238 #if defined(ENABLE_MOJO_MEDIA) | 235 #if defined(ENABLE_MOJO_MEDIA) |
| 239 #include "content/renderer/media/media_interface_provider.h" | 236 #include "content/renderer/media/media_interface_provider.h" |
| 240 #endif | 237 #endif |
| 241 | 238 |
| 242 #if defined(ENABLE_MOJO_CDM) | 239 #if defined(ENABLE_MOJO_CDM) |
| 243 #include "media/mojo/clients/mojo_cdm_factory.h" // nogncheck | 240 #include "media/mojo/clients/mojo_cdm_factory.h" // nogncheck |
| 244 #endif | 241 #endif |
| 245 | 242 |
| (...skipping 570 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 816 return false; | 813 return false; |
| 817 | 814 |
| 818 // Otherwise enable WMPI if indicated via experiment or command line. | 815 // Otherwise enable WMPI if indicated via experiment or command line. |
| 819 return media::IsUnifiedMediaPipelineEnabled(); | 816 return media::IsUnifiedMediaPipelineEnabled(); |
| 820 } | 817 } |
| 821 #endif // defined(OS_ANDROID) | 818 #endif // defined(OS_ANDROID) |
| 822 | 819 |
| 823 #if defined(ENABLE_MOJO_CDM) | 820 #if defined(ENABLE_MOJO_CDM) |
| 824 // Returns whether mojo CDM should be used at runtime. Note that even when mojo | 821 // Returns whether mojo CDM should be used at runtime. Note that even when mojo |
| 825 // CDM is enabled at compile time (ENABLE_MOJO_CDM is defined), there are cases | 822 // CDM is enabled at compile time (ENABLE_MOJO_CDM is defined), there are cases |
| 826 // where we want to choose other CDM types. For example, on Android when we use | 823 // where we want to choose other CDM types. For example, in the future, when we |
| 827 // WebMediaPlayerAndroid, we still want to use ProxyMediaKeys. In the future, | 824 // experiment mojo CDM on desktop, we will choose between mojo CDM and pepper |
| 828 // when we experiment mojo CDM on desktop, we will choose between mojo CDM and | 825 // CDM at runtime. |
| 829 // pepper CDM at runtime. | |
| 830 // TODO(xhwang): Remove this when we use mojo CDM for all remote CDM cases by | 826 // TODO(xhwang): Remove this when we use mojo CDM for all remote CDM cases by |
| 831 // default. | 827 // default. |
| 832 bool UseMojoCdm() { | 828 bool UseMojoCdm() { |
| 833 #if defined(OS_ANDROID) | 829 #if defined(OS_ANDROID) |
| 834 return media::IsUnifiedMediaPipelineEnabled(); | 830 return media::IsUnifiedMediaPipelineEnabled(); |
| 835 #else | 831 #else |
| 836 return true; | 832 return true; |
| 837 #endif | 833 #endif |
| 838 } | 834 } |
| 839 #endif // defined(ENABLE_MOJO_CDM) | 835 #endif // defined(ENABLE_MOJO_CDM) |
| (...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1055 cookie_jar_(this), | 1051 cookie_jar_(this), |
| 1056 selection_text_offset_(0), | 1052 selection_text_offset_(0), |
| 1057 selection_range_(gfx::Range::InvalidRange()), | 1053 selection_range_(gfx::Range::InvalidRange()), |
| 1058 handling_select_range_(false), | 1054 handling_select_range_(false), |
| 1059 web_user_media_client_(NULL), | 1055 web_user_media_client_(NULL), |
| 1060 #if defined(OS_ANDROID) | 1056 #if defined(OS_ANDROID) |
| 1061 media_player_manager_(NULL), | 1057 media_player_manager_(NULL), |
| 1062 media_session_manager_(NULL), | 1058 media_session_manager_(NULL), |
| 1063 #endif | 1059 #endif |
| 1064 media_surface_manager_(nullptr), | 1060 media_surface_manager_(nullptr), |
| 1065 #if defined(ENABLE_BROWSER_CDMS) | |
| 1066 cdm_manager_(NULL), | |
| 1067 #endif | |
| 1068 devtools_agent_(nullptr), | 1061 devtools_agent_(nullptr), |
| 1069 push_messaging_dispatcher_(NULL), | 1062 push_messaging_dispatcher_(NULL), |
| 1070 presentation_dispatcher_(NULL), | 1063 presentation_dispatcher_(NULL), |
| 1071 screen_orientation_dispatcher_(NULL), | 1064 screen_orientation_dispatcher_(NULL), |
| 1072 manifest_manager_(NULL), | 1065 manifest_manager_(NULL), |
| 1073 accessibility_mode_(AccessibilityModeOff), | 1066 accessibility_mode_(AccessibilityModeOff), |
| 1074 render_accessibility_(NULL), | 1067 render_accessibility_(NULL), |
| 1075 media_player_delegate_(NULL), | 1068 media_player_delegate_(NULL), |
| 1076 is_using_lofi_(false), | 1069 is_using_lofi_(false), |
| 1077 effective_connection_type_( | 1070 effective_connection_type_( |
| (...skipping 5172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6250 if (UseMojoCdm()) { | 6243 if (UseMojoCdm()) { |
| 6251 cdm_factory_.reset(new media::MojoCdmFactory(GetMediaInterfaceProvider())); | 6244 cdm_factory_.reset(new media::MojoCdmFactory(GetMediaInterfaceProvider())); |
| 6252 return cdm_factory_.get(); | 6245 return cdm_factory_.get(); |
| 6253 } | 6246 } |
| 6254 #endif // defined(ENABLE_MOJO_CDM) | 6247 #endif // defined(ENABLE_MOJO_CDM) |
| 6255 | 6248 |
| 6256 #if defined(ENABLE_PEPPER_CDMS) | 6249 #if defined(ENABLE_PEPPER_CDMS) |
| 6257 DCHECK(frame_); | 6250 DCHECK(frame_); |
| 6258 cdm_factory_.reset( | 6251 cdm_factory_.reset( |
| 6259 new RenderCdmFactory(base::Bind(&PepperCdmWrapperImpl::Create, frame_))); | 6252 new RenderCdmFactory(base::Bind(&PepperCdmWrapperImpl::Create, frame_))); |
| 6260 #elif defined(ENABLE_BROWSER_CDMS) | |
| 6261 if (!cdm_manager_) | |
| 6262 cdm_manager_ = new RendererCdmManager(this); | |
| 6263 cdm_factory_.reset(new RenderCdmFactory(cdm_manager_)); | |
| 6264 #endif // defined(ENABLE_PEPPER_CDMS) | 6253 #endif // defined(ENABLE_PEPPER_CDMS) |
| 6265 | 6254 |
| 6266 return cdm_factory_.get(); | 6255 return cdm_factory_.get(); |
| 6267 } | 6256 } |
| 6268 | 6257 |
| 6269 media::DecoderFactory* RenderFrameImpl::GetDecoderFactory() { | 6258 media::DecoderFactory* RenderFrameImpl::GetDecoderFactory() { |
| 6270 #if defined(ENABLE_MOJO_AUDIO_DECODER) || defined(ENABLE_MOJO_VIDEO_DECODER) | 6259 #if defined(ENABLE_MOJO_AUDIO_DECODER) || defined(ENABLE_MOJO_VIDEO_DECODER) |
| 6271 if (!decoder_factory_) { | 6260 if (!decoder_factory_) { |
| 6272 decoder_factory_.reset( | 6261 decoder_factory_.reset( |
| 6273 new media::MojoDecoderFactory(GetMediaInterfaceProvider())); | 6262 new media::MojoDecoderFactory(GetMediaInterfaceProvider())); |
| (...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6442 // event target. Potentially a Pepper plugin will receive the event. | 6431 // event target. Potentially a Pepper plugin will receive the event. |
| 6443 // In order to tell whether a plugin gets the last mouse event and which it | 6432 // In order to tell whether a plugin gets the last mouse event and which it |
| 6444 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets | 6433 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets |
| 6445 // the event, it will notify us via DidReceiveMouseEvent() and set itself as | 6434 // the event, it will notify us via DidReceiveMouseEvent() and set itself as |
| 6446 // |pepper_last_mouse_event_target_|. | 6435 // |pepper_last_mouse_event_target_|. |
| 6447 pepper_last_mouse_event_target_ = nullptr; | 6436 pepper_last_mouse_event_target_ = nullptr; |
| 6448 #endif | 6437 #endif |
| 6449 } | 6438 } |
| 6450 | 6439 |
| 6451 } // namespace content | 6440 } // namespace content |
| OLD | NEW |