From e125bba94afe74df330c661ab0a64b1e9e2ac5b7 Mon Sep 17 00:00:00 2001 From: aarti jadhav-gaikwad Date: Thu, 19 Jun 2014 17:43:01 +0530 Subject: stagefright: Return correct play position after EOS In case of offload getOutputPlayPositionUs_l returns zero on reaching EOS. Return duration as position. Bug: 15770459 Change-Id: I7aeafdc315a86ccd197d555d604e1069eead3153 --- media/libstagefright/AudioPlayer.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'media') diff --git a/media/libstagefright/AudioPlayer.cpp b/media/libstagefright/AudioPlayer.cpp index 04fc88b..e24824b 100644 --- a/media/libstagefright/AudioPlayer.cpp +++ b/media/libstagefright/AudioPlayer.cpp @@ -766,6 +766,11 @@ int64_t AudioPlayer::getMediaTimeUs() { if (mSeeking) { return mSeekTimeUs; } + if (mReachedEOS) { + int64_t durationUs; + mSource->getFormat()->findInt64(kKeyDuration, &durationUs); + return durationUs; + } mPositionTimeRealUs = getOutputPlayPositionUs_l(); ALOGV("getMediaTimeUs getOutputPlayPositionUs_l() mPositionTimeRealUs %" PRId64, mPositionTimeRealUs); -- cgit v1.1