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 2691 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2702 std::unique_ptr<media::RendererFactory> media_renderer_factory( | 2702 std::unique_ptr<media::RendererFactory> media_renderer_factory( |
2703 new media::DefaultRendererFactory( | 2703 new media::DefaultRendererFactory( |
2704 media_log, GetDecoderFactory(), | 2704 media_log, GetDecoderFactory(), |
2705 base::Bind(&RenderThreadImpl::GetGpuFactories, | 2705 base::Bind(&RenderThreadImpl::GetGpuFactories, |
2706 base::Unretained(render_thread)))); | 2706 base::Unretained(render_thread)))); |
2707 #endif // defined(ENABLE_MOJO_RENDERER) | 2707 #endif // defined(ENABLE_MOJO_RENDERER) |
2708 | 2708 |
2709 if (!url_index_.get() || url_index_->frame() != frame_) | 2709 if (!url_index_.get() || url_index_->frame() != frame_) |
2710 url_index_.reset(new media::UrlIndex(frame_)); | 2710 url_index_.reset(new media::UrlIndex(frame_)); |
2711 | 2711 |
| 2712 // TODO(miu): In a soon-upcoming change, call GetRemoterFactory()->Create() to |
| 2713 // allow the local media pipeline to receive notifications about when Media |
| 2714 // Remoting can take place. Control logic in/around WebMediaPlayerImpl will |
| 2715 // implement media.mojom.RemotingSource. http://crbug.com/643964 |
| 2716 |
2712 media::WebMediaPlayerImpl* media_player = new media::WebMediaPlayerImpl( | 2717 media::WebMediaPlayerImpl* media_player = new media::WebMediaPlayerImpl( |
2713 frame_, client, encrypted_client, | 2718 frame_, client, encrypted_client, |
2714 GetWebMediaPlayerDelegate()->AsWeakPtr(), | 2719 GetWebMediaPlayerDelegate()->AsWeakPtr(), |
2715 std::move(media_renderer_factory), url_index_, params); | 2720 std::move(media_renderer_factory), url_index_, params); |
2716 | 2721 |
2717 #if defined(OS_ANDROID) // WMPI_CAST | 2722 #if defined(OS_ANDROID) // WMPI_CAST |
2718 media_player->SetMediaPlayerManager(GetMediaPlayerManager()); | 2723 media_player->SetMediaPlayerManager(GetMediaPlayerManager()); |
2719 media_player->SetDeviceScaleFactor(render_view_->GetDeviceScaleFactor()); | 2724 media_player->SetDeviceScaleFactor(render_view_->GetDeviceScaleFactor()); |
2720 #endif | 2725 #endif |
2721 | 2726 |
(...skipping 3469 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6191 bool RenderFrameImpl::AreSecureCodecsSupported() { | 6196 bool RenderFrameImpl::AreSecureCodecsSupported() { |
6192 #if defined(OS_ANDROID) | 6197 #if defined(OS_ANDROID) |
6193 // Hardware-secure codecs are only supported if secure surfaces are enabled. | 6198 // Hardware-secure codecs are only supported if secure surfaces are enabled. |
6194 return render_view_->renderer_preferences_ | 6199 return render_view_->renderer_preferences_ |
6195 .use_video_overlay_for_embedded_encrypted_video; | 6200 .use_video_overlay_for_embedded_encrypted_video; |
6196 #else | 6201 #else |
6197 return false; | 6202 return false; |
6198 #endif // defined(OS_ANDROID) | 6203 #endif // defined(OS_ANDROID) |
6199 } | 6204 } |
6200 | 6205 |
| 6206 media::mojom::RemoterFactory* RenderFrameImpl::GetRemoterFactory() { |
| 6207 if (!remoter_factory_) |
| 6208 GetRemoteInterfaces()->GetInterface(&remoter_factory_); |
| 6209 return remoter_factory_.get(); |
| 6210 } |
| 6211 |
6201 media::CdmFactory* RenderFrameImpl::GetCdmFactory() { | 6212 media::CdmFactory* RenderFrameImpl::GetCdmFactory() { |
6202 if (cdm_factory_) | 6213 if (cdm_factory_) |
6203 return cdm_factory_.get(); | 6214 return cdm_factory_.get(); |
6204 | 6215 |
6205 #if defined(ENABLE_MOJO_CDM) | 6216 #if defined(ENABLE_MOJO_CDM) |
6206 if (UseMojoCdm()) { | 6217 if (UseMojoCdm()) { |
6207 cdm_factory_.reset(new media::MojoCdmFactory(GetMediaInterfaceProvider())); | 6218 cdm_factory_.reset(new media::MojoCdmFactory(GetMediaInterfaceProvider())); |
6208 return cdm_factory_.get(); | 6219 return cdm_factory_.get(); |
6209 } | 6220 } |
6210 #endif // defined(ENABLE_MOJO_CDM) | 6221 #endif // defined(ENABLE_MOJO_CDM) |
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6398 // event target. Potentially a Pepper plugin will receive the event. | 6409 // event target. Potentially a Pepper plugin will receive the event. |
6399 // In order to tell whether a plugin gets the last mouse event and which it | 6410 // In order to tell whether a plugin gets the last mouse event and which it |
6400 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets | 6411 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets |
6401 // the event, it will notify us via DidReceiveMouseEvent() and set itself as | 6412 // the event, it will notify us via DidReceiveMouseEvent() and set itself as |
6402 // |pepper_last_mouse_event_target_|. | 6413 // |pepper_last_mouse_event_target_|. |
6403 pepper_last_mouse_event_target_ = nullptr; | 6414 pepper_last_mouse_event_target_ = nullptr; |
6404 #endif | 6415 #endif |
6405 } | 6416 } |
6406 | 6417 |
6407 } // namespace content | 6418 } // namespace content |
OLD | NEW |