| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "media/base/android/media_drm_bridge.h" | 5 #include "media/base/android/media_drm_bridge.h" |
| 6 | 6 |
| 7 #include "base/android/build_info.h" | 7 #include "base/android/build_info.h" |
| 8 #include "base/android/jni_array.h" | 8 #include "base/android/jni_array.h" |
| 9 #include "base/android/jni_string.h" | 9 #include "base/android/jni_string.h" |
| 10 #include "base/callback_helpers.h" | 10 #include "base/callback_helpers.h" |
| (...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 253 if (security_level_str.empty()) | 253 if (security_level_str.empty()) |
| 254 return false; | 254 return false; |
| 255 | 255 |
| 256 ScopedJavaLocalRef<jstring> j_security_level = | 256 ScopedJavaLocalRef<jstring> j_security_level = |
| 257 ConvertUTF8ToJavaString(env, security_level_str); | 257 ConvertUTF8ToJavaString(env, security_level_str); |
| 258 return Java_MediaDrmBridge_setSecurityLevel( | 258 return Java_MediaDrmBridge_setSecurityLevel( |
| 259 env, j_media_drm_.obj(), j_security_level.obj()); | 259 env, j_media_drm_.obj(), j_security_level.obj()); |
| 260 } | 260 } |
| 261 | 261 |
| 262 bool MediaDrmBridge::CreateSession(uint32 session_id, | 262 bool MediaDrmBridge::CreateSession(uint32 session_id, |
| 263 const std::string& type, | 263 const std::string& content_type, |
| 264 const uint8* init_data, | 264 const uint8* init_data, |
| 265 int init_data_length) { | 265 int init_data_length) { |
| 266 std::vector<uint8> pssh_data; | 266 std::vector<uint8> pssh_data; |
| 267 if (!GetPsshData(init_data, init_data_length, scheme_uuid_, &pssh_data)) | 267 if (!GetPsshData(init_data, init_data_length, scheme_uuid_, &pssh_data)) |
| 268 return false; | 268 return false; |
| 269 | 269 |
| 270 JNIEnv* env = AttachCurrentThread(); | 270 JNIEnv* env = AttachCurrentThread(); |
| 271 ScopedJavaLocalRef<jbyteArray> j_pssh_data = | 271 ScopedJavaLocalRef<jbyteArray> j_pssh_data = |
| 272 base::android::ToJavaByteArray(env, &pssh_data[0], pssh_data.size()); | 272 base::android::ToJavaByteArray(env, &pssh_data[0], pssh_data.size()); |
| 273 ScopedJavaLocalRef<jstring> j_mime = ConvertUTF8ToJavaString(env, type); | 273 ScopedJavaLocalRef<jstring> j_mime = |
| 274 ConvertUTF8ToJavaString(env, content_type); |
| 274 Java_MediaDrmBridge_createSession( | 275 Java_MediaDrmBridge_createSession( |
| 275 env, j_media_drm_.obj(), session_id, j_pssh_data.obj(), j_mime.obj()); | 276 env, j_media_drm_.obj(), session_id, j_pssh_data.obj(), j_mime.obj()); |
| 276 return true; | 277 return true; |
| 277 } | 278 } |
| 278 | 279 |
| 280 bool MediaDrmBridge::LoadSession(uint32 session_id, |
| 281 const std::string& web_session_id) { |
| 282 // MediaDrmBridge doesn't support loading sessions. |
| 283 NOTREACHED(); |
| 284 return false; |
| 285 } |
| 286 |
| 279 void MediaDrmBridge::UpdateSession(uint32 session_id, | 287 void MediaDrmBridge::UpdateSession(uint32 session_id, |
| 280 const uint8* response, | 288 const uint8* response, |
| 281 int response_length) { | 289 int response_length) { |
| 282 DVLOG(1) << __FUNCTION__; | 290 DVLOG(1) << __FUNCTION__; |
| 283 JNIEnv* env = AttachCurrentThread(); | 291 JNIEnv* env = AttachCurrentThread(); |
| 284 ScopedJavaLocalRef<jbyteArray> j_response = | 292 ScopedJavaLocalRef<jbyteArray> j_response = |
| 285 base::android::ToJavaByteArray(env, response, response_length); | 293 base::android::ToJavaByteArray(env, response, response_length); |
| 286 Java_MediaDrmBridge_updateSession( | 294 Java_MediaDrmBridge_updateSession( |
| 287 env, j_media_drm_.obj(), session_id, j_response.obj()); | 295 env, j_media_drm_.obj(), session_id, j_response.obj()); |
| 288 } | 296 } |
| (...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 391 JNIEnv* env = AttachCurrentThread(); | 399 JNIEnv* env = AttachCurrentThread(); |
| 392 Java_MediaDrmBridge_resetDeviceCredentials(env, j_media_drm_.obj()); | 400 Java_MediaDrmBridge_resetDeviceCredentials(env, j_media_drm_.obj()); |
| 393 } | 401 } |
| 394 | 402 |
| 395 void MediaDrmBridge::OnResetDeviceCredentialsCompleted( | 403 void MediaDrmBridge::OnResetDeviceCredentialsCompleted( |
| 396 JNIEnv* env, jobject, bool success) { | 404 JNIEnv* env, jobject, bool success) { |
| 397 base::ResetAndReturn(&reset_credentials_cb_).Run(success); | 405 base::ResetAndReturn(&reset_credentials_cb_).Run(success); |
| 398 } | 406 } |
| 399 | 407 |
| 400 } // namespace media | 408 } // namespace media |
| OLD | NEW |