Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(360)

Unified Diff: content/browser/media/cdm/browser_cdm_manager.cc

Issue 1131753003: Plumb |use_secure_codecs| through to BrowserCdmFactoryAndroid. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Update unittest. Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/media/cdm/browser_cdm_manager.cc
diff --git a/content/browser/media/cdm/browser_cdm_manager.cc b/content/browser/media/cdm/browser_cdm_manager.cc
index 0bd8a78e68d3a8c6a1d57b9104e7afa973426cd7..1c6c77aad872c2821c5845839be83e61955d531b 100644
--- a/content/browser/media/cdm/browser_cdm_manager.cc
+++ b/content/browser/media/cdm/browser_cdm_manager.cc
@@ -10,7 +10,6 @@
#include "base/lazy_instance.h"
#include "base/memory/scoped_ptr.h"
#include "base/task_runner.h"
-#include "content/common/media/cdm_messages.h"
#include "content/public/browser/browser_context.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/content_browser_client.h"
@@ -289,19 +288,20 @@ void BrowserCdmManager::OnSessionExpirationUpdate(
new_expiry_time));
}
-void BrowserCdmManager::OnInitializeCdm(int render_frame_id,
- int cdm_id,
- uint32_t promise_id,
- const std::string& key_system,
- const GURL& security_origin) {
- if (key_system.size() > media::limits::kMaxKeySystemLength) {
- NOTREACHED() << "Invalid key system: " << key_system;
+void BrowserCdmManager::OnInitializeCdm(
+ int render_frame_id,
+ int cdm_id,
+ uint32_t promise_id,
+ const CdmHostMsg_InitializeCdm_Params& params) {
+ if (params.key_system.size() > media::limits::kMaxKeySystemLength) {
+ NOTREACHED() << "Invalid key system: " << params.key_system;
RejectPromise(render_frame_id, cdm_id, promise_id,
MediaKeys::INVALID_ACCESS_ERROR, 0, "Invalid key system.");
return;
}
- AddCdm(render_frame_id, cdm_id, promise_id, key_system, security_origin);
+ AddCdm(render_frame_id, cdm_id, promise_id, params.key_system,
+ params.security_origin, params.use_hw_secure_codecs);
}
void BrowserCdmManager::OnSetServerCertificate(
@@ -440,29 +440,17 @@ void BrowserCdmManager::AddCdm(int render_frame_id,
int cdm_id,
uint32_t promise_id,
const std::string& key_system,
- const GURL& security_origin) {
+ const GURL& security_origin,
+ bool use_hw_secure_codecs) {
DCHECK(task_runner_->RunsTasksOnCurrentThread());
DCHECK(!GetCdm(render_frame_id, cdm_id));
- bool use_secure_surface = false;
scoped_ptr<SimplePromise> promise(
new SimplePromise(this, render_frame_id, cdm_id, promise_id));
-#if defined(OS_ANDROID)
- // TODO(sandersd): Pass the security level from key system instead.
- // http://crbug.com/467779
- RenderFrameHost* rfh =
- RenderFrameHost::FromID(render_process_id_, render_frame_id);
- WebContents* web_contents = WebContents::FromRenderFrameHost(rfh);
- if (web_contents) {
- content::RendererPreferences* prefs =
- web_contents->GetMutableRendererPrefs();
- use_secure_surface = prefs->use_video_overlay_for_embedded_encrypted_video;
- }
-#endif
-
scoped_ptr<BrowserCdm> cdm(media::CreateBrowserCdm(
- key_system, use_secure_surface, BROWSER_CDM_MANAGER_CB(OnSessionMessage),
+ key_system, use_hw_secure_codecs,
+ BROWSER_CDM_MANAGER_CB(OnSessionMessage),
BROWSER_CDM_MANAGER_CB(OnSessionClosed),
BROWSER_CDM_MANAGER_CB(OnLegacySessionError),
BROWSER_CDM_MANAGER_CB(OnSessionKeysChange),

Powered by Google App Engine
This is Rietveld 408576698