Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(141)

Unified Diff: media/base/android/media_codec_bridge.cc

Issue 23480036: Support creating secure decoder in MediaCodecBridge. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix test Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « media/base/android/media_codec_bridge.h ('k') | media/base/android/media_codec_bridge_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/base/android/media_codec_bridge.cc
diff --git a/media/base/android/media_codec_bridge.cc b/media/base/android/media_codec_bridge.cc
index f5c73a0a75c2150cd47c8d46834f222a8f8e402f..a02c1f1a749e8915476734a5866f0250c0730eb8 100644
--- a/media/base/android/media_codec_bridge.cc
+++ b/media/base/android/media_codec_bridge.cc
@@ -88,14 +88,14 @@ bool MediaCodecBridge::CanDecode(const std::string& codec, bool is_secure) {
return !Java_MediaCodecBridge_create(env, j_mime.obj(), is_secure).is_null();
}
-// TODO(xhwang): Support creating secure MediaCodecBridge.
-MediaCodecBridge::MediaCodecBridge(const std::string& mime) {
+MediaCodecBridge::MediaCodecBridge(const std::string& mime, bool is_secure) {
JNIEnv* env = AttachCurrentThread();
CHECK(env);
DCHECK(!mime.empty());
ScopedJavaLocalRef<jstring> j_mime = ConvertUTF8ToJavaString(env, mime);
- j_media_codec_.Reset(Java_MediaCodecBridge_create(env, j_mime.obj(), false));
+ j_media_codec_.Reset(
+ Java_MediaCodecBridge_create(env, j_mime.obj(), is_secure));
}
MediaCodecBridge::~MediaCodecBridge() {
@@ -242,7 +242,8 @@ size_t MediaCodecBridge::FillInputBuffer(
}
AudioCodecBridge::AudioCodecBridge(const std::string& mime)
- : MediaCodecBridge(mime) {
+ // Audio codec doesn't care about security level.
+ : MediaCodecBridge(mime, false) {
}
bool AudioCodecBridge::Start(
@@ -400,8 +401,8 @@ void AudioCodecBridge::SetVolume(double volume) {
Java_MediaCodecBridge_setVolume(env, media_codec(), volume);
}
-VideoCodecBridge::VideoCodecBridge(const std::string& mime)
- : MediaCodecBridge(mime) {
+VideoCodecBridge::VideoCodecBridge(const std::string& mime, bool is_secure)
+ : MediaCodecBridge(mime, is_secure) {
}
bool VideoCodecBridge::Start(
@@ -435,9 +436,10 @@ AudioCodecBridge* AudioCodecBridge::Create(const AudioCodec codec) {
return mime.empty() ? NULL : new AudioCodecBridge(mime);
}
-VideoCodecBridge* VideoCodecBridge::Create(const VideoCodec codec) {
+VideoCodecBridge* VideoCodecBridge::Create(const VideoCodec codec,
+ bool is_secure) {
const std::string mime = VideoCodecToMimeType(codec);
- return mime.empty() ? NULL : new VideoCodecBridge(mime);
+ return mime.empty() ? NULL : new VideoCodecBridge(mime, is_secure);
}
bool MediaCodecBridge::RegisterMediaCodecBridge(JNIEnv* env) {
« no previous file with comments | « media/base/android/media_codec_bridge.h ('k') | media/base/android/media_codec_bridge_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698