diff --git a/mencoder.c b/mencoder.c index beed3a1e71..8e1a454252 100644 --- a/mencoder.c +++ b/mencoder.c @@ -1273,6 +1273,8 @@ default: if (sh_video->vf_inited < 0) mencoder_exit(1, NULL); if(!blit_frame){ + if (play_n_frames >= 0) + play_n_frames++; badframes++; if(skip_flag<=0){ // unwanted skipping of a frame, what to do? diff --git a/mplayer.c b/mplayer.c index 5e19a12515..a136314a0b 100644 --- a/mplayer.c +++ b/mplayer.c @@ -2240,11 +2240,6 @@ if(play_n_frames==0){ while(!eof){ float aq_sleep_time=0; - if(play_n_frames>=0){ - --play_n_frames; - if(play_n_frames<0) eof = PT_NEXT_ENTRY; - } - /*========================== PLAY AUDIO ============================*/ while(sh_audio){ @@ -2521,6 +2516,11 @@ if(time_frame>0.001 && !(vo_flags&256)){ /* printf ("PANIC: too slow frame (%.3f)!\n", j); */ if(vo_config_count) video_out->flip_page(); + if (play_n_frames >= 0) { + --play_n_frames; + if (play_n_frames < 0) eof = PT_NEXT_ENTRY; + } + // usec_sleep(50000); // test only! t2=GetTimer()-t2; tt = t2*0.000001f;