Chromium Code Reviews| Index: content/renderer/render_frame_impl.cc |
| diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc |
| index ad515e04ec88f74915717fe28144c4a654ecfeec..5abdd75ff88421457505b5eb85d5f0f66a0922e4 100644 |
| --- a/content/renderer/render_frame_impl.cc |
| +++ b/content/renderer/render_frame_impl.cc |
| @@ -3586,6 +3586,8 @@ blink::WebUserMediaClient* RenderFrameImpl::userMediaClient() { |
| blink::WebEncryptedMediaClient* RenderFrameImpl::encryptedMediaClient() { |
| if (!web_encrypted_media_client_) { |
| web_encrypted_media_client_.reset(new media::WebEncryptedMediaClientImpl( |
| + base::Bind(&RenderFrameImpl::AreSecureCodecsSupported, |
| + base::Unretained(this)), |
|
nasko
2015/05/08 22:17:23
nit: Put a comment explaining why using base::Unre
sandersd (OOO until July 31)
2015/05/08 22:29:37
Done.
|
| GetCdmFactory(), GetMediaPermission())); |
| } |
| return web_encrypted_media_client_.get(); |
| @@ -4918,6 +4920,17 @@ media::MediaPermission* RenderFrameImpl::GetMediaPermission() { |
| return media_permission_dispatcher_; |
| } |
| +bool RenderFrameImpl::AreSecureCodecsSupported() { |
| +#if defined(OS_ANDROID) |
| + // Hardware-secure codecs are only supported if secure surfaces are enabled. |
| + content::RendererPreferences& renderer_preferences = |
| + render_view_->renderer_preferences(); |
| + return renderer_prefences.use_video_overlay_for_embedded_encrypted_video; |
| +#else |
| + return false; |
| +#endif // defined(OS_ANDROID) |
| +} |
| + |
| media::CdmFactory* RenderFrameImpl::GetCdmFactory() { |
| #if defined(ENABLE_BROWSER_CDMS) |
| if (!cdm_manager_) |