summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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;