diff options
-rw-r--r-- | help_mp-en.h | 4 | ||||
-rw-r--r-- | mplayer.c | 10 |
2 files changed, 8 insertions, 6 deletions
diff --git a/help_mp-en.h b/help_mp-en.h index 402d4a9446..64f33a3a4e 100644 --- a/help_mp-en.h +++ b/help_mp-en.h @@ -112,6 +112,7 @@ static char help_text[]= " with -framedrop ! Read DOCS/video.html for video tuning/speedup tips.\n"\ "- Slow cpu. don't try to playback big dvd/divx on slow cpu! try -hardframedrop\n"\ "- Broken file. try various combinations of these: -nobps -ni -mc 0 -forceidx\n"\ +"- You're using -cache to play a non-interleaved file? try with no cache...\n"\ "If none of these apply, then read DOCS/bugreports.html !\n\n" #define MSGTR_NoGui "MPlayer was compiled WITHOUT GUI support!\n" @@ -145,7 +146,8 @@ static char help_text[]= #define MSGTR_VideoStreamRedefined "Warning! video stream header %d redefined!\n" #define MSGTR_TooManyAudioInBuffer "\nDEMUXER: Too many (%d in %d bytes) audio packets in the buffer!\n" #define MSGTR_TooManyVideoInBuffer "\nDEMUXER: Too many (%d in %d bytes) video packets in the buffer!\n" -#define MSGTR_MaybeNI "(maybe you play a non-interleaved stream/file or the codec failed)\n" +#define MSGTR_MaybeNI "(maybe you play a non-interleaved stream/file or the codec failed)?\n" \ + "For .AVI files, try to force non-interleaved mode with option -ni\n" #define MSGTR_DetectedFILMfile "Detected FILM file format!\n" #define MSGTR_DetectedFLIfile "Detected FLI file format!\n" #define MSGTR_DetectedROQfile "Detected RoQ file format!\n" @@ -1639,13 +1639,8 @@ if(!sh_video) { // printf ("audio slp req: %.3f TF: %.3f delta: %.3f (v: %.3f a: %.3f) | ", i, time_frame, // i - time_frame, sh_video->timer, sh_audio->timer - (float)((float)delay / (float)sh_audio->o_bps)); if(SH_AV_delay<-2*frame_time){ - static int drop_message=0; drop_frame=frame_dropping; // tricky! ++drop_frame_cnt; - if(drop_frame_cnt>50 && AV_delay>0.5 && !drop_message){ - drop_message=1; - mp_msg(MSGT_AVSYNC,MSGL_WARN,MSGTR_SystemTooSlow); - } mp_msg(MSGT_AVSYNC,MSGL_INFO,"A-V SYNC: FRAMEDROP (SH_AV_delay=%.3f)!\n", SH_AV_delay); mp_msg(MSGT_AVSYNC,MSGL_DBG2,"\nframe drop %d, %.2f\n", drop_frame, time_frame); /* go into unlimited-TF cycle */ @@ -1792,8 +1787,13 @@ if(time_frame>0.001 && !(vo_flags&256)){ mp_dbg(MSGT_AVSYNC,MSGL_DBG2,"### A:%8.3f (%8.3f) V:%8.3f A-V:%7.4f \n",a_pts,a_pts-audio_delay-delay,v_pts,(a_pts-delay-audio_delay)-v_pts); if(delay_corrected){ + static int drop_message=0; float x; AV_delay=(a_pts-delay-audio_delay)-v_pts; + if(drop_frame_cnt>50+drop_message*250 && AV_delay>0.5){ + ++drop_message; + mp_msg(MSGT_AVSYNC,MSGL_WARN,MSGTR_SystemTooSlow); + } x=AV_delay*0.1f; if(x<-max_pts_correction) x=-max_pts_correction; else if(x> max_pts_correction) x= max_pts_correction; |