summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoradeshkp <adeshkp@users.noreply.github.com>2019-11-09 21:42:45 +0530
committeradeshkp <adeshkp@users.noreply.github.com>2019-11-10 06:01:40 -0500
commitfa82695eec9f1252f37477fd2da144ef898990e5 (patch)
tree22df72bc308a67dffec02c0aa94ff2969e78e209
parentbed03f0416e59d0c7d3fb911a344e228c3da87f0 (diff)
downloaduxp-fa82695eec9f1252f37477fd2da144ef898990e5.tar.gz
Issue mcp-graveyard/UXP#1259 - Part 1. Remove Adobe Primetime support from tree
-rw-r--r--dom/media/VideoUtils.cpp1
-rw-r--r--dom/media/VideoUtils.h1
-rw-r--r--dom/media/eme/EMEUtils.cpp11
-rw-r--r--dom/media/eme/EMEUtils.h4
-rw-r--r--dom/media/eme/MediaKeySystemAccess.cpp23
-rw-r--r--dom/media/eme/MediaKeySystemAccessManager.cpp5
-rw-r--r--dom/media/gmp/GMPParent.cpp10
-rw-r--r--dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp2
-rw-r--r--media/psshparser/PsshParser.cpp10
9 files changed, 2 insertions, 65 deletions
diff --git a/dom/media/VideoUtils.cpp b/dom/media/VideoUtils.cpp
index c06ba9070b..56033c2fae 100644
--- a/dom/media/VideoUtils.cpp
+++ b/dom/media/VideoUtils.cpp
@@ -31,7 +31,6 @@ namespace mozilla {
NS_NAMED_LITERAL_CSTRING(kEMEKeySystemClearkey, "org.w3.clearkey");
NS_NAMED_LITERAL_CSTRING(kEMEKeySystemWidevine, "com.widevine.alpha");
-NS_NAMED_LITERAL_CSTRING(kEMEKeySystemPrimetime, "com.adobe.primetime");
using layers::PlanarYCbCrImage;
diff --git a/dom/media/VideoUtils.h b/dom/media/VideoUtils.h
index aaf0e99037..eee6561fde 100644
--- a/dom/media/VideoUtils.h
+++ b/dom/media/VideoUtils.h
@@ -47,7 +47,6 @@ class MediaContentType;
// EME Key System String.
extern const nsLiteralCString kEMEKeySystemClearkey;
extern const nsLiteralCString kEMEKeySystemWidevine;
-extern const nsLiteralCString kEMEKeySystemPrimetime;
/**
* ReentrantMonitorConditionallyEnter
diff --git a/dom/media/eme/EMEUtils.cpp b/dom/media/eme/EMEUtils.cpp
index c248b3a24c..11eb0026ef 100644
--- a/dom/media/eme/EMEUtils.cpp
+++ b/dom/media/eme/EMEUtils.cpp
@@ -54,12 +54,6 @@ IsClearkeyKeySystem(const nsAString& aKeySystem)
}
bool
-IsPrimetimeKeySystem(const nsAString& aKeySystem)
-{
- return !CompareUTF8toUTF16(kEMEKeySystemPrimetime, aKeySystem);
-}
-
-bool
IsWidevineKeySystem(const nsAString& aKeySystem)
{
return !CompareUTF8toUTF16(kEMEKeySystemWidevine, aKeySystem);
@@ -68,9 +62,6 @@ IsWidevineKeySystem(const nsAString& aKeySystem)
nsString
KeySystemToGMPName(const nsAString& aKeySystem)
{
- if (IsPrimetimeKeySystem(aKeySystem)) {
- return NS_LITERAL_STRING("gmp-eme-adobe");
- }
if (IsClearkeyKeySystem(aKeySystem)) {
return NS_LITERAL_STRING("gmp-clearkey");
}
@@ -88,8 +79,6 @@ ToCDMTypeTelemetryEnum(const nsString& aKeySystem)
return CDMType::eWidevine;
} else if (IsClearkeyKeySystem(aKeySystem)) {
return CDMType::eClearKey;
- } else if (IsPrimetimeKeySystem(aKeySystem)) {
- return CDMType::ePrimetime;
}
return CDMType::eUnknown;
}
diff --git a/dom/media/eme/EMEUtils.h b/dom/media/eme/EMEUtils.h
index 1794f8462b..4a2e5da186 100644
--- a/dom/media/eme/EMEUtils.h
+++ b/dom/media/eme/EMEUtils.h
@@ -87,14 +87,10 @@ bool
IsClearkeyKeySystem(const nsAString& aKeySystem);
bool
-IsPrimetimeKeySystem(const nsAString& aKeySystem);
-
-bool
IsWidevineKeySystem(const nsAString& aKeySystem);
enum CDMType {
eClearKey = 0,
- ePrimetime = 1,
eWidevine = 2,
eUnknown = 3
};
diff --git a/dom/media/eme/MediaKeySystemAccess.cpp b/dom/media/eme/MediaKeySystemAccess.cpp
index 4cff464e70..4a5a7a30cf 100644
--- a/dom/media/eme/MediaKeySystemAccess.cpp
+++ b/dom/media/eme/MediaKeySystemAccess.cpp
@@ -134,16 +134,6 @@ MediaKeySystemAccess::GetKeySystemStatus(const nsAString& aKeySystem,
return EnsureCDMInstalled(aKeySystem, aOutMessage);
}
- if (Preferences::GetBool("media.gmp-eme-adobe.visible", false)) {
- if (IsPrimetimeKeySystem(aKeySystem)) {
- if (!Preferences::GetBool("media.gmp-eme-adobe.enabled", false)) {
- aOutMessage = NS_LITERAL_CSTRING("Adobe EME disabled");
- return MediaKeySystemStatus::Cdm_disabled;
- }
- return EnsureCDMInstalled(aKeySystem, aOutMessage);
- }
- }
-
if (IsWidevineKeySystem(aKeySystem)) {
if (Preferences::GetBool("media.gmp-widevinecdm.visible", false)) {
if (!Preferences::GetBool("media.gmp-widevinecdm.enabled", false)) {
@@ -376,19 +366,6 @@ GetSupportedKeySystems()
keySystemConfigs.AppendElement(Move(widevine));
}
}
- {
- if (HavePluginForKeySystem(kEMEKeySystemPrimetime)) {
- KeySystemConfig primetime;
- primetime.mKeySystem = NS_ConvertUTF8toUTF16(kEMEKeySystemPrimetime);
- primetime.mInitDataTypes.AppendElement(NS_LITERAL_STRING("cenc"));
- primetime.mPersistentState = KeySystemFeatureSupport::Required;
- primetime.mDistinctiveIdentifier = KeySystemFeatureSupport::Required;
- primetime.mSessionTypes.AppendElement(MediaKeySessionType::Temporary);
- primetime.mMP4.SetCanDecryptAndDecode(EME_CODEC_AAC);
- primetime.mMP4.SetCanDecryptAndDecode(EME_CODEC_H264);
- keySystemConfigs.AppendElement(Move(primetime));
- }
- }
return keySystemConfigs;
}
diff --git a/dom/media/eme/MediaKeySystemAccessManager.cpp b/dom/media/eme/MediaKeySystemAccessManager.cpp
index 8fefc62ec7..ed31059e22 100644
--- a/dom/media/eme/MediaKeySystemAccessManager.cpp
+++ b/dom/media/eme/MediaKeySystemAccessManager.cpp
@@ -95,8 +95,7 @@ MediaKeySystemAccessManager::Request(DetailedPromise* aPromise,
// Ensure keysystem is supported.
if (!IsWidevineKeySystem(aKeySystem) &&
- !IsClearkeyKeySystem(aKeySystem) &&
- !IsPrimetimeKeySystem(aKeySystem)) {
+ !IsClearkeyKeySystem(aKeySystem)) {
// Not to inform user, because nothing to do if the keySystem is not
// supported.
aPromise->MaybeReject(NS_ERROR_DOM_NOT_SUPPORTED_ERR,
@@ -132,7 +131,7 @@ MediaKeySystemAccessManager::Request(DetailedPromise* aPromise,
LogToBrowserConsole(NS_ConvertUTF8toUTF16(msg));
if (status == MediaKeySystemStatus::Cdm_not_installed &&
- (IsPrimetimeKeySystem(aKeySystem) || IsWidevineKeySystem(aKeySystem))) {
+ IsWidevineKeySystem(aKeySystem)) {
// These are cases which could be resolved by downloading a new(er) CDM.
// When we send the status to chrome, chrome's GMPProvider will attempt to
// download or update the CDM. In AwaitInstall() we add listeners to wait
diff --git a/dom/media/gmp/GMPParent.cpp b/dom/media/gmp/GMPParent.cpp
index 418f147361..234ed5c05a 100644
--- a/dom/media/gmp/GMPParent.cpp
+++ b/dom/media/gmp/GMPParent.cpp
@@ -726,16 +726,6 @@ GMPParent::ReadGMPInfoFile(nsIFile* aFile)
if (cap.mAPIName.EqualsLiteral(GMP_API_DECRYPTOR)) {
mCanDecrypt = true;
-
-#ifdef XP_WIN
- // Adobe GMP doesn't work without SSE2. Check the tags to see if
- // the decryptor is for the Adobe GMP, and refuse to load it if
- // SSE2 isn't supported.
- if (cap.mAPITags.Contains(kEMEKeySystemPrimetime) &&
- !mozilla::supports_sse2()) {
- return GenericPromise::CreateAndReject(NS_ERROR_FAILURE, __func__);
- }
-#endif // XP_WIN
}
mCapabilities.AppendElement(Move(cap));
diff --git a/dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp b/dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp
index cc53d2c936..50a5097ac8 100644
--- a/dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp
+++ b/dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp
@@ -109,7 +109,6 @@ GMPDecoderModule::PreferredGMP(const nsACString& aMimeType)
if (aMimeType.EqualsLiteral("audio/mp4a-latm")) {
switch (MediaPrefs::GMPAACPreferred()) {
case 1: rv.emplace(kEMEKeySystemClearkey); break;
- case 2: rv.emplace(kEMEKeySystemPrimetime); break;
default: break;
}
}
@@ -117,7 +116,6 @@ GMPDecoderModule::PreferredGMP(const nsACString& aMimeType)
if (MP4Decoder::IsH264(aMimeType)) {
switch (MediaPrefs::GMPH264Preferred()) {
case 1: rv.emplace(kEMEKeySystemClearkey); break;
- case 2: rv.emplace(kEMEKeySystemPrimetime); break;
default: break;
}
}
diff --git a/media/psshparser/PsshParser.cpp b/media/psshparser/PsshParser.cpp
index e5d0acd26e..3f76a9b4a4 100644
--- a/media/psshparser/PsshParser.cpp
+++ b/media/psshparser/PsshParser.cpp
@@ -108,11 +108,6 @@ const uint8_t kSystemID[] = {
0xac, 0xe3, 0x3c, 0x1e, 0x52, 0xe2, 0xfb, 0x4b
};
-const uint8_t kPrimetimeID[] = {
- 0xf2, 0x39, 0xe7, 0x69, 0xef, 0xa3, 0x48, 0x50,
- 0x9c, 0x16, 0xa9, 0x03, 0xc6, 0x93, 0x2e, 0xfb
-};
-
bool
ParseCENCInitData(const uint8_t* aInitData,
uint32_t aInitDataSize,
@@ -163,11 +158,6 @@ ParseCENCInitData(const uint8_t* aInitData,
// Insufficient bytes to read SystemID.
return false;
}
- if (!memcmp(kPrimetimeID, sid, sizeof(kSystemID))) {
- // Allow legacy Primetime key system PSSH boxes, which
- // don't conform to common encryption format.
- return true;
- }
if (memcmp(kSystemID, sid, sizeof(kSystemID))) {
// Ignore pssh boxes with wrong system ID.