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 <stddef.h> | 7 #include <stddef.h> |
8 #include <algorithm> | 8 #include <algorithm> |
9 #include <utility> | 9 #include <utility> |
10 | 10 |
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
285 media_drm_bridge = nullptr; | 285 media_drm_bridge = nullptr; |
286 | 286 |
287 return media_drm_bridge; | 287 return media_drm_bridge; |
288 } | 288 } |
289 | 289 |
290 // static | 290 // static |
291 scoped_refptr<MediaDrmBridge> MediaDrmBridge::CreateWithoutSessionSupport( | 291 scoped_refptr<MediaDrmBridge> MediaDrmBridge::CreateWithoutSessionSupport( |
292 const std::string& key_system, | 292 const std::string& key_system, |
293 SecurityLevel security_level, | 293 SecurityLevel security_level, |
294 const CreateFetcherCB& create_fetcher_cb) { | 294 const CreateFetcherCB& create_fetcher_cb) { |
| 295 DVLOG(1) << __FUNCTION__; |
| 296 |
295 return MediaDrmBridge::Create(key_system, security_level, create_fetcher_cb, | 297 return MediaDrmBridge::Create(key_system, security_level, create_fetcher_cb, |
296 SessionMessageCB(), SessionClosedCB(), | 298 SessionMessageCB(), SessionClosedCB(), |
297 LegacySessionErrorCB(), SessionKeysChangeCB(), | 299 LegacySessionErrorCB(), SessionKeysChangeCB(), |
298 SessionExpirationUpdateCB()); | 300 SessionExpirationUpdateCB()); |
299 } | 301 } |
300 | 302 |
301 void MediaDrmBridge::SetServerCertificate( | 303 void MediaDrmBridge::SetServerCertificate( |
302 const std::vector<uint8_t>& certificate, | 304 const std::vector<uint8_t>& certificate, |
303 scoped_ptr<media::SimpleCdmPromise> promise) { | 305 scoped_ptr<media::SimpleCdmPromise> promise) { |
304 DVLOG(2) << __FUNCTION__; | 306 DVLOG(2) << __FUNCTION__; |
(...skipping 418 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
723 JNIEnv* env = AttachCurrentThread(); | 725 JNIEnv* env = AttachCurrentThread(); |
724 CHECK(env); | 726 CHECK(env); |
725 | 727 |
726 ScopedJavaLocalRef<jbyteArray> j_scheme_uuid = | 728 ScopedJavaLocalRef<jbyteArray> j_scheme_uuid = |
727 base::android::ToJavaByteArray(env, &scheme_uuid[0], scheme_uuid.size()); | 729 base::android::ToJavaByteArray(env, &scheme_uuid[0], scheme_uuid.size()); |
728 | 730 |
729 std::string security_level_str = GetSecurityLevelString(security_level); | 731 std::string security_level_str = GetSecurityLevelString(security_level); |
730 ScopedJavaLocalRef<jstring> j_security_level = | 732 ScopedJavaLocalRef<jstring> j_security_level = |
731 ConvertUTF8ToJavaString(env, security_level_str); | 733 ConvertUTF8ToJavaString(env, security_level_str); |
732 | 734 |
| 735 // Note: OnMediaCryptoReady() could be called in this call. |
733 j_media_drm_.Reset(Java_MediaDrmBridge_create( | 736 j_media_drm_.Reset(Java_MediaDrmBridge_create( |
734 env, j_scheme_uuid.obj(), j_security_level.obj(), | 737 env, j_scheme_uuid.obj(), j_security_level.obj(), |
735 reinterpret_cast<intptr_t>(this))); | 738 reinterpret_cast<intptr_t>(this))); |
736 } | 739 } |
737 | 740 |
738 MediaDrmBridge::~MediaDrmBridge() { | 741 MediaDrmBridge::~MediaDrmBridge() { |
739 DCHECK(task_runner_->BelongsToCurrentThread()); | 742 DCHECK(task_runner_->BelongsToCurrentThread()); |
740 DVLOG(1) << __FUNCTION__; | 743 DVLOG(1) << __FUNCTION__; |
741 | 744 |
742 JNIEnv* env = AttachCurrentThread(); | 745 JNIEnv* env = AttachCurrentThread(); |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
826 JNIEnv* env = AttachCurrentThread(); | 829 JNIEnv* env = AttachCurrentThread(); |
827 | 830 |
828 ScopedJavaLocalRef<jbyteArray> j_response = base::android::ToJavaByteArray( | 831 ScopedJavaLocalRef<jbyteArray> j_response = base::android::ToJavaByteArray( |
829 env, reinterpret_cast<const uint8_t*>(response.data()), response.size()); | 832 env, reinterpret_cast<const uint8_t*>(response.data()), response.size()); |
830 | 833 |
831 Java_MediaDrmBridge_processProvisionResponse(env, j_media_drm_.obj(), success, | 834 Java_MediaDrmBridge_processProvisionResponse(env, j_media_drm_.obj(), success, |
832 j_response.obj()); | 835 j_response.obj()); |
833 } | 836 } |
834 | 837 |
835 } // namespace media | 838 } // namespace media |
OLD | NEW |