summaryrefslogtreecommitdiffstats
path: root/media
diff options
context:
space:
mode:
authorYunji Kim <yunji.kim@samsung.com>2013-06-02 17:39:30 +0100
committerDaniel Hillenbrand <codeworkx@cyanogenmod.org>2013-06-24 16:24:05 +0200
commit03fdfde372fa561739c03b2a7916b5090f07c8c4 (patch)
tree7f5473e3ad6c8aeac7eb3199d72005bf86b007f0 /media
parentc58721cbdcbfc46f550954a1c258d9b0529e4d81 (diff)
downloadframeworks_av-03fdfde372fa561739c03b2a7916b5090f07c8c4.zip
frameworks_av-03fdfde372fa561739c03b2a7916b5090f07c8c4.tar.gz
frameworks_av-03fdfde372fa561739c03b2a7916b5090f07c8c4.tar.bz2
libstagefright: Fix a video lag bug after audio reached EOS.
http://git.insignal.co.kr/samsung/exynos/android/platform/frameworks/av/commit/?h=exynos-jb&id=da4104e5f934633b4ba7fda06bc9ef3ba0f85a31 Change-Id: I14931cad92df48e1233c5a8a704bb18585b1795a
Diffstat (limited to 'media')
-rw-r--r--media/libstagefright/AwesomePlayer.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/media/libstagefright/AwesomePlayer.cpp b/media/libstagefright/AwesomePlayer.cpp
index ad221d1..1b1ba37 100644
--- a/media/libstagefright/AwesomePlayer.cpp
+++ b/media/libstagefright/AwesomePlayer.cpp
@@ -2218,6 +2218,18 @@ void AwesomePlayer::postCheckAudioStatusEvent(int64_t delayUs) {
return;
}
mAudioStatusEventPending = true;
+
+#ifdef EXYNOS4_ENHANCEMENTS
+ /*
+ * Do not honor delay when audio reached EOS
+ * in order to change immediately time source from AudioPlayer to SystemTime
+ */
+ status_t finalStatus;
+ if (mWatchForAudioEOS && mAudioPlayer->reachedEOS(&finalStatus)) {
+ delayUs = 0;
+ }
+#endif
+
// Do not honor delay when looping in order to limit audio gap
if (mFlags & (LOOPING | AUTO_LOOPING)) {
delayUs = 0;