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 void MediaDrmBridge::LoadSession(uint32 session_id, |
| 281 const std::string& web_session_id) { |
| 282 // MediaDrmBridge doesn't support loading sessions. |
| 283 NOTREACHED(); |
| 284 } |
| 285 |
279 void MediaDrmBridge::UpdateSession(uint32 session_id, | 286 void MediaDrmBridge::UpdateSession(uint32 session_id, |
280 const uint8* response, | 287 const uint8* response, |
281 int response_length) { | 288 int response_length) { |
282 DVLOG(1) << __FUNCTION__; | 289 DVLOG(1) << __FUNCTION__; |
283 JNIEnv* env = AttachCurrentThread(); | 290 JNIEnv* env = AttachCurrentThread(); |
284 ScopedJavaLocalRef<jbyteArray> j_response = | 291 ScopedJavaLocalRef<jbyteArray> j_response = |
285 base::android::ToJavaByteArray(env, response, response_length); | 292 base::android::ToJavaByteArray(env, response, response_length); |
286 Java_MediaDrmBridge_updateSession( | 293 Java_MediaDrmBridge_updateSession( |
287 env, j_media_drm_.obj(), session_id, j_response.obj()); | 294 env, j_media_drm_.obj(), session_id, j_response.obj()); |
288 } | 295 } |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
391 JNIEnv* env = AttachCurrentThread(); | 398 JNIEnv* env = AttachCurrentThread(); |
392 Java_MediaDrmBridge_resetDeviceCredentials(env, j_media_drm_.obj()); | 399 Java_MediaDrmBridge_resetDeviceCredentials(env, j_media_drm_.obj()); |
393 } | 400 } |
394 | 401 |
395 void MediaDrmBridge::OnResetDeviceCredentialsCompleted( | 402 void MediaDrmBridge::OnResetDeviceCredentialsCompleted( |
396 JNIEnv* env, jobject, bool success) { | 403 JNIEnv* env, jobject, bool success) { |
397 base::ResetAndReturn(&reset_credentials_cb_).Run(success); | 404 base::ResetAndReturn(&reset_credentials_cb_).Run(success); |
398 } | 405 } |
399 | 406 |
400 } // namespace media | 407 } // namespace media |
OLD | NEW |