ffplay: only drop frames if not in frame step mode
authorMarton Balint <cus@passwd.hu>
Wed, 26 Dec 2012 18:53:58 +0000 (19:53 +0100)
committerMarton Balint <cus@passwd.hu>
Fri, 28 Dec 2012 19:00:07 +0000 (20:00 +0100)
Fixes ticket #2053.

Signed-off-by: Marton Balint <cus@passwd.hu>
ffplay.c

index 070fbd7..f9ea20d 100644 (file)
--- a/ffplay.c
+++ b/ffplay.c
@@ -1339,7 +1339,7 @@ retry:
             if (is->pictq_size > 1) {
                 VideoPicture *nextvp = &is->pictq[(is->pictq_rindex + 1) % VIDEO_PICTURE_QUEUE_SIZE];
                 duration = nextvp->pts - vp->pts;
             if (is->pictq_size > 1) {
                 VideoPicture *nextvp = &is->pictq[(is->pictq_rindex + 1) % VIDEO_PICTURE_QUEUE_SIZE];
                 duration = nextvp->pts - vp->pts;
-                if((framedrop>0 || (framedrop && get_master_sync_type(is) != AV_SYNC_VIDEO_MASTER)) && time > is->frame_timer + duration){
+                if(!is->step && (framedrop>0 || (framedrop && get_master_sync_type(is) != AV_SYNC_VIDEO_MASTER)) && time > is->frame_timer + duration){
                     is->frame_drops_late++;
                     pictq_next_picture(is);
                     goto retry;
                     is->frame_drops_late++;
                     pictq_next_picture(is);
                     goto retry;