summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorxhwang@chromium.org <xhwang@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-06-20 23:42:31 +0000
committerxhwang@chromium.org <xhwang@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-06-20 23:42:31 +0000
commit6a09bfd7e92ee13cc52d7e63860d92c73aa308eb (patch)
tree4ac9f4237020ba952b6bb4bc752957600694d2f9
parent71632e2b76e4dedf6c82c8f002e914225a8c3a39 (diff)
downloadchromium_src-6a09bfd7e92ee13cc52d7e63860d92c73aa308eb.zip
chromium_src-6a09bfd7e92ee13cc52d7e63860d92c73aa308eb.tar.gz
chromium_src-6a09bfd7e92ee13cc52d7e63860d92c73aa308eb.tar.bz2
Enable VP9 support for Widevine key system.
BUG=361318 TEST=Enabled new tests. R=jam@chromium.org, shadi@chromium.org Review URL: https://codereview.chromium.org/345223002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@278866 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/media/encrypted_media_browsertest.cc8
-rw-r--r--chrome/browser/media/encrypted_media_istypesupported_browsertest.cc19
-rw-r--r--chrome/common/chrome_content_client.cc3
3 files changed, 17 insertions, 13 deletions
diff --git a/chrome/browser/media/encrypted_media_browsertest.cc b/chrome/browser/media/encrypted_media_browsertest.cc
index 0982dfd..40a73b4 100644
--- a/chrome/browser/media/encrypted_media_browsertest.cc
+++ b/chrome/browser/media/encrypted_media_browsertest.cc
@@ -531,14 +531,6 @@ IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_VideoClearAudio_WebM) {
}
IN_PROC_BROWSER_TEST_P(EncryptedMediaTest, Playback_VP9Video_WebM) {
-#if defined(WIDEVINE_CDM_AVAILABLE)
- // TODO(xhwang): Remove this once VP9 is supported by Widevine CDM.
- // See http://crbug.com/361318.
- if (IsWidevine(CurrentKeySystem())) {
- VLOG(0) << "VP9 not supported in Widevine CDM.";
- return;
- }
-#endif
TestSimplePlayback("bear-320x240-v-vp9-enc_v.webm", kWebMVP9VideoOnly);
}
diff --git a/chrome/browser/media/encrypted_media_istypesupported_browsertest.cc b/chrome/browser/media/encrypted_media_istypesupported_browsertest.cc
index 5a19142..4ffde6f 100644
--- a/chrome/browser/media/encrypted_media_istypesupported_browsertest.cc
+++ b/chrome/browser/media/encrypted_media_istypesupported_browsertest.cc
@@ -883,9 +883,6 @@ IN_PROC_BROWSER_TEST_F(EncryptedMediaIsTypeSupportedWidevineTest,
std::string(), no_codecs(), "com.widevine.alpha.foo"));
}
-// TODO(xhwang): Add VP9 Widevine tests after VP9 is supported by Widevine CDM.
-// See http://crbug.com/361318
-
IN_PROC_BROWSER_TEST_F(EncryptedMediaIsTypeSupportedWidevineTest,
IsSupportedKeySystemWithMediaMimeType_Widevine_WebM) {
// Valid video types.
@@ -898,6 +895,12 @@ IN_PROC_BROWSER_TEST_F(EncryptedMediaIsTypeSupportedWidevineTest,
EXPECT_WV(IsSupportedKeySystemWithMediaMimeType(
"video/webm", vp8_and_vorbis_codecs(), kWidevineAlpha));
EXPECT_WV(IsSupportedKeySystemWithMediaMimeType(
+ "video/webm", vp9_codec(), kWidevineAlpha));
+ EXPECT_WV(IsSupportedKeySystemWithMediaMimeType(
+ "video/webm", vp90_codec(), kWidevineAlpha));
+ EXPECT_WV(IsSupportedKeySystemWithMediaMimeType(
+ "video/webm", vp9_and_vorbis_codecs(), kWidevineAlpha));
+ EXPECT_WV(IsSupportedKeySystemWithMediaMimeType(
"video/webm", vorbis_codec(), kWidevineAlpha));
// Valid video types - parent key system.
@@ -910,6 +913,12 @@ IN_PROC_BROWSER_TEST_F(EncryptedMediaIsTypeSupportedWidevineTest,
EXPECT_WV(IsSupportedKeySystemWithMediaMimeType(
"video/webm", vp8_and_vorbis_codecs(), kWidevine));
EXPECT_WV(IsSupportedKeySystemWithMediaMimeType(
+ "video/webm", vp9_codec(), kWidevine));
+ EXPECT_WV(IsSupportedKeySystemWithMediaMimeType(
+ "video/webm", vp90_codec(), kWidevine));
+ EXPECT_WV(IsSupportedKeySystemWithMediaMimeType(
+ "video/webm", vp9_and_vorbis_codecs(), kWidevine));
+ EXPECT_WV(IsSupportedKeySystemWithMediaMimeType(
"video/webm", vorbis_codec(), kWidevine));
// Non-Webm codecs.
@@ -941,6 +950,10 @@ IN_PROC_BROWSER_TEST_F(EncryptedMediaIsTypeSupportedWidevineTest,
"audio/webm", vp8_codec(), kWidevineAlpha));
EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
"audio/webm", vp8_and_vorbis_codecs(), kWidevineAlpha));
+ EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
+ "audio/webm", vp9_codec(), kWidevineAlpha));
+ EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
+ "audio/webm", vp9_and_vorbis_codecs(), kWidevineAlpha));
// Non-Webm codec.
EXPECT_FALSE(IsSupportedKeySystemWithMediaMimeType(
diff --git a/chrome/common/chrome_content_client.cc b/chrome/common/chrome_content_client.cc
index 26e24ce..aa2e42d 100644
--- a/chrome/common/chrome_content_client.cc
+++ b/chrome/common/chrome_content_client.cc
@@ -279,8 +279,7 @@ void ComputeBuiltInPlugins(std::vector<content::PepperPluginInfo>* plugins) {
std::vector<std::string> codecs;
codecs.push_back(kCdmSupportedCodecVorbis);
codecs.push_back(kCdmSupportedCodecVp8);
- // TODO(xhwang): Add VP9 when it's supported by Widevine CDM.
- // See http://crbug.com/361318
+ codecs.push_back(kCdmSupportedCodecVp9);
#if defined(USE_PROPRIETARY_CODECS)
// TODO(ddorwin): Rename these macros to reflect their real meaning: whether the
// CDM Chrome was built [and shipped] with support these types.