diff options
author | qinmin@chromium.org <qinmin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-09-19 06:53:56 +0000 |
---|---|---|
committer | qinmin@chromium.org <qinmin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-09-19 06:53:56 +0000 |
commit | 2b12c3257248d0559c3dd465ed08464200729a6c (patch) | |
tree | 96913bf52d1442a8a4fadf05fc76b99e7ed15235 /media | |
parent | 2b285bfa45e120476bb3b7405f83365f00f2b245 (diff) | |
download | chromium_src-2b12c3257248d0559c3dd465ed08464200729a6c.zip chromium_src-2b12c3257248d0559c3dd465ed08464200729a6c.tar.gz chromium_src-2b12c3257248d0559c3dd465ed08464200729a6c.tar.bz2 |
Populate canPlayType to renderer
This CL implements the AddKeySystem() call, and using sync IPC to send the results back to the render process.
TBR=jschuh
BUG=224793
Review URL: https://chromiumcodereview.appspot.com/23513055
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@224064 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media')
-rw-r--r-- | media/base/android/java/src/org/chromium/media/MediaDrmBridge.java | 9 | ||||
-rw-r--r-- | media/base/android/media_codec_bridge.cc | 8 |
2 files changed, 16 insertions, 1 deletions
diff --git a/media/base/android/java/src/org/chromium/media/MediaDrmBridge.java b/media/base/android/java/src/org/chromium/media/MediaDrmBridge.java index 1118dd0..38898d5 100644 --- a/media/base/android/java/src/org/chromium/media/MediaDrmBridge.java +++ b/media/base/android/java/src/org/chromium/media/MediaDrmBridge.java @@ -127,6 +127,15 @@ class MediaDrmBridge { return createMediaCrypto(); } + /** + * Check whether the crypto scheme is supported for the given container. + * If |containerMimeType| is an empty string, we just return whether + * the crypto scheme is supported. + * TODO(qinmin): Implement the checking for container. + * + * @return true if the container and the crypto scheme is supported, or + * false otherwise. + */ @CalledByNative private static boolean isCryptoSchemeSupported(byte[] schemeUUID, String containerMimeType) { UUID cryptoScheme = getUUIDFromBytes(schemeUUID); diff --git a/media/base/android/media_codec_bridge.cc b/media/base/android/media_codec_bridge.cc index d562579..fff50e5 100644 --- a/media/base/android/media_codec_bridge.cc +++ b/media/base/android/media_codec_bridge.cc @@ -130,7 +130,13 @@ bool MediaCodecBridge::CanDecode(const std::string& codec, bool is_secure) { if (mime.empty()) return false; ScopedJavaLocalRef<jstring> j_mime = ConvertUTF8ToJavaString(env, mime); - return !Java_MediaCodecBridge_create(env, j_mime.obj(), is_secure).is_null(); + ScopedJavaLocalRef<jobject> j_media_codec_bridge = + Java_MediaCodecBridge_create(env, j_mime.obj(), is_secure); + if (!j_media_codec_bridge.is_null()) { + Java_MediaCodecBridge_release(env, j_media_codec_bridge.obj()); + return true; + } + return false; } MediaCodecBridge::MediaCodecBridge(const std::string& mime, bool is_secure) { |