diff --git a/ffplay.c b/ffplay.c
index 1c3aa63e897820b54d38b3555ed57a9db939d2b0..2504878bd4f8955f5848dcede262944af54cac26 100644
--- a/ffplay.c
+++ b/ffplay.c
@@ -984,8 +984,9 @@ static void stream_seek(VideoState *is, int64_t pos, int rel)
 static void stream_pause(VideoState *is)
 {
     is->paused = !is->paused;
-    if (is->paused) {
+    if (!is->paused) {
         is->video_current_pts = get_video_clock(is);
+        is->frame_timer += (av_gettime() - is->video_current_pts_time) / 1000000.0;
     }
 }