Commit e90b52da authored by xhwang@chromium.org's avatar xhwang@chromium.org

Add widevine_cdm_version.h to gyp for android.

- EME API works on Chrome build.
- CanPlayType() is suppressed (returns "") by default.
- User can choose to override the CanPlayType() suppression with a flag
  "--override-encrypted-media-canplaytype".
- For Android "video/mp4" is supported, while "video/webm" isn't.

BUG=163552
TEST=Tested all scenarios listed above.
R=ddorwin@chromium.org

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@221548 0039d316-1c4b-4281-b951-d872f2087c98
parent d0adb95e
...@@ -752,7 +752,7 @@ const Experiment kExperiments[] = { ...@@ -752,7 +752,7 @@ const Experiment kExperiments[] = {
"override-encrypted-media-canplaytype", "override-encrypted-media-canplaytype",
IDS_FLAGS_ENCRYPTED_MEDIA_CANPLAYTYPE_OVERRIDE_NAME, IDS_FLAGS_ENCRYPTED_MEDIA_CANPLAYTYPE_OVERRIDE_NAME,
IDS_FLAGS_ENCRYPTED_MEDIA_CANPLAYTYPE_OVERRIDE_DESCRIPTION, IDS_FLAGS_ENCRYPTED_MEDIA_CANPLAYTYPE_OVERRIDE_DESCRIPTION,
kOsMac | kOsWin, kOsMac | kOsWin | kOsAndroid,
SINGLE_VALUE_TYPE(switches::kOverrideEncryptedMediaCanPlayType) SINGLE_VALUE_TYPE(switches::kOverrideEncryptedMediaCanPlayType)
}, },
{ {
......
...@@ -77,8 +77,10 @@ static void RegisterWidevine() { ...@@ -77,8 +77,10 @@ static void RegisterWidevine() {
kWidevineUuid, kWidevineUuid,
#endif // defined(ENABLE_PEPPER_CDMS) #endif // defined(ENABLE_PEPPER_CDMS)
"com.widevine"); "com.widevine");
#if !defined(OS_ANDROID)
AddSupportedType(kWidevineKeySystem, "video/webm", "vorbis,vp8,vp8.0"); AddSupportedType(kWidevineKeySystem, "video/webm", "vorbis,vp8,vp8.0");
AddSupportedType(kWidevineKeySystem, "audio/webm", "vorbis"); AddSupportedType(kWidevineKeySystem, "audio/webm", "vorbis");
#endif // !defined(OS_ANDROID)
#if defined(USE_PROPRIETARY_CODECS) && \ #if defined(USE_PROPRIETARY_CODECS) && \
defined(WIDEVINE_CDM_CENC_SUPPORT_AVAILABLE) defined(WIDEVINE_CDM_CENC_SUPPORT_AVAILABLE)
AddSupportedType(kWidevineKeySystem, "video/mp4", kWidevineVideoMp4Codecs); AddSupportedType(kWidevineKeySystem, "video/mp4", kWidevineVideoMp4Codecs);
......
// Copyright (c) 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef WIDEVINE_CDM_VERSION_H_
#define WIDEVINE_CDM_VERSION_H_
#include "third_party/widevine/cdm/widevine_cdm_common.h"
// Indicates that the Widevine CDM is available.
#define WIDEVINE_CDM_AVAILABLE
// TODO(ddorwin): Remove when we have CDM availability detection
// (http://crbug.com/224793).
#define DISABLE_WIDEVINE_CDM_CANPLAYTYPE
// Indicates that ISO BMFF CENC support is available in the Widevine CDM.
// Must be enabled if any of the codecs below are enabled.
#define WIDEVINE_CDM_CENC_SUPPORT_AVAILABLE
// Indicates that AVC1 decoding is available for ISO BMFF CENC.
#define WIDEVINE_CDM_AVC1_SUPPORT_AVAILABLE
// Indicates that AAC decoding is available for ISO BMFF CENC.
#define WIDEVINE_CDM_AAC_SUPPORT_AVAILABLE
#endif // WIDEVINE_CDM_VERSION_H_
...@@ -38,6 +38,11 @@ ...@@ -38,6 +38,11 @@
'binaries/win/<(target_arch)/widevinecdm.dll.lib', 'binaries/win/<(target_arch)/widevinecdm.dll.lib',
], ],
}], }],
# TODO(xhwang): Enable this for non-Chrome build if necessary.
[ 'OS == "android"', {
'widevine_cdm_version_h_file%':
'android/widevine_cdm_version.h',
}],
], ],
}], }],
], ],
......
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