# HG changeset patch # User arpi # Date 1022191109 0 # Node ID 020bfd8ac9ef48586650678653faa8349b6af450 # Parent 9b40f17128cc054a477883d4f87f9281501a1eec - put back SystemTooSlow message - more tips for tooslow (ni vs cache) and buffer overflow (-ni) diff -r 9b40f17128cc -r 020bfd8ac9ef help_mp-en.h --- a/help_mp-en.h Thu May 23 21:01:56 2002 +0000 +++ b/help_mp-en.h Thu May 23 21:58:29 2002 +0000 @@ -112,6 +112,7 @@ " 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 @@ #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" diff -r 9b40f17128cc -r 020bfd8ac9ef mplayer.c --- a/mplayer.c Thu May 23 21:01:56 2002 +0000 +++ b/mplayer.c Thu May 23 21:58:29 2002 +0000 @@ -1639,13 +1639,8 @@ // 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 @@ 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;