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

Unified Diff: media/base/android/browser_cdm_factory_android.cc

Issue 930413003: MediaDrm: Only apply Widevine security levels to the Widevine key system. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 10 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: media/base/android/browser_cdm_factory_android.cc
diff --git a/media/base/android/browser_cdm_factory_android.cc b/media/base/android/browser_cdm_factory_android.cc
index 5c7f36563ed7455d839acb2a63616867605c0de0..e116863466debcb7c45352ac3d5c5c0b708b9610 100644
--- a/media/base/android/browser_cdm_factory_android.cc
+++ b/media/base/android/browser_cdm_factory_android.cc
@@ -9,6 +9,7 @@
#include "base/memory/scoped_ptr.h"
#include "media/base/android/media_drm_bridge.h"
#include "media/base/media_switches.h"
+#include "third_party/widevine/cdm/widevine_cdm_common.h"
namespace media {
@@ -33,15 +34,26 @@ scoped_ptr<BrowserCdm> BrowserCdmFactoryAndroid::CreateBrowserCdm(
}
// TODO(xhwang/ddorwin): Pass the security level from key system.
- MediaDrmBridge::SecurityLevel security_level =
- MediaDrmBridge::SECURITY_LEVEL_3;
- if (base::CommandLine::ForCurrentProcess()->HasSwitch(
- switches::kMediaDrmEnableNonCompositing)) {
- security_level = MediaDrmBridge::SECURITY_LEVEL_1;
- }
- if (!cdm->SetSecurityLevel(security_level)) {
- DVLOG(1) << "failed to set security level " << security_level;
- return scoped_ptr<BrowserCdm>();
+ // http://crbug.com/459400
+ if (key_system == kWidevineKeySystem) {
+ MediaDrmBridge::SecurityLevel security_level =
+ MediaDrmBridge::SECURITY_LEVEL_3;
+ if (base::CommandLine::ForCurrentProcess()->HasSwitch(
+ switches::kMediaDrmEnableNonCompositing)) {
qinmin 2015/02/18 06:45:40 4 space?
ddorwin 2015/02/18 18:11:50 Clang formatted.
+ security_level = MediaDrmBridge::SECURITY_LEVEL_1;
+ }
+ if (!cdm->SetSecurityLevel(security_level)) {
+ DVLOG(1) << "failed to set security level " << security_level;
+ return scoped_ptr<BrowserCdm>();
+ }
+ } else {
+ // Assume other key systems do not support full compositing.
+ if (!base::CommandLine::ForCurrentProcess()->HasSwitch(
+ switches::kMediaDrmEnableNonCompositing)) {
ddorwin 2015/02/18 02:19:25 I believe all platforms where this path is relevan
qinmin 2015/02/18 06:45:40 ditto?
ddorwin 2015/02/18 18:11:50 Clang formatted.
+ NOTREACHED() << key_system << " may require "
+ << switches::kMediaDrmEnableNonCompositing;
+ return scoped_ptr<BrowserCdm>();
+ }
}
return cdm.Pass();

Powered by Google App Engine
This is Rietveld 408576698