From 95dbffb2417a038625df8c790290e610b5f839d9 Mon Sep 17 00:00:00 2001 From: Gloria Wang Date: Thu, 4 Nov 2010 17:38:39 -0700 Subject: [PATCH] Notify the playback status to DRM agents before the playback starts Change-Id: I288eae2d35ab175c720bb0dd9f69e3e08ada9b8a --- media/libstagefright/AwesomePlayer.cpp | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/media/libstagefright/AwesomePlayer.cpp b/media/libstagefright/AwesomePlayer.cpp index 9789e36de068c..781e3fc12932e 100644 --- a/media/libstagefright/AwesomePlayer.cpp +++ b/media/libstagefright/AwesomePlayer.cpp @@ -526,6 +526,13 @@ status_t AwesomePlayer::play_l() { bool deferredAudioSeek = false; + if (mDecryptHandle != NULL) { + int64_t position; + getPosition(&position); + mDrmManagerClient->setPlaybackStatus(mDecryptHandle, + Playback::START, position / 1000); + } + if (mAudioSource != NULL) { if (mAudioPlayer == NULL) { if (mAudioSink != NULL) { @@ -543,6 +550,11 @@ status_t AwesomePlayer::play_l() { mFlags &= ~(PLAYING | FIRST_FRAME); + if (mDecryptHandle != NULL) { + mDrmManagerClient->setPlaybackStatus(mDecryptHandle, + Playback::STOP, 0); + } + return err; } @@ -582,13 +594,6 @@ status_t AwesomePlayer::play_l() { seekTo_l(0); } - if (mDecryptHandle != NULL) { - int64_t position; - getPosition(&position); - mDrmManagerClient->setPlaybackStatus(mDecryptHandle, - Playback::START, position / 1000); - } - return OK; }