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 2624 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2635 std::unique_ptr<media::RendererFactory> media_renderer_factory( | 2635 std::unique_ptr<media::RendererFactory> media_renderer_factory( |
2636 new media::DefaultRendererFactory( | 2636 new media::DefaultRendererFactory( |
2637 media_log, GetDecoderFactory(), | 2637 media_log, GetDecoderFactory(), |
2638 base::Bind(&RenderThreadImpl::GetGpuFactories, | 2638 base::Bind(&RenderThreadImpl::GetGpuFactories, |
2639 base::Unretained(render_thread)))); | 2639 base::Unretained(render_thread)))); |
2640 #endif // defined(ENABLE_MOJO_RENDERER) | 2640 #endif // defined(ENABLE_MOJO_RENDERER) |
2641 | 2641 |
2642 if (!url_index_.get() || url_index_->frame() != frame_) | 2642 if (!url_index_.get() || url_index_->frame() != frame_) |
2643 url_index_.reset(new media::UrlIndex(frame_)); | 2643 url_index_.reset(new media::UrlIndex(frame_)); |
2644 | 2644 |
| 2645 // TODO(miu): In a soon-upcoming change, call GetRemoterFactory()->Create() to |
| 2646 // allow the local media pipeline to receive notifications about when Media |
| 2647 // Remoting can take place. Control logic in/around WebMediaPlayerImpl will |
| 2648 // implement media.mojom.RemotingSource. http://crbug.com/643964 |
| 2649 |
2645 media::WebMediaPlayerImpl* media_player = new media::WebMediaPlayerImpl( | 2650 media::WebMediaPlayerImpl* media_player = new media::WebMediaPlayerImpl( |
2646 frame_, client, encrypted_client, | 2651 frame_, client, encrypted_client, |
2647 GetWebMediaPlayerDelegate()->AsWeakPtr(), | 2652 GetWebMediaPlayerDelegate()->AsWeakPtr(), |
2648 std::move(media_renderer_factory), url_index_, params); | 2653 std::move(media_renderer_factory), url_index_, params); |
2649 | 2654 |
2650 #if defined(OS_ANDROID) // WMPI_CAST | 2655 #if defined(OS_ANDROID) // WMPI_CAST |
2651 media_player->SetMediaPlayerManager(GetMediaPlayerManager()); | 2656 media_player->SetMediaPlayerManager(GetMediaPlayerManager()); |
2652 media_player->SetDeviceScaleFactor(render_view_->GetDeviceScaleFactor()); | 2657 media_player->SetDeviceScaleFactor(render_view_->GetDeviceScaleFactor()); |
2653 #endif | 2658 #endif |
2654 | 2659 |
(...skipping 3504 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6159 bool RenderFrameImpl::AreSecureCodecsSupported() { | 6164 bool RenderFrameImpl::AreSecureCodecsSupported() { |
6160 #if defined(OS_ANDROID) | 6165 #if defined(OS_ANDROID) |
6161 // Hardware-secure codecs are only supported if secure surfaces are enabled. | 6166 // Hardware-secure codecs are only supported if secure surfaces are enabled. |
6162 return render_view_->renderer_preferences_ | 6167 return render_view_->renderer_preferences_ |
6163 .use_video_overlay_for_embedded_encrypted_video; | 6168 .use_video_overlay_for_embedded_encrypted_video; |
6164 #else | 6169 #else |
6165 return false; | 6170 return false; |
6166 #endif // defined(OS_ANDROID) | 6171 #endif // defined(OS_ANDROID) |
6167 } | 6172 } |
6168 | 6173 |
| 6174 media::mojom::RemoterFactory* RenderFrameImpl::GetRemoterFactory() { |
| 6175 if (!remoter_factory_) |
| 6176 GetRemoteInterfaces()->GetInterface(&remoter_factory_); |
| 6177 return remoter_factory_.get(); |
| 6178 } |
| 6179 |
6169 media::CdmFactory* RenderFrameImpl::GetCdmFactory() { | 6180 media::CdmFactory* RenderFrameImpl::GetCdmFactory() { |
6170 if (cdm_factory_) | 6181 if (cdm_factory_) |
6171 return cdm_factory_.get(); | 6182 return cdm_factory_.get(); |
6172 | 6183 |
6173 #if defined(ENABLE_MOJO_CDM) | 6184 #if defined(ENABLE_MOJO_CDM) |
6174 if (UseMojoCdm()) { | 6185 if (UseMojoCdm()) { |
6175 cdm_factory_.reset(new media::MojoCdmFactory(GetMediaInterfaceProvider())); | 6186 cdm_factory_.reset(new media::MojoCdmFactory(GetMediaInterfaceProvider())); |
6176 return cdm_factory_.get(); | 6187 return cdm_factory_.get(); |
6177 } | 6188 } |
6178 #endif // defined(ENABLE_MOJO_CDM) | 6189 #endif // defined(ENABLE_MOJO_CDM) |
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6366 // event target. Potentially a Pepper plugin will receive the event. | 6377 // event target. Potentially a Pepper plugin will receive the event. |
6367 // In order to tell whether a plugin gets the last mouse event and which it | 6378 // In order to tell whether a plugin gets the last mouse event and which it |
6368 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets | 6379 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets |
6369 // the event, it will notify us via DidReceiveMouseEvent() and set itself as | 6380 // the event, it will notify us via DidReceiveMouseEvent() and set itself as |
6370 // |pepper_last_mouse_event_target_|. | 6381 // |pepper_last_mouse_event_target_|. |
6371 pepper_last_mouse_event_target_ = nullptr; | 6382 pepper_last_mouse_event_target_ = nullptr; |
6372 #endif | 6383 #endif |
6373 } | 6384 } |
6374 | 6385 |
6375 } // namespace content | 6386 } // namespace content |
OLD | NEW |