diff options
Diffstat (limited to 'media')
-rw-r--r-- | media/libmediaplayerservice/nuplayer/GenericSource.cpp | 8 | ||||
-rw-r--r-- | media/libstagefright/MediaExtractor.cpp | 5 |
2 files changed, 8 insertions, 5 deletions
diff --git a/media/libmediaplayerservice/nuplayer/GenericSource.cpp b/media/libmediaplayerservice/nuplayer/GenericSource.cpp index e380f0a..beda8bd 100644 --- a/media/libmediaplayerservice/nuplayer/GenericSource.cpp +++ b/media/libmediaplayerservice/nuplayer/GenericSource.cpp @@ -141,14 +141,14 @@ status_t NuPlayer::GenericSource::initFromDataSource() { sp<MediaExtractor> extractor; String8 mimeType; float confidence; - sp<AMessage> dummy; + sp<AMessage> meta; bool isWidevineStreaming = false; CHECK(mDataSource != NULL); if (mIsWidevine) { isWidevineStreaming = SniffWVM( - mDataSource, &mimeType, &confidence, &dummy); + mDataSource, &mimeType, &confidence, &meta); if (!isWidevineStreaming || strcasecmp( mimeType.string(), MEDIA_MIMETYPE_CONTAINER_WVM)) { @@ -161,7 +161,7 @@ status_t NuPlayer::GenericSource::initFromDataSource() { Mutex::Autolock _l(mSourceLock); dataSource = mDataSource; } - if (!dataSource->sniff(&mimeType, &confidence, &dummy)) { + if (!dataSource->sniff(&mimeType, &confidence, &meta)) { return UNKNOWN_ERROR; } isWidevineStreaming = !strcasecmp( @@ -186,7 +186,7 @@ status_t NuPlayer::GenericSource::initFromDataSource() { #endif extractor = MediaExtractor::Create(mDataSource, mimeType.isEmpty() ? NULL : mimeType.string(), - mIsStreaming ? 0 : flags); + mIsStreaming ? 0 : flags, &meta); } if (extractor == NULL) { diff --git a/media/libstagefright/MediaExtractor.cpp b/media/libstagefright/MediaExtractor.cpp index ef0524a..ac6decdb6 100644 --- a/media/libstagefright/MediaExtractor.cpp +++ b/media/libstagefright/MediaExtractor.cpp @@ -57,7 +57,8 @@ uint32_t MediaExtractor::flags() const { // static sp<MediaExtractor> MediaExtractor::Create( const sp<DataSource> &source, const char *mime, - const uint32_t flags) { + const uint32_t flags, const sp<AMessage> *prevMeta) { + sp<AMessage> meta; String8 tmp; @@ -72,6 +73,8 @@ sp<MediaExtractor> MediaExtractor::Create( mime = tmp.string(); ALOGV("Autodetected media content as '%s' with confidence %.2f", mime, confidence); + } else if (prevMeta != NULL) { + meta = *prevMeta; } bool isDrm = false; |