diff options
| author | 2011-12-12 15:29:46 -0800 | |
|---|---|---|
| committer | 2011-12-12 15:29:46 -0800 | |
| commit | b7e0281900db002e9aed8dff0e2fbcd8b22bf91d (patch) | |
| tree | 90bf33482ae9e5ffa42a49e5ba85c05b501e093a | |
| parent | 7cb77c1a0d86b0fbc8774cd90cc81debc3508be1 (diff) | |
| parent | 406dd5d1e48752177753666867403542e1f400ca (diff) | |
am 406dd5d1: am aadbd80b: Fixed the false drm recognition.
* commit '406dd5d1e48752177753666867403542e1f400ca':
Fixed the false drm recognition.
| -rw-r--r-- | media/libstagefright/AwesomePlayer.cpp | 24 | ||||
| -rw-r--r-- | media/libstagefright/MediaExtractor.cpp | 3 |
2 files changed, 17 insertions, 10 deletions
diff --git a/media/libstagefright/AwesomePlayer.cpp b/media/libstagefright/AwesomePlayer.cpp index 8405264d2f47..19c1a6543a61 100644 --- a/media/libstagefright/AwesomePlayer.cpp +++ b/media/libstagefright/AwesomePlayer.cpp @@ -335,11 +335,13 @@ status_t AwesomePlayer::setDataSource_l( return UNKNOWN_ERROR; } - dataSource->getDrmInfo(mDecryptHandle, &mDrmManagerClient); - if (mDecryptHandle != NULL) { - CHECK(mDrmManagerClient); - if (RightsStatus::RIGHTS_VALID != mDecryptHandle->status) { - notifyListener_l(MEDIA_ERROR, MEDIA_ERROR_UNKNOWN, ERROR_DRM_NO_LICENSE); + if (extractor->getDrmFlag()) { + dataSource->getDrmInfo(mDecryptHandle, &mDrmManagerClient); + if (mDecryptHandle != NULL) { + CHECK(mDrmManagerClient); + if (RightsStatus::RIGHTS_VALID != mDecryptHandle->status) { + notifyListener_l(MEDIA_ERROR, MEDIA_ERROR_UNKNOWN, ERROR_DRM_NO_LICENSE); + } } } @@ -2113,12 +2115,14 @@ status_t AwesomePlayer::finishSetDataSource_l() { } } - dataSource->getDrmInfo(mDecryptHandle, &mDrmManagerClient); + if (extractor->getDrmFlag()) { + dataSource->getDrmInfo(mDecryptHandle, &mDrmManagerClient); - if (mDecryptHandle != NULL) { - CHECK(mDrmManagerClient); - if (RightsStatus::RIGHTS_VALID != mDecryptHandle->status) { - notifyListener_l(MEDIA_ERROR, MEDIA_ERROR_UNKNOWN, ERROR_DRM_NO_LICENSE); + if (mDecryptHandle != NULL) { + CHECK(mDrmManagerClient); + if (RightsStatus::RIGHTS_VALID != mDecryptHandle->status) { + notifyListener_l(MEDIA_ERROR, MEDIA_ERROR_UNKNOWN, ERROR_DRM_NO_LICENSE); + } } } diff --git a/media/libstagefright/MediaExtractor.cpp b/media/libstagefright/MediaExtractor.cpp index 2171492624d0..d65dc51114b0 100644 --- a/media/libstagefright/MediaExtractor.cpp +++ b/media/libstagefright/MediaExtractor.cpp @@ -114,6 +114,9 @@ sp<MediaExtractor> MediaExtractor::Create( ret = new AVIExtractor(source); } else if (!strcasecmp(mime, MEDIA_MIMETYPE_CONTAINER_WVM)) { ret = new WVMExtractor(source); + if (ret != NULL) { + isDrm = true; + } } else if (!strcasecmp(mime, MEDIA_MIMETYPE_AUDIO_AAC_ADTS)) { ret = new AACExtractor(source, meta); } else if (!strcasecmp(mime, MEDIA_MIMETYPE_CONTAINER_MPEG2PS)) { |