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 2625 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2636 std::unique_ptr<media::RendererFactory> media_renderer_factory( | 2636 std::unique_ptr<media::RendererFactory> media_renderer_factory( |
2637 new media::DefaultRendererFactory( | 2637 new media::DefaultRendererFactory( |
2638 media_log, GetDecoderFactory(), | 2638 media_log, GetDecoderFactory(), |
2639 base::Bind(&RenderThreadImpl::GetGpuFactories, | 2639 base::Bind(&RenderThreadImpl::GetGpuFactories, |
2640 base::Unretained(render_thread)))); | 2640 base::Unretained(render_thread)))); |
2641 #endif // defined(ENABLE_MOJO_RENDERER) | 2641 #endif // defined(ENABLE_MOJO_RENDERER) |
2642 | 2642 |
2643 if (!url_index_.get() || url_index_->frame() != frame_) | 2643 if (!url_index_.get() || url_index_->frame() != frame_) |
2644 url_index_.reset(new media::UrlIndex(frame_)); | 2644 url_index_.reset(new media::UrlIndex(frame_)); |
2645 | 2645 |
| 2646 // TODO(miu): In a soon-upcoming change, call GetRemoterFactory()->Create() to |
| 2647 // allow the local media pipeline to receive notifications about when Media |
| 2648 // Remoting can take place. Control logic in/around WebMediaPlayerImpl will |
| 2649 // implement media.mojom.RemotingSource. http://crbug.com/643964 |
| 2650 |
2646 media::WebMediaPlayerImpl* media_player = new media::WebMediaPlayerImpl( | 2651 media::WebMediaPlayerImpl* media_player = new media::WebMediaPlayerImpl( |
2647 frame_, client, encrypted_client, | 2652 frame_, client, encrypted_client, |
2648 GetWebMediaPlayerDelegate()->AsWeakPtr(), | 2653 GetWebMediaPlayerDelegate()->AsWeakPtr(), |
2649 std::move(media_renderer_factory), url_index_, params); | 2654 std::move(media_renderer_factory), url_index_, params); |
2650 | 2655 |
2651 #if defined(OS_ANDROID) // WMPI_CAST | 2656 #if defined(OS_ANDROID) // WMPI_CAST |
2652 media_player->SetMediaPlayerManager(GetMediaPlayerManager()); | 2657 media_player->SetMediaPlayerManager(GetMediaPlayerManager()); |
2653 media_player->SetDeviceScaleFactor(render_view_->GetDeviceScaleFactor()); | 2658 media_player->SetDeviceScaleFactor(render_view_->GetDeviceScaleFactor()); |
2654 #endif | 2659 #endif |
2655 | 2660 |
(...skipping 3482 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6138 bool RenderFrameImpl::AreSecureCodecsSupported() { | 6143 bool RenderFrameImpl::AreSecureCodecsSupported() { |
6139 #if defined(OS_ANDROID) | 6144 #if defined(OS_ANDROID) |
6140 // Hardware-secure codecs are only supported if secure surfaces are enabled. | 6145 // Hardware-secure codecs are only supported if secure surfaces are enabled. |
6141 return render_view_->renderer_preferences_ | 6146 return render_view_->renderer_preferences_ |
6142 .use_video_overlay_for_embedded_encrypted_video; | 6147 .use_video_overlay_for_embedded_encrypted_video; |
6143 #else | 6148 #else |
6144 return false; | 6149 return false; |
6145 #endif // defined(OS_ANDROID) | 6150 #endif // defined(OS_ANDROID) |
6146 } | 6151 } |
6147 | 6152 |
| 6153 media::mojom::RemoterFactory* RenderFrameImpl::GetRemoterFactory() { |
| 6154 if (!remoter_factory_) |
| 6155 GetRemoteInterfaces()->GetInterface(&remoter_factory_); |
| 6156 return remoter_factory_.get(); |
| 6157 } |
| 6158 |
6148 media::CdmFactory* RenderFrameImpl::GetCdmFactory() { | 6159 media::CdmFactory* RenderFrameImpl::GetCdmFactory() { |
6149 if (cdm_factory_) | 6160 if (cdm_factory_) |
6150 return cdm_factory_.get(); | 6161 return cdm_factory_.get(); |
6151 | 6162 |
6152 #if defined(ENABLE_MOJO_CDM) | 6163 #if defined(ENABLE_MOJO_CDM) |
6153 if (UseMojoCdm()) { | 6164 if (UseMojoCdm()) { |
6154 cdm_factory_.reset(new media::MojoCdmFactory(GetMediaInterfaceProvider())); | 6165 cdm_factory_.reset(new media::MojoCdmFactory(GetMediaInterfaceProvider())); |
6155 return cdm_factory_.get(); | 6166 return cdm_factory_.get(); |
6156 } | 6167 } |
6157 #endif // defined(ENABLE_MOJO_CDM) | 6168 #endif // defined(ENABLE_MOJO_CDM) |
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6345 // event target. Potentially a Pepper plugin will receive the event. | 6356 // event target. Potentially a Pepper plugin will receive the event. |
6346 // In order to tell whether a plugin gets the last mouse event and which it | 6357 // In order to tell whether a plugin gets the last mouse event and which it |
6347 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets | 6358 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets |
6348 // the event, it will notify us via DidReceiveMouseEvent() and set itself as | 6359 // the event, it will notify us via DidReceiveMouseEvent() and set itself as |
6349 // |pepper_last_mouse_event_target_|. | 6360 // |pepper_last_mouse_event_target_|. |
6350 pepper_last_mouse_event_target_ = nullptr; | 6361 pepper_last_mouse_event_target_ = nullptr; |
6351 #endif | 6362 #endif |
6352 } | 6363 } |
6353 | 6364 |
6354 } // namespace content | 6365 } // namespace content |
OLD | NEW |