From 6f434482331b55876cb09c638149c21ca40c7690 Mon Sep 17 00:00:00 2001 From: Marco Nelissen Date: Fri, 20 Jul 2012 09:50:46 -0700 Subject: Ensure MEDIA_INFO_BUFFERING_END is always sent b/6620761 Change-Id: Iafd2eeac7b3cbbeb42af3638628a32dc6c2bb414 --- media/libstagefright/AwesomePlayer.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'media/libstagefright/AwesomePlayer.cpp') diff --git a/media/libstagefright/AwesomePlayer.cpp b/media/libstagefright/AwesomePlayer.cpp index 2c68075..661d7cd 100644 --- a/media/libstagefright/AwesomePlayer.cpp +++ b/media/libstagefright/AwesomePlayer.cpp @@ -710,7 +710,6 @@ void AwesomePlayer::onBufferingUpdate() { kHighWaterMarkBytes); modifyFlags(CACHE_UNDERRUN, CLEAR); play_l(); - notifyListener_l(MEDIA_INFO, MEDIA_INFO_BUFFERING_END); } else if (mFlags & PREPARING) { ALOGV("cache has filled up (> %d), prepare is done", kHighWaterMarkBytes); @@ -770,7 +769,6 @@ void AwesomePlayer::onBufferingUpdate() { cachedDurationUs / 1E6); play_l(); } - notifyListener_l(MEDIA_INFO, MEDIA_INFO_BUFFERING_END); } else if (mFlags & PREPARING) { ALOGV("cache has filled up (%.2f secs), prepare is done", cachedDurationUs / 1E6); @@ -2626,6 +2624,9 @@ void AwesomePlayer::modifyFlags(unsigned value, FlagMode mode) { mFlags |= value; break; case CLEAR: + if ((value & CACHE_UNDERRUN) && (mFlags & CACHE_UNDERRUN)) { + notifyListener_l(MEDIA_INFO, MEDIA_INFO_BUFFERING_END); + } mFlags &= ~value; break; case ASSIGN: -- cgit v1.1