From eecb7805bbbb712925d4372c505f8c7f5c4fb5ed Mon Sep 17 00:00:00 2001 From: Ronghua Wu Date: Sun, 19 Oct 2014 23:12:50 -0700 Subject: NuPlayer: set anchor time for each audio buffer. And use anchor time to compute current position Bug: 17999949 Bug: 18008307 Bug: 18032127 Change-Id: Ie493c9a1d45d7b788aef65d863f710da6326fcc1 --- media/libmediaplayerservice/nuplayer/NuPlayerRenderer.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'media/libmediaplayerservice/nuplayer/NuPlayerRenderer.h') diff --git a/media/libmediaplayerservice/nuplayer/NuPlayerRenderer.h b/media/libmediaplayerservice/nuplayer/NuPlayerRenderer.h index 3e30226..7079f85 100644 --- a/media/libmediaplayerservice/nuplayer/NuPlayerRenderer.h +++ b/media/libmediaplayerservice/nuplayer/NuPlayerRenderer.h @@ -65,7 +65,7 @@ struct NuPlayer::Renderer : public AHandler { void setHasMedia(bool audio); void setAudioFirstAnchorTime(int64_t mediaUs); void setAudioFirstAnchorTimeIfNeeded(int64_t mediaUs); - void setVideoAnchorTime(int64_t mediaUs, int64_t realUs); + void setAnchorTime(int64_t mediaUs, int64_t realUs, bool resume = false); void setVideoLateByUs(int64_t lateUs); int64_t getVideoLateByUs(); void setPauseStartedTimeRealUs(int64_t realUs); @@ -144,8 +144,8 @@ private: // |mTimeLock|. // TODO: move those members to a seperated media clock class. int64_t mAudioFirstAnchorTimeMediaUs; - int64_t mVideoAnchorTimeMediaUs; - int64_t mVideoAnchorTimeRealUs; + int64_t mAnchorTimeMediaUs; + int64_t mAnchorTimeRealUs; int64_t mVideoLateByUs; bool mHasAudio; bool mHasVideo; @@ -176,6 +176,7 @@ private: int64_t getPlayedOutAudioDurationUs(int64_t nowUs); void postDrainAudioQueue_l(int64_t delayUs = 0); + void onNewAudioMediaTime(int64_t mediaTimeUs); int64_t getRealTimeUs(int64_t mediaTimeUs, int64_t nowUs); void onDrainVideoQueue(); -- cgit v1.1