diff options
author | Wei Jia <wjia@google.com> | 2014-09-03 21:23:57 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2014-09-03 21:23:57 +0000 |
commit | d3db0bfafc98305f867502c06de3ce415c97d3fb (patch) | |
tree | c218cc4311feff9bba5db8752834e3820d9befb3 /media/libmediaplayerservice | |
parent | d71233a846aca7035a851941c1530d04c6a65086 (diff) | |
parent | ac428aa54d2489705091dd38372bbaade281a92e (diff) | |
download | frameworks_av-d3db0bfafc98305f867502c06de3ce415c97d3fb.zip frameworks_av-d3db0bfafc98305f867502c06de3ce415c97d3fb.tar.gz frameworks_av-d3db0bfafc98305f867502c06de3ce415c97d3fb.tar.bz2 |
Merge "NuPlayer: add seek operation when change video texture surface." into lmp-dev
Diffstat (limited to 'media/libmediaplayerservice')
-rw-r--r-- | media/libmediaplayerservice/nuplayer/NuPlayer.cpp | 4 | ||||
-rw-r--r-- | media/libmediaplayerservice/nuplayer/NuPlayer.h | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/media/libmediaplayerservice/nuplayer/NuPlayer.cpp b/media/libmediaplayerservice/nuplayer/NuPlayer.cpp index 76d25de..ae22123 100644 --- a/media/libmediaplayerservice/nuplayer/NuPlayer.cpp +++ b/media/libmediaplayerservice/nuplayer/NuPlayer.cpp @@ -145,6 +145,7 @@ private: NuPlayer::NuPlayer() : mUIDValid(false), mSourceFlags(0), + mCurrentPositionUs(0), mVideoIsAVC(false), mOffloadAudio(false), mCurrentOffloadInfo(AUDIO_INFO_INITIALIZER), @@ -540,6 +541,8 @@ void NuPlayer::onMessageReceived(const sp<AMessage> &msg) { static_cast<NativeWindowWrapper *>(obj.get()))); if (obj != NULL) { + mDeferredActions.push_back(new SeekAction(mCurrentPositionUs)); + // If there is a new surface texture, instantiate decoders // again if possible. mDeferredActions.push_back( @@ -860,6 +863,7 @@ void NuPlayer::onMessageReceived(const sp<AMessage> &msg) { } else if (what == Renderer::kWhatPosition) { int64_t positionUs; CHECK(msg->findInt64("positionUs", &positionUs)); + mCurrentPositionUs = positionUs; CHECK(msg->findInt64("videoLateByUs", &mVideoLateByUs)); diff --git a/media/libmediaplayerservice/nuplayer/NuPlayer.h b/media/libmediaplayerservice/nuplayer/NuPlayer.h index 511d752..0c7f531 100644 --- a/media/libmediaplayerservice/nuplayer/NuPlayer.h +++ b/media/libmediaplayerservice/nuplayer/NuPlayer.h @@ -121,6 +121,7 @@ private: sp<Source> mSource; uint32_t mSourceFlags; sp<NativeWindowWrapper> mNativeWindow; + int64_t mCurrentPositionUs; sp<MediaPlayerBase::AudioSink> mAudioSink; sp<Decoder> mVideoDecoder; bool mVideoIsAVC; |