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

Unified Diff: chrome/renderer/media/chrome_key_systems.cc

Issue 253593002: Componentize EncryptedMediaMessageFilter and rename it CdmMessageFilter. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Renamed the component to 'cdm' and addresed the reviewers' comments Created 6 years, 8 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: chrome/renderer/media/chrome_key_systems.cc
diff --git a/chrome/renderer/media/chrome_key_systems.cc b/chrome/renderer/media/chrome_key_systems.cc
index 71937fd87c2f95bbd5622b15a47e60dcc7b3d57b..1b72d7197f4ddf008d6e643a9658255b3d1e81b1 100644
--- a/chrome/renderer/media/chrome_key_systems.cc
+++ b/chrome/renderer/media/chrome_key_systems.cc
@@ -24,7 +24,7 @@
#endif
#if defined(OS_ANDROID)
-#include "chrome/common/encrypted_media_messages_android.h"
+#include "components/cdm/renderer/widevine_key_systems.h"
#endif
using content::KeySystemInfo;
@@ -99,26 +99,8 @@ static void AddExternalClearKey(
info.key_system = kExternalClearKeyCrashKeySystem;
concrete_key_systems->push_back(info);
}
-#endif // defined(ENABLE_PEPPER_CDMS)
-
#if defined(WIDEVINE_CDM_AVAILABLE)
-enum WidevineCdmType {
- WIDEVINE,
- WIDEVINE_HR,
-#if defined(OS_ANDROID)
- WIDEVINE_HR_NON_COMPOSITING,
-#endif
-};
-
-#if !defined(OS_ANDROID)
-static bool IsWidevineHrSupported() {
- // TODO(jrummell): Need to call CheckPlatformState() but it is
- // asynchronous, and needs to be done in the browser.
- return false;
-}
-#endif
-
// Return |name|'s parent key system.
static std::string GetDirectParentName(std::string name) {
int last_period = name.find_last_of('.');
@@ -127,41 +109,23 @@ static std::string GetDirectParentName(std::string name) {
}
static void AddWidevineWithCodecs(
- WidevineCdmType widevine_cdm_type,
SupportedCodecs supported_codecs,
std::vector<KeySystemInfo>* concrete_key_systems) {
KeySystemInfo info(kWidevineKeySystem);
- switch (widevine_cdm_type) {
- case WIDEVINE:
- // For standard Widevine, add parent name.
- info.parent_key_system = GetDirectParentName(kWidevineKeySystem);
- break;
- case WIDEVINE_HR:
- info.key_system.append(".hr");
- break;
-#if defined(OS_ANDROID)
- case WIDEVINE_HR_NON_COMPOSITING:
- info.key_system.append(".hrnoncompositing");
- break;
-#endif
- default:
- NOTREACHED();
- }
+ // For standard Widevine, add parent name.
+ info.parent_key_system = GetDirectParentName(kWidevineKeySystem);
// TODO(xhwang): A container or an initDataType may be supported even though
// there are no codecs supported in that container. Fix this when we support
// initDataType.
info.supported_codecs = supported_codecs;
-#if defined(ENABLE_PEPPER_CDMS)
info.pepper_type = kWidevineCdmPluginMimeType;
-#endif // defined(ENABLE_PEPPER_CDMS)
concrete_key_systems->push_back(info);
}
-#if defined(ENABLE_PEPPER_CDMS)
// When the adapter is registered, a name-value pair is inserted in
// additional_param_* that lists the supported codecs. The name is "codecs" and
// the value is a comma-delimited list of codecs.
@@ -231,40 +195,9 @@ static void AddPepperBasedWidevine(
}
AddWidevineWithCodecs(WIDEVINE, supported_codecs, concrete_key_systems);
-
- if (IsWidevineHrSupported())
- AddWidevineWithCodecs(WIDEVINE_HR, supported_codecs, concrete_key_systems);
-}
-#elif defined(OS_ANDROID)
-static void AddAndroidWidevine(
- std::vector<KeySystemInfo>* concrete_key_systems) {
- SupportedKeySystemRequest request;
- SupportedKeySystemResponse response;
-
- request.key_system = kWidevineKeySystem;
- request.codecs = content::EME_CODEC_WEBM_ALL | content::EME_CODEC_MP4_ALL;
- content::RenderThread::Get()->Send(
- new ChromeViewHostMsg_GetSupportedKeySystems(request, &response));
- DCHECK(response.compositing_codecs & content::EME_CODEC_ALL)
- << "unrecognized codec";
- DCHECK(response.non_compositing_codecs & content::EME_CODEC_ALL)
- << "unrecognized codec";
- if (response.compositing_codecs != content::EME_CODEC_NONE) {
- AddWidevineWithCodecs(
- WIDEVINE,
- static_cast<SupportedCodecs>(response.compositing_codecs),
- concrete_key_systems);
- }
-
- if (response.non_compositing_codecs != content::EME_CODEC_NONE) {
- AddWidevineWithCodecs(
- WIDEVINE_HR_NON_COMPOSITING,
- static_cast<SupportedCodecs>(response.non_compositing_codecs),
- concrete_key_systems);
- }
}
-#endif // defined(ENABLE_PEPPER_CDMS)
#endif // defined(WIDEVINE_CDM_AVAILABLE)
+#endif // defined(ENABLE_PEPPER_CDMS)
void AddChromeKeySystems(std::vector<KeySystemInfo>* key_systems_info) {
#if defined(ENABLE_PEPPER_CDMS)
ddorwin 2014/05/02 17:58:55 I wonder if we should move the ifdef logic to the
ycheo (away) 2014/05/05 10:15:08 Done.
@@ -275,7 +208,7 @@ void AddChromeKeySystems(std::vector<KeySystemInfo>* key_systems_info) {
#if defined(ENABLE_PEPPER_CDMS)
AddPepperBasedWidevine(key_systems_info);
#elif defined(OS_ANDROID)
- AddAndroidWidevine(key_systems_info);
+ cdm::AddAndroidWidevine(key_systems_info);
#endif
#endif
}
« no previous file with comments | « chrome/renderer/DEPS ('k') | components/cdm.gypi » ('j') | components/cdm/browser/DEPS » ('J')

Powered by Google App Engine
This is Rietveld 408576698