diff options
author | New Tobin Paradigm <email@mattatobin.com> | 2019-11-10 15:35:44 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-11-10 15:35:44 -0500 |
commit | b00601953bade944cd6df9cde6fcdd1f10d76feb (patch) | |
tree | 71531773f24b5e2ed5f47d8958cfa7268a169bcf | |
parent | ccb7e2c646eebbd4742b072f6f02195659fb0d9d (diff) | |
parent | c43b770a0399b5e03a6f6e4d2292e0408b186433 (diff) | |
download | UXP-b00601953bade944cd6df9cde6fcdd1f10d76feb.tar UXP-b00601953bade944cd6df9cde6fcdd1f10d76feb.tar.gz UXP-b00601953bade944cd6df9cde6fcdd1f10d76feb.tar.lz UXP-b00601953bade944cd6df9cde6fcdd1f10d76feb.tar.xz UXP-b00601953bade944cd6df9cde6fcdd1f10d76feb.zip |
Merge pull request #1277 from adeshkp/remove-adobe-primetime
Remove Adobe Primetime support
21 files changed, 8 insertions, 224 deletions
diff --git a/application/basilisk/app/profile/basilisk.js b/application/basilisk/app/profile/basilisk.js index a773bc60e..a3ecce64d 100644 --- a/application/basilisk/app/profile/basilisk.js +++ b/application/basilisk/app/profile/basilisk.js @@ -170,7 +170,7 @@ pref("lightweightThemes.update.enabled", true); pref("lightweightThemes.getMoreURL", "http://@AM_DOMAIN@/personas/"); pref("lightweightThemes.recommendedThemes", "[{\"id\":\"recommended-1\",\"homepageURL\":\"https://addons.mozilla.org/firefox/addon/a-web-browser-renaissance/\",\"headerURL\":\"resource:///chrome/browser/content/browser/defaultthemes/1.header.jpg\",\"footerURL\":\"resource:///chrome/browser/content/browser/defaultthemes/1.footer.jpg\",\"textcolor\":\"#000000\",\"accentcolor\":\"#f2d9b1\",\"iconURL\":\"resource:///chrome/browser/content/browser/defaultthemes/1.icon.jpg\",\"previewURL\":\"resource:///chrome/browser/content/browser/defaultthemes/1.preview.jpg\",\"author\":\"Sean.Martell\",\"version\":\"0\"},{\"id\":\"recommended-2\",\"homepageURL\":\"https://addons.mozilla.org/firefox/addon/space-fantasy/\",\"headerURL\":\"resource:///chrome/browser/content/browser/defaultthemes/2.header.jpg\",\"footerURL\":\"resource:///chrome/browser/content/browser/defaultthemes/2.footer.jpg\",\"textcolor\":\"#ffffff\",\"accentcolor\":\"#d9d9d9\",\"iconURL\":\"resource:///chrome/browser/content/browser/defaultthemes/2.icon.jpg\",\"previewURL\":\"resource:///chrome/browser/content/browser/defaultthemes/2.preview.jpg\",\"author\":\"fx5800p\",\"version\":\"1.0\"},{\"id\":\"recommended-3\",\"homepageURL\":\"https://addons.mozilla.org/firefox/addon/linen-light/\",\"headerURL\":\"resource:///chrome/browser/content/browser/defaultthemes/3.header.png\",\"footerURL\":\"resource:///chrome/browser/content/browser/defaultthemes/3.footer.png\",\"accentcolor\":\"#ada8a8\",\"iconURL\":\"resource:///chrome/browser/content/browser/defaultthemes/3.icon.png\",\"previewURL\":\"resource:///chrome/browser/content/browser/defaultthemes/3.preview.png\",\"author\":\"DVemer\",\"version\":\"1.0\"},{\"id\":\"recommended-4\",\"homepageURL\":\"https://addons.mozilla.org/firefox/addon/pastel-gradient/\",\"headerURL\":\"resource:///chrome/browser/content/browser/defaultthemes/4.header.png\",\"footerURL\":\"resource:///chrome/browser/content/browser/defaultthemes/4.footer.png\",\"textcolor\":\"#000000\",\"accentcolor\":\"#000000\",\"iconURL\":\"resource:///chrome/browser/content/browser/defaultthemes/4.icon.png\",\"previewURL\":\"resource:///chrome/browser/content/browser/defaultthemes/4.preview.png\",\"author\":\"darrinhenein\",\"version\":\"1.0\"},{\"id\":\"recommended-5\",\"homepageURL\":\"https://addons.mozilla.org/firefox/addon/carbon-light/\",\"headerURL\":\"resource:///chrome/browser/content/browser/defaultthemes/5.header.png\",\"footerURL\":\"resource:///chrome/browser/content/browser/defaultthemes/5.footer.png\",\"textcolor\":\"#3b3b3b\",\"accentcolor\":\"#2e2e2e\",\"iconURL\":\"resource:///chrome/browser/content/browser/defaultthemes/5.icon.jpg\",\"previewURL\":\"resource:///chrome/browser/content/browser/defaultthemes/5.preview.jpg\",\"author\":\"Jaxivo\",\"version\":\"1.0\"}]"); -#if defined(MOZ_ADOBE_EME) || defined(MOZ_WIDEVINE_EME) +#if defined(MOZ_WIDEVINE_EME) pref("browser.eme.ui.enabled", true); #else pref("browser.eme.ui.enabled", false); @@ -1189,16 +1189,6 @@ pref("media.gmp.trial-create.enabled", true); // and script requests EME. If *.visible is false, we won't show the UI // to enable the CDM if its disabled; it's as if the keysystem is completely // unsupported. - -#ifdef MOZ_ADOBE_EME -pref("media.gmp-eme-adobe.visible", true); -// When Adobe EME is enabled in the build system, we don't actually enable -// the plugin by default, so that it doesn't download and install by default. -// When Adobe EME is first used, Firefox will prompt the user to enable it, -// and then download the CDM. -pref("media.gmp-eme-adobe.enabled", false); -#endif - #ifdef MOZ_WIDEVINE_EME pref("media.gmp-widevinecdm.visible", true); pref("media.gmp-widevinecdm.enabled", true); diff --git a/application/basilisk/base/content/browser-media.js b/application/basilisk/base/content/browser-media.js index bd5c5b227..775fc4de5 100644 --- a/application/basilisk/base/content/browser-media.js +++ b/application/basilisk/base/content/browser-media.js @@ -19,11 +19,7 @@ var gEMEHandler = { ensureEMEEnabled: function(browser, keySystem) { Services.prefs.setBoolPref("media.eme.enabled", true); if (keySystem) { - if (keySystem.startsWith("com.adobe") && - Services.prefs.getPrefType("media.gmp-eme-adobe.enabled") && - !Services.prefs.getBoolPref("media.gmp-eme-adobe.enabled")) { - Services.prefs.setBoolPref("media.gmp-eme-adobe.enabled", true); - } else if (keySystem == "com.widevine.alpha" && + if (keySystem == "com.widevine.alpha" && Services.prefs.getPrefType("media.gmp-widevinecdm.enabled") && !Services.prefs.getBoolPref("media.gmp-widevinecdm.enabled")) { Services.prefs.setBoolPref("media.gmp-widevinecdm.enabled", true); @@ -35,10 +31,6 @@ var gEMEHandler = { if (!keySystem) { return false; } - if (keySystem.startsWith("com.adobe") && - Services.prefs.getPrefType("media.gmp-eme-adobe.visible")) { - return Services.prefs.getBoolPref("media.gmp-eme-adobe.visible"); - } if (keySystem == "com.widevine.alpha" && Services.prefs.getPrefType("media.gmp-widevinecdm.visible")) { return Services.prefs.getBoolPref("media.gmp-widevinecdm.visible"); @@ -201,14 +193,6 @@ const TELEMETRY_DDSTAT_SOLVED = 4; let gDecoderDoctorHandler = { getLabelForNotificationBox(type) { - if (type == "adobe-cdm-not-found" && - AppConstants.platform == "win") { - return gNavigatorBundle.getString("decoder.noCodecs.message"); - } - if (type == "adobe-cdm-not-activated" && - AppConstants.platform == "win") { - return gNavigatorBundle.getString("decoder.noCodecs.message"); - } if (type == "platform-decoder-not-found") { if (AppConstants.platform == "win") { return gNavigatorBundle.getString("decoder.noHWAcceleration.message"); diff --git a/dom/locales/en-US/chrome/plugins.properties b/dom/locales/en-US/chrome/plugins.properties index fe03be59e..6fa829bf1 100644 --- a/dom/locales/en-US/chrome/plugins.properties +++ b/dom/locales/en-US/chrome/plugins.properties @@ -28,7 +28,6 @@ gmp_privacy_info=Privacy Information openH264_name=OpenH264 Video Codec provided by Cisco Systems, Inc. openH264_description2=This plugin is automatically installed by Mozilla to comply with the WebRTC specification and to enable WebRTC calls with devices that require the H.264 video codec. Visit http://www.openh264.org/ to view the codec source code and learn more about the implementation. -eme-adobe_name=Primetime Content Decryption Module provided by Adobe Systems, Incorporated eme-adobe_description=Play back protected web video. widevine_description=Widevine Content Decryption Module provided by Google Inc. diff --git a/dom/media/VideoUtils.cpp b/dom/media/VideoUtils.cpp index c06ba9070..56033c2fa 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 aaf0e9903..eee6561fd 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 c248b3a24..11eb0026e 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 1794f8462..4a2e5da18 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 4cff464e7..4a5a7a30c 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 8fefc62ec..ed31059e2 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 418f14736..234ed5c05 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/gmp/GMPServiceParent.cpp b/dom/media/gmp/GMPServiceParent.cpp index 2b4831cd6..fcf9fa920 100644 --- a/dom/media/gmp/GMPServiceParent.cpp +++ b/dom/media/gmp/GMPServiceParent.cpp @@ -203,29 +203,6 @@ MoveAndOverwrite(nsIFile* aOldParentDir, } } -static void -MigratePreGecko42StorageDir(nsIFile* aOldStorageDir, - nsIFile* aNewStorageDir) -{ - MoveAndOverwrite(aOldStorageDir, aNewStorageDir, NS_LITERAL_STRING("id")); - MoveAndOverwrite(aOldStorageDir, aNewStorageDir, NS_LITERAL_STRING("storage")); -} - -static void -MigratePreGecko45StorageDir(nsIFile* aStorageDirBase) -{ - nsCOMPtr<nsIFile> adobeStorageDir(CloneAndAppend(aStorageDirBase, NS_LITERAL_STRING("gmp-eme-adobe"))); - if (NS_WARN_IF(!adobeStorageDir)) { - return; - } - - // The base storage dir in pre-45 contained "id" and "storage" subdirs. - // We assume all storage in the base storage dir that aren't known to GMP - // storage are records for the Adobe GMP. - MoveAndOverwrite(aStorageDirBase, adobeStorageDir, NS_LITERAL_STRING("id")); - MoveAndOverwrite(aStorageDirBase, adobeStorageDir, NS_LITERAL_STRING("storage")); -} - static nsresult GMPPlatformString(nsAString& aOutPlatform) { @@ -308,19 +285,6 @@ GeckoMediaPluginServiceParent::InitStorage() return rv; } - // Prior to 42, GMP storage was stored in $profileDir/gmp/. After 42, it's - // stored in $profileDir/gmp/$platform/. So we must migrate any old records - // from the old location to the new location, for forwards compatibility. - MigratePreGecko42StorageDir(gmpDirWithoutPlatform, mStorageBaseDir); - - // Prior to 45, GMP storage was not separated by plugin. In 45 and after, - // it's stored in $profile/gmp/$platform/$gmpName. So we must migrate old - // records from the old location to the new location, for forwards - // compatibility. We assume all directories in the base storage dir that - // aren't known to GMP storage are records for the Adobe GMP, since it - // was first. - MigratePreGecko45StorageDir(mStorageBaseDir); - return GeckoMediaPluginService::Init(); } diff --git a/dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp b/dom/media/platforms/agnostic/gmp/GMPDecoderModule.cpp index cc53d2c93..50a5097ac 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/dom/media/test/external/external_media_harness/testcase.py b/dom/media/test/external/external_media_harness/testcase.py index 56350ccd9..35a944484 100644 --- a/dom/media/test/external/external_media_harness/testcase.py +++ b/dom/media/test/external/external_media_harness/testcase.py @@ -200,19 +200,6 @@ class NetworkBandwidthTestsMixin(object): self.run_videos(timeout=120) -reset_adobe_gmp_script = """ -navigator.requestMediaKeySystemAccess('com.adobe.primetime', -[{initDataTypes: ['cenc']}]).then( - function(access) { - marionetteScriptFinished('success'); - }, - function(ex) { - marionetteScriptFinished(ex); - } -); -""" - - reset_widevine_gmp_script = """ navigator.requestMediaKeySystemAccess('com.widevine.alpha', [{initDataTypes: ['cenc']}]).then( @@ -256,21 +243,12 @@ class EMESetupMixin(object): def reset_GMP_version(self): if EMESetupMixin.version_needs_reset: with self.marionette.using_context(Marionette.CONTEXT_CHROME): - if self.marionette.get_pref('media.gmp-eme-adobe.version'): - self.marionette.reset_pref('media.gmp-eme-adobe.version') if self.marionette.get_pref('media.gmp-widevinecdm.version'): self.marionette.reset_pref('media.gmp-widevinecdm.version') with self.marionette.using_context(Marionette.CONTEXT_CONTENT): - adobe_result = self.marionette.execute_async_script( - reset_adobe_gmp_script, - script_timeout=60000) widevine_result = self.marionette.execute_async_script( reset_widevine_gmp_script, script_timeout=60000) - if not adobe_result == 'success': - raise VideoException( - 'ERROR: Resetting Adobe GMP failed {}' - .format(adobe_result)) if not widevine_result == 'success': raise VideoException( 'ERROR: Resetting Widevine GMP failed {}' @@ -352,10 +330,6 @@ class EMESetupMixin(object): self.check_and_log_boolean_pref( 'media.mediasource.mp4.enabled', True), self.check_and_log_boolean_pref( - 'media.gmp-eme-adobe.enabled', True), - self.check_and_log_integer_pref( - 'media.gmp-eme-adobe.version', 1), - self.check_and_log_boolean_pref( 'media.gmp-widevinecdm.enabled', True), self.chceck_and_log_version_string_pref( 'media.gmp-widevinecdm.version', '1.0.0.0') diff --git a/media/psshparser/PsshParser.cpp b/media/psshparser/PsshParser.cpp index e5d0acd26..3f76a9b4a 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. diff --git a/media/psshparser/gtest/TestPsshParser.cpp b/media/psshparser/gtest/TestPsshParser.cpp index 972cc3e7d..5372c7598 100644 --- a/media/psshparser/gtest/TestPsshParser.cpp +++ b/media/psshparser/gtest/TestPsshParser.cpp @@ -113,15 +113,6 @@ const uint8_t g2xGoogleWPTCencInitData[] = { 0x00, 0x00, 0x00, 0x00 // datasize }; -const uint8_t gPrimetimePSSH[] = { - 0x00, 0x00, 0x00, 0x00, // size = 0 - 0x70, 0x73, 0x73, 0x68, // 'pssh' - 0x01, // version = 1 - 0x00, 0x00, 0x00, // flags - 0xf2, 0x39, 0xe7, 0x69, 0xef, 0xa3, 0x48, 0x50, // Primetime system Id - 0x9c, 0x16, 0xa9, 0x03, 0xc6, 0x93, 0x2e, 0xfb -}; - TEST(PsshParser, ParseCencInitData) { std::vector<std::vector<uint8_t>> keyIds; bool rv; @@ -162,8 +153,4 @@ TEST(PsshParser, ParseCencInitData) { EXPECT_EQ(16u, keyIds[1].size()); EXPECT_EQ(0, memcmp(&keyIds[0].front(), &g2xGoogleWPTCencInitData[32], 16)); EXPECT_EQ(0, memcmp(&keyIds[1].front(), &g2xGoogleWPTCencInitData[84], 16)); - - rv = ParseCENCInitData(gPrimetimePSSH, MOZ_ARRAY_LENGTH(gPrimetimePSSH), keyIds); - EXPECT_TRUE(rv); - EXPECT_EQ(0u, keyIds.size()); } diff --git a/toolkit/content/gmp-sources/eme-adobe.json b/toolkit/content/gmp-sources/eme-adobe.json deleted file mode 100644 index 3bd808be8..000000000 --- a/toolkit/content/gmp-sources/eme-adobe.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "vendors": { - "gmp-eme-adobe": { - "platforms": { - "WINNT_x86-msvc-x64": { - "alias": "WINNT_x86-msvc" - }, - "WINNT_x86-msvc": { - "fileUrl": "https://cdmdownload.adobe.com/firefox/win/x86/primetime_gmp_win_x86_gmc_40673.zip", - "hashValue": "8aad35fc13814b0f1daacddb0d599eedd685287d5afddc97c2f740c8aea270636ccd75b1d1a57364b84e8eb1b23c9f1c126c057d95f3d8217b331dc4b1d5340f", - "filesize": 3694349 - }, - "WINNT_x86_64-msvc-x64": { - "alias": "WINNT_x86_64-msvc" - }, - "WINNT_x86-msvc-x86": { - "alias": "WINNT_x86-msvc" - }, - "WINNT_x86_64-msvc": { - "fileUrl": "https://cdmdownload.adobe.com/firefox/win/x64/primetime_gmp_win_x64_gmc_40673.zip", - "hashValue": "bd1e1a370c5f9dadc247c9f00dd203fab1a75ff3afed8439a0a0bfcc7e1767d0da68497140cbe48daa70e2535dde5f220dd7b344619cecd830a6b685efb9d5a0", - "filesize": 4853103 - } - }, - "version": "17" - } - }, - "hashFunction": "sha512", - "name": "CDM-17", - "schema_version": 1000 -} diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn index 5bf6440be..5a940679b 100644 --- a/toolkit/content/jar.mn +++ b/toolkit/content/jar.mn @@ -127,6 +127,5 @@ toolkit.jar: content/global/macWindowMenu.js #endif content/global/svg/svgBindings.xml (/layout/svg/resources/content/svgBindings.xml) - content/global/gmp-sources/eme-adobe.json (gmp-sources/eme-adobe.json) content/global/gmp-sources/openh264.json (gmp-sources/openh264.json) content/global/gmp-sources/widevinecdm.json (gmp-sources/widevinecdm.json) diff --git a/toolkit/mozapps/extensions/GMPUtils.jsm b/toolkit/mozapps/extensions/GMPUtils.jsm index a199b4d86..814ae4914 100644 --- a/toolkit/mozapps/extensions/GMPUtils.jsm +++ b/toolkit/mozapps/extensions/GMPUtils.jsm @@ -7,8 +7,7 @@ const {classes: Cc, interfaces: Ci, results: Cr, utils: Cu, manager: Cm} = Components; -this.EXPORTED_SYMBOLS = [ "EME_ADOBE_ID", - "GMP_PLUGIN_IDS", +this.EXPORTED_SYMBOLS = [ "GMP_PLUGIN_IDS", "GMPPrefs", "GMPUtils", "OPEN_H264_ID", @@ -20,9 +19,8 @@ Cu.import("resource://gre/modules/AppConstants.jsm"); // GMP IDs const OPEN_H264_ID = "gmp-gmpopenh264"; -const EME_ADOBE_ID = "gmp-eme-adobe"; const WIDEVINE_ID = "gmp-widevinecdm"; -const GMP_PLUGIN_IDS = [ OPEN_H264_ID, EME_ADOBE_ID, WIDEVINE_ID ]; +const GMP_PLUGIN_IDS = [ OPEN_H264_ID, WIDEVINE_ID ]; var GMPPluginUnsupportedReason = { NOT_WINDOWS: 1, @@ -72,10 +70,7 @@ this.GMPUtils = { if (this._isPluginForceSupported(aPlugin)) { return true; } - if (aPlugin.id == EME_ADOBE_ID) { - // Windows Vista and later only supported by Adobe EME. - return AppConstants.isPlatformAndVersionAtLeast("win", "6"); - } else if (aPlugin.id == WIDEVINE_ID) { + if (aPlugin.id == WIDEVINE_ID) { // The Widevine plugin is available for Windows versions Vista and later, // Mac OSX, and Linux. return AppConstants.isPlatformAndVersionAtLeast("win", "6") || diff --git a/toolkit/mozapps/extensions/internal/GMPProvider.jsm b/toolkit/mozapps/extensions/internal/GMPProvider.jsm index 131db7249..39d8f2d98 100644 --- a/toolkit/mozapps/extensions/internal/GMPProvider.jsm +++ b/toolkit/mozapps/extensions/internal/GMPProvider.jsm @@ -49,17 +49,6 @@ const GMP_PLUGINS = [ homepageURL: "http://www.openh264.org/", optionsURL: "chrome://mozapps/content/extensions/gmpPrefs.xul" }, -/* - { - id: EME_ADOBE_ID, - name: "eme-adobe_name", - description: "eme-adobe_description", - licenseURL: "http://help.adobe.com/en_US/primetime/drm/HTML5_CDM_EULA/index.html", - homepageURL: "http://help.adobe.com/en_US/primetime/drm/HTML5_CDM", - optionsURL: "chrome://mozapps/content/extensions/gmpPrefs.xul", - isEME: true - }, -*/ { id: WIDEVINE_ID, name: "widevine_description", diff --git a/toolkit/mozapps/extensions/internal/ProductAddonChecker.jsm b/toolkit/mozapps/extensions/internal/ProductAddonChecker.jsm index f98dd2a94..c6324da0a 100644 --- a/toolkit/mozapps/extensions/internal/ProductAddonChecker.jsm +++ b/toolkit/mozapps/extensions/internal/ProductAddonChecker.jsm @@ -7,9 +7,6 @@ const { classes: Cc, interfaces: Ci, utils: Cu } = Components; const LOCAL_EME_SOURCES = [{ - "id": "gmp-eme-adobe", - "src": "chrome://global/content/gmp-sources/eme-adobe.json" -}, { "id": "gmp-gmpopenh264", "src": "chrome://global/content/gmp-sources/openh264.json" }, { diff --git a/tools/lint/eslint/modules.json b/tools/lint/eslint/modules.json index 1ff546978..d170f81be 100644 --- a/tools/lint/eslint/modules.json +++ b/tools/lint/eslint/modules.json @@ -88,7 +88,7 @@ "Gestures.jsm": ["GestureSettings", "GestureTracker"], "GMPInstallManager.jsm": ["GMPInstallManager", "GMPExtractor", "GMPDownloader", "GMPAddon"], "GMPProvider.jsm": [], - "GMPUtils.jsm": ["EME_ADOBE_ID", "GMP_PLUGIN_IDS", "GMPPrefs", "GMPUtils", "OPEN_H264_ID", "WIDEVINE_ID"], + "GMPUtils.jsm": ["GMP_PLUGIN_IDS", "GMPPrefs", "GMPUtils", "OPEN_H264_ID", "WIDEVINE_ID"], "hawkclient.js": ["HawkClient"], "hawkrequest.js": ["HAWKAuthenticatedRESTRequest", "deriveHawkCredentials"], "HelperApps.jsm": ["App", "HelperApps"], |