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 2675 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2686 std::unique_ptr<media::RendererFactory> media_renderer_factory( | 2686 std::unique_ptr<media::RendererFactory> media_renderer_factory( |
2687 new media::DefaultRendererFactory( | 2687 new media::DefaultRendererFactory( |
2688 media_log, GetDecoderFactory(), | 2688 media_log, GetDecoderFactory(), |
2689 base::Bind(&RenderThreadImpl::GetGpuFactories, | 2689 base::Bind(&RenderThreadImpl::GetGpuFactories, |
2690 base::Unretained(render_thread)))); | 2690 base::Unretained(render_thread)))); |
2691 #endif // defined(ENABLE_MOJO_RENDERER) | 2691 #endif // defined(ENABLE_MOJO_RENDERER) |
2692 | 2692 |
2693 if (!url_index_.get() || url_index_->frame() != frame_) | 2693 if (!url_index_.get() || url_index_->frame() != frame_) |
2694 url_index_.reset(new media::UrlIndex(frame_)); | 2694 url_index_.reset(new media::UrlIndex(frame_)); |
2695 | 2695 |
| 2696 // TODO(miu): In a soon-upcoming change, call GetRemoterFactory()->Create() to |
| 2697 // allow the local media pipeline to receive notifications about when Media |
| 2698 // Remoting can take place. Control logic in/around WebMediaPlayerImpl will |
| 2699 // implement media.mojom.RemotingSource. http://crbug.com/643964 |
| 2700 |
2696 media::WebMediaPlayerImpl* media_player = new media::WebMediaPlayerImpl( | 2701 media::WebMediaPlayerImpl* media_player = new media::WebMediaPlayerImpl( |
2697 frame_, client, encrypted_client, | 2702 frame_, client, encrypted_client, |
2698 GetWebMediaPlayerDelegate()->AsWeakPtr(), | 2703 GetWebMediaPlayerDelegate()->AsWeakPtr(), |
2699 std::move(media_renderer_factory), url_index_, params); | 2704 std::move(media_renderer_factory), url_index_, params); |
2700 | 2705 |
2701 #if defined(OS_ANDROID) // WMPI_CAST | 2706 #if defined(OS_ANDROID) // WMPI_CAST |
2702 media_player->SetMediaPlayerManager(GetMediaPlayerManager()); | 2707 media_player->SetMediaPlayerManager(GetMediaPlayerManager()); |
2703 media_player->SetDeviceScaleFactor(render_view_->GetDeviceScaleFactor()); | 2708 media_player->SetDeviceScaleFactor(render_view_->GetDeviceScaleFactor()); |
2704 #endif | 2709 #endif |
2705 | 2710 |
(...skipping 3464 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6170 bool RenderFrameImpl::AreSecureCodecsSupported() { | 6175 bool RenderFrameImpl::AreSecureCodecsSupported() { |
6171 #if defined(OS_ANDROID) | 6176 #if defined(OS_ANDROID) |
6172 // Hardware-secure codecs are only supported if secure surfaces are enabled. | 6177 // Hardware-secure codecs are only supported if secure surfaces are enabled. |
6173 return render_view_->renderer_preferences_ | 6178 return render_view_->renderer_preferences_ |
6174 .use_video_overlay_for_embedded_encrypted_video; | 6179 .use_video_overlay_for_embedded_encrypted_video; |
6175 #else | 6180 #else |
6176 return false; | 6181 return false; |
6177 #endif // defined(OS_ANDROID) | 6182 #endif // defined(OS_ANDROID) |
6178 } | 6183 } |
6179 | 6184 |
| 6185 media::mojom::RemoterFactory* RenderFrameImpl::GetRemoterFactory() { |
| 6186 if (!remoter_factory_) |
| 6187 GetRemoteInterfaces()->GetInterface(&remoter_factory_); |
| 6188 return remoter_factory_.get(); |
| 6189 } |
| 6190 |
6180 media::CdmFactory* RenderFrameImpl::GetCdmFactory() { | 6191 media::CdmFactory* RenderFrameImpl::GetCdmFactory() { |
6181 if (cdm_factory_) | 6192 if (cdm_factory_) |
6182 return cdm_factory_.get(); | 6193 return cdm_factory_.get(); |
6183 | 6194 |
6184 #if defined(ENABLE_MOJO_CDM) | 6195 #if defined(ENABLE_MOJO_CDM) |
6185 if (UseMojoCdm()) { | 6196 if (UseMojoCdm()) { |
6186 cdm_factory_.reset(new media::MojoCdmFactory(GetMediaInterfaceProvider())); | 6197 cdm_factory_.reset(new media::MojoCdmFactory(GetMediaInterfaceProvider())); |
6187 return cdm_factory_.get(); | 6198 return cdm_factory_.get(); |
6188 } | 6199 } |
6189 #endif // defined(ENABLE_MOJO_CDM) | 6200 #endif // defined(ENABLE_MOJO_CDM) |
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6377 // event target. Potentially a Pepper plugin will receive the event. | 6388 // event target. Potentially a Pepper plugin will receive the event. |
6378 // In order to tell whether a plugin gets the last mouse event and which it | 6389 // In order to tell whether a plugin gets the last mouse event and which it |
6379 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets | 6390 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets |
6380 // the event, it will notify us via DidReceiveMouseEvent() and set itself as | 6391 // the event, it will notify us via DidReceiveMouseEvent() and set itself as |
6381 // |pepper_last_mouse_event_target_|. | 6392 // |pepper_last_mouse_event_target_|. |
6382 pepper_last_mouse_event_target_ = nullptr; | 6393 pepper_last_mouse_event_target_ = nullptr; |
6383 #endif | 6394 #endif |
6384 } | 6395 } |
6385 | 6396 |
6386 } // namespace content | 6397 } // namespace content |
OLD | NEW |