From 7cda631948ca077855f76b20571784cbaf978ac9 Mon Sep 17 00:00:00 2001 From: Li Sun Date: Sat, 19 Sep 2015 00:11:04 +0800 Subject: RTSP: add default implementations in NuPlayer for rtsp changes Change access modifiers in NuPlayer and add the util function in AVNuUtils Change-Id: I365cce317b4478cd1d12e458b5849ea842062a28 --- media/libavextensions/mediaplayerservice/AVNuExtensions.h | 1 + media/libavextensions/mediaplayerservice/AVNuUtils.cpp | 4 ++++ media/libmediaplayerservice/nuplayer/NuPlayer.h | 2 +- media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp | 1 + 4 files changed, 7 insertions(+), 1 deletion(-) (limited to 'media') diff --git a/media/libavextensions/mediaplayerservice/AVNuExtensions.h b/media/libavextensions/mediaplayerservice/AVNuExtensions.h index a10937d..9aa4cde 100644 --- a/media/libavextensions/mediaplayerservice/AVNuExtensions.h +++ b/media/libavextensions/mediaplayerservice/AVNuExtensions.h @@ -83,6 +83,7 @@ struct AVNuUtils { virtual void printFileName(int fd); virtual void checkFormatChange(bool *formatChange, const sp &accessUnit); + virtual void addFlagsInMeta(const sp &buffer, int32_t flags, bool isAudio); // ----- NO TRESSPASSING BEYOND THIS LINE ------ DECLARE_LOADABLE_SINGLETON(AVNuUtils); diff --git a/media/libavextensions/mediaplayerservice/AVNuUtils.cpp b/media/libavextensions/mediaplayerservice/AVNuUtils.cpp index 20149b3..08a96a3 100644 --- a/media/libavextensions/mediaplayerservice/AVNuUtils.cpp +++ b/media/libavextensions/mediaplayerservice/AVNuUtils.cpp @@ -142,6 +142,10 @@ void AVNuUtils::checkFormatChange(bool * /*formatChange*/, const sp & /*accessUnit*/) { } +void AVNuUtils::addFlagsInMeta(const sp & /*buffer*/, + int32_t /*flags*/, bool /*isAudio*/) { +} + // ----- NO TRESSPASSING BEYOND THIS LINE ------ AVNuUtils::AVNuUtils() {} diff --git a/media/libmediaplayerservice/nuplayer/NuPlayer.h b/media/libmediaplayerservice/nuplayer/NuPlayer.h index c0aa782..73e196e 100644 --- a/media/libmediaplayerservice/nuplayer/NuPlayer.h +++ b/media/libmediaplayerservice/nuplayer/NuPlayer.h @@ -261,7 +261,7 @@ protected: void processDeferredActions(); - void performSeek(int64_t seekTimeUs); + virtual void performSeek(int64_t seekTimeUs); void performDecoderFlush(FlushCommand audio, FlushCommand video); void performReset(); void performScanSources(); diff --git a/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp b/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp index 2b164ac..b84453b 100644 --- a/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp +++ b/media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp @@ -590,6 +590,7 @@ bool NuPlayer::Decoder::handleAnOutputBuffer( buffer->meta()->clear(); buffer->meta()->setInt64("timeUs", timeUs); setPcmFormat(buffer->meta()); + AVNuUtils::get()->addFlagsInMeta(buffer, flags, mIsAudio); bool eos = flags & MediaCodec::BUFFER_FLAG_EOS; // we do not expect CODECCONFIG or SYNCFRAME for decoder -- cgit v1.1