diff options
author | Wei Jia <wjia@google.com> | 2014-11-11 16:33:20 -0800 |
---|---|---|
committer | Wei Jia <wjia@google.com> | 2014-11-14 14:23:52 -0800 |
commit | c6cfd70f24a11b946859485ce398a189c301a4e2 (patch) | |
tree | 47238c67d7cf5f6bfdf6845c64966e5e1692eb12 /media/libmediaplayerservice/nuplayer/NuPlayerDecoderPassThrough.h | |
parent | 12acd3f0374e7707ff50c04f8075883be71b128c (diff) | |
download | frameworks_av-c6cfd70f24a11b946859485ce398a189c301a4e2.zip frameworks_av-c6cfd70f24a11b946859485ce398a189c301a4e2.tar.gz frameworks_av-c6cfd70f24a11b946859485ce398a189c301a4e2.tar.bz2 |
NuPlayer: tunnel decoder with renderer for data buffer passing.
Bug: 18342383
Change-Id: I182928007814c146c01a86196c4fda1d46e74ea4
Diffstat (limited to 'media/libmediaplayerservice/nuplayer/NuPlayerDecoderPassThrough.h')
-rw-r--r-- | media/libmediaplayerservice/nuplayer/NuPlayerDecoderPassThrough.h | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/media/libmediaplayerservice/nuplayer/NuPlayerDecoderPassThrough.h b/media/libmediaplayerservice/nuplayer/NuPlayerDecoderPassThrough.h index fb20257..7742d30 100644 --- a/media/libmediaplayerservice/nuplayer/NuPlayerDecoderPassThrough.h +++ b/media/libmediaplayerservice/nuplayer/NuPlayerDecoderPassThrough.h @@ -25,7 +25,9 @@ namespace android { struct NuPlayer::DecoderPassThrough : public Decoder { - DecoderPassThrough(const sp<AMessage> ¬ify); + DecoderPassThrough(const sp<AMessage> ¬ify, + const sp<Source> &source, + const sp<Renderer> &renderer); virtual void configure(const sp<AMessage> &format); virtual void init(); @@ -45,16 +47,15 @@ protected: private: enum { kWhatRequestABuffer = 'reqB', - kWhatConfigure = 'conf', - kWhatInputBufferFilled = 'inpF', kWhatBufferConsumed = 'bufC', - kWhatFlush = 'flus', - kWhatShutdown = 'shuD', }; sp<AMessage> mNotify; sp<ALooper> mDecoderLooper; + sp<Source> mSource; + sp<Renderer> mRenderer; + /** Returns true if a buffer was requested. * Returns false if at EOS or cache already full. */ @@ -68,6 +69,8 @@ private: void requestMaxBuffers(); void onShutdown(); + int64_t mSkipRenderingUntilMediaTimeUs; + int32_t mBufferGeneration; bool mReachedEOS; // TODO mPendingBuffersToFill and mPendingBuffersToDrain are only for |