| Index: media/base/android/media_drm_bridge.cc
|
| diff --git a/media/base/android/media_drm_bridge.cc b/media/base/android/media_drm_bridge.cc
|
| index e1f14dc06e625df7ab66ab002e3506577c884158..fc0288ab77381376ccbce06caf3035d0f1fe86ca 100644
|
| --- a/media/base/android/media_drm_bridge.cc
|
| +++ b/media/base/android/media_drm_bridge.cc
|
| @@ -311,6 +311,7 @@ MediaDrmBridge::MediaDrmBridge(const std::vector<uint8>& scheme_uuid,
|
|
|
| MediaDrmBridge::~MediaDrmBridge() {
|
| JNIEnv* env = AttachCurrentThread();
|
| + player_tracker_.NotifyCdmUnset();
|
| if (!j_media_drm_.is_null())
|
| Java_MediaDrmBridge_release(env, j_media_drm_.obj());
|
| }
|
| @@ -422,6 +423,10 @@ void MediaDrmBridge::UpdateSession(uint32 session_id,
|
| base::android::ToJavaByteArray(env, response, response_length);
|
| Java_MediaDrmBridge_updateSession(
|
| env, j_media_drm_.obj(), session_id, j_response.obj());
|
| +
|
| + // TODO(xhwang/jrummell): Move this when usableKeyIds/keyschange are
|
| + // implemented.
|
| + player_tracker_.NotifyNewKey();
|
| }
|
|
|
| void MediaDrmBridge::ReleaseSession(uint32 session_id) {
|
| @@ -434,6 +439,15 @@ void MediaDrmBridge::ReleaseSession(uint32 session_id) {
|
| Java_MediaDrmBridge_releaseSession(env, j_media_drm_.obj(), session_id);
|
| }
|
|
|
| +int MediaDrmBridge::RegisterPlayer(const base::Closure& new_key_cb,
|
| + const base::Closure& cdm_unset_cb) {
|
| + return player_tracker_.RegisterPlayer(new_key_cb, cdm_unset_cb);
|
| +}
|
| +
|
| +void MediaDrmBridge::UnregisterPlayer(int registration_id) {
|
| + player_tracker_.UnregisterPlayer(registration_id);
|
| +}
|
| +
|
| void MediaDrmBridge::SetMediaCryptoReadyCB(const base::Closure& closure) {
|
| if (closure.is_null()) {
|
| media_crypto_ready_cb_.Reset();
|
|
|