Revert "Allow suppressed EME canPlayType() responses to be overridden with a flag." (r208096).

Broke ChromeOS build.

TBR=ddorwin

Review URL: https://codereview.chromium.org/16917014

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@208103 0039d316-1c4b-4281-b951-d872f2087c98
parent 0d0b1a7e
......@@ -754,13 +754,6 @@ const Experiment kExperiments[] = {
kOsDesktop,
SINGLE_VALUE_TYPE(switches::kDisableLegacyEncryptedMedia)
},
{
"override-encrypted-media-canplaytype",
IDS_FLAGS_ENCRYPTED_MEDIA_CANPLAYTYPE_OVERRIDE_NAME,
IDS_FLAGS_ENCRYPTED_MEDIA_CANPLAYTYPE_OVERRIDE_DESCRIPTION,
kOsMac | kOsWin,
SINGLE_VALUE_TYPE(switches::kOverrideEncryptedMediaCanPlayType)
},
{
"enable-opus-playback",
IDS_FLAGS_ENABLE_OPUS_PLAYBACK_NAME,
......
......@@ -894,7 +894,6 @@ void RenderProcessHostImpl::PropagateBrowserCommandLineToRenderer(
switches::kEnableDelegatedRenderer,
switches::kEnableEncryptedMedia,
switches::kDisableLegacyEncryptedMedia,
switches::kOverrideEncryptedMediaCanPlayType,
switches::kEnableExperimentalWebKitFeatures,
switches::kEnableFixedLayout,
switches::kEnableDeferredImageDecoding,
......
......@@ -21,10 +21,6 @@ const char kEnableVp8AlphaPlayback[] = "enable-vp8-alpha-playback";
// Set number of threads to use for video decoding.
const char kVideoThreads[] = "video-threads";
// Override suppressed responses to canPlayType().
const char kOverrideEncryptedMediaCanPlayType[] =
"override-encrypted-media-canplaytype";
#if defined(GOOGLE_TV)
// Use external video surface for video with more than or equal pixels to
// specified value. For example, value of 0 will enable external video surface
......
......@@ -22,8 +22,6 @@ MEDIA_EXPORT extern const char kEnableVp8AlphaPlayback[];
MEDIA_EXPORT extern const char kVideoThreads[];
MEDIA_EXPORT extern const char kOverrideEncryptedMediaCanPlayType[];
#if defined(GOOGLE_TV)
MEDIA_EXPORT extern const char kUseExternalVideoSurfaceThresholdInPixels[];
#endif
......
......@@ -112,11 +112,6 @@ bool KeySystems::IsSupportedKeySystemWithMediaMimeType(
const std::string& mime_type,
const std::vector<std::string>& codecs,
const std::string& key_system) {
// This method is only used by the canPlaytType() path (not the EME methods),
// so we check for suppressed key_systems here.
if(IsCanPlayTypeSuppressed(key_system))
return false;
if (codecs.empty())
return IsSupportedKeySystemWithContainerAndCodec(
mime_type, std::string(), key_system);
......
......@@ -6,8 +6,6 @@
#include "widevine_cdm_version.h" // In SHARED_INTERMEDIATE_DIR.
// The following must be after widevine_cdm_version.h.
#if defined(WIDEVINE_CDM_AVAILABLE) && \
defined(OS_LINUX) && !defined(OS_CHROMEOS)
#include <gnu/libc-version.h>
......@@ -15,11 +13,6 @@
#include "base/version.h"
#endif
#if defined(DISABLE_WIDEVINE_CDM_CANPLAYTYPE)
#include "base/command_line.h"
#include "media/base/media_switches.h"
#endif
namespace webkit_media {
static const char kClearKeyKeySystem[] = "webkit-org.w3.clearkey";
......@@ -30,6 +23,7 @@ static const char kExternalClearKeyKeySystem[] =
#if defined(WIDEVINE_CDM_AVAILABLE)
// TODO(ddorwin): Automatically support parent systems: http://crbug.com/164303.
static const char kWidevineBaseKeySystem[] = "com.widevine";
#endif // defined(WIDEVINE_CDM_AVAILABLE)
#if defined(WIDEVINE_CDM_CENC_SUPPORT_AVAILABLE)
// The supported codecs depend on what the CDM provides.
......@@ -51,12 +45,6 @@ static const char kWidevineAudioMp4Codecs[] =
#endif
#endif // defined(WIDEVINE_CDM_CENC_SUPPORT_AVAILABLE)
static inline bool IsWidevine(const std::string& key_system) {
return key_system == kWidevineKeySystem ||
key_system == kWidevineBaseKeySystem;
}
#endif // defined(WIDEVINE_CDM_AVAILABLE)
const MediaFormatAndKeySystem kSupportedFormatKeySystemCombinations[] = {
// Clear Key.
{ "video/webm", "vorbis,vp8,vp8.0", kClearKeyKeySystem },
......@@ -76,6 +64,10 @@ const MediaFormatAndKeySystem kSupportedFormatKeySystemCombinations[] = {
#if defined(WIDEVINE_CDM_AVAILABLE)
// Widevine.
// See http://crbug.com/237627.
#if defined(DISABLE_WIDEVINE_CDM_CANPLAYTYPE)
{ "", "", kWidevineKeySystem },
#else
{ "video/webm", "vorbis,vp8,vp8.0", kWidevineKeySystem },
{ "audio/webm", "vorbis", kWidevineKeySystem },
{ "video/webm", "vorbis,vp8,vp8.0", kWidevineBaseKeySystem },
......@@ -88,6 +80,7 @@ const MediaFormatAndKeySystem kSupportedFormatKeySystemCombinations[] = {
{ "audio/mp4", kWidevineAudioMp4Codecs, kWidevineBaseKeySystem },
#endif // defined(WIDEVINE_CDM_CENC_SUPPORT_AVAILABLE)
#endif // defined(GOOGLE_CHROME_BUILD) || defined(USE_PROPRIETARY_CODECS)
#endif // defined(DISABLE_WIDEVINE_CDM_CANPLAYTYPE)
#endif // WIDEVINE_CDM_AVAILABLE
};
......@@ -124,7 +117,8 @@ const int kNumKeySystemToUUIDMapping =
bool IsSystemCompatible(const std::string& key_system) {
#if defined(WIDEVINE_CDM_AVAILABLE) && \
defined(OS_LINUX) && !defined(OS_CHROMEOS)
if (IsWidevine(key_system)) {
if (key_system == kWidevineKeySystem ||
key_system == kWidevineBaseKeySystem) {
Version glibc_version(gnu_get_libc_version());
DCHECK(glibc_version.IsValid());
return !glibc_version.IsOlderThan(WIDEVINE_CDM_MIN_GLIBC_VERSION);
......@@ -133,17 +127,6 @@ bool IsSystemCompatible(const std::string& key_system) {
return true;
}
bool IsCanPlayTypeSuppressed(const std::string& key_system) {
#if defined(DISABLE_WIDEVINE_CDM_CANPLAYTYPE)
// See http://crbug.com/237627.
if (IsWidevine(key_system) &&
!CommandLine::ForCurrentProcess()->HasSwitch(
switches::kEncryptedMediaCanPlayTypeOverride))
return true;
#endif
return false;
}
std::string KeySystemNameForUMAGeneric(const std::string& key_system) {
if (key_system == kClearKeyKeySystem)
return "ClearKey";
......
......@@ -55,9 +55,6 @@ extern const int kNumKeySystemToUUIDMapping;
// Returns whether |key_system| is compatible with the user's system.
bool IsSystemCompatible(const std::string& key_system);
// Returns true if canPlayType should return an empty string for |key_system|.
bool IsCanPlayTypeSuppressed(const std::string& key_system);
// Returns the name that UMA will use for the given |key_system|.
// This function can be called frequently. Hence this function should be
// implemented not to impact performance.
......
......@@ -540,13 +540,7 @@ TEST_F(KeySystemsTest,
//
TEST_F(KeySystemsTest, Widevine_Basic) {
#if defined(WIDEVINE_CDM_AVAILABLE) && \
defined(DISABLE_WIDEVINE_CDM_CANPLAYTYPE)
EXPECT_TRUE(IsSupportedKeySystem(WebString::fromUTF8(kWidevineAlpha)));
#else
EXPECT_WV(IsSupportedKeySystem(WebString::fromUTF8(kWidevineAlpha)));
#endif
EXPECT_WV(IsSupportedKeySystemWithMediaMimeType(
"video/webm", no_codecs(), kWidevineAlpha));
......@@ -577,12 +571,7 @@ TEST_F(KeySystemsTest, Widevine_Basic) {
TEST_F(KeySystemsTest, Widevine_Parent) {
const char* const kWidevineParent = kWidevine;
#if defined(WIDEVINE_CDM_AVAILABLE) && \
defined(DISABLE_WIDEVINE_CDM_CANPLAYTYPE)
EXPECT_TRUE(IsSupportedKeySystem(WebString::fromUTF8(kWidevineParent)));
#else
EXPECT_WV(IsSupportedKeySystem(WebString::fromUTF8(kWidevineParent)));
#endif
EXPECT_WV(IsSupportedKeySystemWithMediaMimeType(
"video/webm", no_codecs(), kWidevineParent));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment