diff options
| author | 2010-10-29 15:47:52 -0700 | |
|---|---|---|
| committer | 2010-11-01 09:35:36 -0700 | |
| commit | 614d22c7f6d5abae8434d2e83f1c7d10c534b43c (patch) | |
| tree | 3d8f9bba3caa173540e3f1a8b6c0e911d4c2c329 | |
| parent | 6b21cdeb5f0127862d82f24a4b6001f495e3c8cd (diff) | |
After seeking display the first new video frame right away without concern for A/V sync. This looks much more responsive to the user.
related-to-bug: 3152363
Change-Id: Ia097bf61ca05e01365357cb23ff83e2ad417f3fd
| -rw-r--r-- | media/libstagefright/AwesomePlayer.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/media/libstagefright/AwesomePlayer.cpp b/media/libstagefright/AwesomePlayer.cpp index 60a41bfe8af3..6954e366995e 100644 --- a/media/libstagefright/AwesomePlayer.cpp +++ b/media/libstagefright/AwesomePlayer.cpp @@ -1298,6 +1298,7 @@ void AwesomePlayer::onVideoEvent() { mVideoTimeUs = timeUs; } + bool wasSeeking = mSeeking; finishSeekIfNecessary(timeUs); TimeSource *ts = (mFlags & AUDIO_AT_EOS) ? &mSystemTimeSource : mTimeSource; @@ -1318,6 +1319,11 @@ void AwesomePlayer::onVideoEvent() { int64_t latenessUs = nowUs - timeUs; + if (wasSeeking) { + // Let's display the first frame after seeking right away. + latenessUs = 0; + } + if (mRTPSession != NULL) { // We'll completely ignore timestamps for gtalk videochat // and we'll play incoming video as fast as we get it. |