[MPlayer-users] yum4mpeg audio sync broken
Fredrik Hubinette
hubbe at hubbe.net
Fri Jan 2 23:19:26 CET 2004
D Richard Felker III <dalias at aerifal.cx> writes:
> [Automatic answer: RTFM (read DOCS, FAQ), also read DOCS/bugreports.html]
> On Fri, Jan 02, 2004 at 02:07:09AM -0800, Fredrik Hubinette wrote:
> > [Automatic answer: RTFM (read DOCS, FAQ), also read DOCS/bugreports.html]
> >
> > I'm writing a script that uses mplayer as a first step in converting
> > movies of various formats to DVDs. However, I'm having various problems
> > with the audio sync, and while reading mplayer.c I came across this
> > code:
> >
> >
> > } else {
> > /*
> > Well, no blitting is needed, but some devices (such as yuv4mpeg) m\
> > ust output frame
> > otherwise A/V desync will occur. -- Alvieboy
> > */
> > if (vo_config_count)
> > video_out->control(VOCTRL_DUPLICATE_FRAME, NULL);
> > }
> >
> >
> > As far as I can tell, this code is wrong. Frame dropping is done specifically
> > to *preserve* A/V sync, and the code above prevents that from working.
>
> No, it's not. This code is to handle avi files with duplicate frames.
> If you're getting a/v desync, something else is wrong.
Read the source again.
The code above may be there to handle duplicate frames, but it also
prevents frame dropping from working.
> > I also noticed that there doesn't seem to be any code that can generate
> > extra frames if the audio should fall behind the video. The code for
> > this seems to exist in mencoder, but unfortunately mencoder cannot output
> > yuv4mpeg...
> >
> > In my script I currently have a workaround that reads the "ct:" part of
> > the mplayer output and drops frames if ct becomes too large, but it's
> > a really really really ugly workaround.
>
> vo_yuv4mpeg really doesn't work. You should try mencoder with rawyuv
> avi output instead.
Would you mind backing up that statement?
As far as I can tell, it works just fine as long as audio and video is
properly syncronized to begin with.
My mencoder doesn't seem to have a rawyuv output mode, what version of
mencoder would I need to have to use that? If I do manage to output
rawyuv, how would I stream that into mpeg2enc ?
/Hubbe
More information about the MPlayer-users
mailing list