Index: main/mplayer.c =================================================================== RCS file: /cvsroot/mplayer/main/mplayer.c,v retrieving revision 1.354 diff -u -r1.354 mplayer.c --- main/mplayer.c 27 Dec 2001 00:59:40 -0000 1.354 +++ main/mplayer.c 27 Dec 2001 23:57:28 -0000 @@ -1298,6 +1298,7 @@ } sh_video->timer=0; + sh_video->last_resync_time=0; if(sh_audio) sh_audio->timer=-audio_delay; if(!sh_audio){ @@ -1673,9 +1674,9 @@ if(!quiet) mp_msg(MSGT_AVSYNC,MSGL_STATUS,"A:%6.1f V:%6.1f A-V:%7.3f ct:%7.3f %3d/%3d %2d%% %2d%% %4.1f%% %d %d %d%%\r", a_pts-audio_delay-delay,v_pts,AV_delay,c_total, (int)sh_video->num_frames,(int)sh_video->num_frames_decoded, - (sh_video->timer>0.5)?(int)(100.0*video_time_usage/(double)sh_video->timer):0, - (sh_video->timer>0.5)?(int)(100.0*vout_time_usage/(double)sh_video->timer):0, - (sh_video->timer>0.5)?(100.0*audio_time_usage/(double)sh_video->timer):0 + (sh_video->timer>sh_video->last_resync_time+0.5)?(int)(100.0*video_time_usage/(double)sh_video->timer):0, + (sh_video->timer>sh_video->last_resync_time+0.5)?(int)(100.0*vout_time_usage/(double)sh_video->timer):0, + (sh_video->timer>sh_video->last_resync_time+0.5)?(100.0*audio_time_usage/(double)sh_video->timer):0 ,drop_frame_cnt ,output_quality ,cache_fill_status @@ -2119,7 +2120,7 @@ c_total=0; max_pts_correction=0.1; osd_visible=sh_video->fps; // to rewert to PLAY pointer after 1 sec - audio_time_usage=0; video_time_usage=0; vout_time_usage=0; + audio_time_usage=vout_time_usage=video_time_usage; drop_frame_cnt=0; too_slow_frame_cnt=0; too_fast_frame_cnt=0; Index: main/libmpdemux/demuxer.c =================================================================== RCS file: /cvsroot/mplayer/main/libmpdemux/demuxer.c,v retrieving revision 1.60 diff -u -r1.60 demuxer.c --- main/libmpdemux/demuxer.c 27 Dec 2001 02:08:31 -0000 1.60 +++ main/libmpdemux/demuxer.c 27 Dec 2001 23:57:50 -0000 @@ -670,8 +670,7 @@ demuxer->video->eof=0; demuxer->audio->eof=0; - if(sh_audio) sh_audio->timer=0; - sh_video->timer=0; // !!!!!! + if(sh_audio) sh_audio->timer=sh_video->last_resync_time=sh_video->timer; switch(demuxer->file_format){ Index: main/libmpdemux/stheader.h =================================================================== RCS file: /cvsroot/mplayer/main/libmpdemux/stheader.h,v retrieving revision 1.21 diff -u -r1.21 stheader.h --- main/libmpdemux/stheader.h 21 Dec 2001 16:17:24 -0000 1.21 +++ main/libmpdemux/stheader.h 27 Dec 2001 23:58:05 -0000 @@ -50,6 +50,7 @@ int inited; // output format: float timer; // value of old v_frame + float last_resync_time; // time of last resync (used for benchmarking) float fps; float frametime; // 1/fps int i_bps; // == bitrate (compressed bytes/sec)