diff options
Diffstat (limited to 'libvideoeditor')
-rw-r--r-- | libvideoeditor/lvpp/PreviewPlayer.cpp | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/libvideoeditor/lvpp/PreviewPlayer.cpp b/libvideoeditor/lvpp/PreviewPlayer.cpp index 7ad822b..a23e6ca 100644 --- a/libvideoeditor/lvpp/PreviewPlayer.cpp +++ b/libvideoeditor/lvpp/PreviewPlayer.cpp @@ -745,9 +745,17 @@ void PreviewPlayer::onVideoEvent() { continue; } // So video playback is complete, but we may still have - // a seek request pending that needs to be applied
// to the audio track.
if (mSeeking) {
LOGV("video stream ended while seeking!");
}
finishSeekIfNecessary(-1);
+ // a seek request pending that needs to be applied to the audio track + if (mSeeking) { + LOGV("video stream ended while seeking!"); + } + finishSeekIfNecessary(-1); LOGV("PreviewPlayer: onVideoEvent EOS reached."); mFlags |= VIDEO_AT_EOS; + if (mOverlayUpdateEventPosted) { + mOverlayUpdateEventPosted = false; + postOverlayUpdateEvent_l(); + } postStreamDoneEvent_l(err); return; } @@ -828,7 +836,9 @@ void PreviewPlayer::onVideoEvent() { int64_t latenessUs = nowUs - timeUs; if (wasSeeking) { - // Let's display the first frame after seeking right away.
latenessUs = 0;
}
+ // Let's display the first frame after seeking right away. + latenessUs = 0; + } LOGV("Audio time stamp = %lld and video time stamp = %lld", ts->getRealTimeUs(),timeUs); if (latenessUs > 40000) { @@ -989,6 +999,10 @@ void PreviewPlayer::onVideoEvent() { LOGV("PreviewPlayer: onVideoEvent EOS."); mFlags |= VIDEO_AT_EOS; mFlags |= AUDIO_AT_EOS; + if (mOverlayUpdateEventPosted) { + mOverlayUpdateEventPosted = false; + postOverlayUpdateEvent_l(); + } postStreamDoneEvent_l(ERROR_END_OF_STREAM); } else { |