[MPlayer-users] 3-pass encodes with ogg vorbis?
*
afe0108 at yahoo.com
Mon Jan 19 08:16:56 CET 2004
--- D Richard Felker III <dalias at aerifal.cx> wrote:
> On Sat, Jan 17, 2004 at 01:43:09PM -0800, * wrote:
> > --- D Richard Felker III <dalias at aerifal.cx> wrote:
> > > On Fri, Jan 16, 2004 at 10:53:20PM -0800, * wrote:
> > > > Hello, I was wondering if anyone is doing 3-pass encodes with
> > > > ogg vorbis and have the audio in sync? The first movie I did
> > > > was 25 fps and it worked but the few I've tried since then are
> > > > 29.97 progressive NTSC and the audio is always out of sync by
> > > > a noticeable amount.
> > >
> > > It's really 29.97 fps _progressive_? I've never heard of a whole movie
> > > like that...
> > >
> > Sorry I'm not sure what it's called? It's not interlaced anyway.
> > When I play the vob it first says for example:
> >
> > VIDEO: MPEG2 720x480 (aspect 3) 29.970 fps 9800.0 kbps (1225.0
> kbyte/s)
> > [V] filefmt:2 fourcc:0x10000002 size:720x480 fps:29.97 ftime:=0.0334
> >
> > And when it actually starts playing it quickly says:
> >
> > demux_mpg: 24fps progressive NTSC content detected, switching framerate.
>
> Then it's 24 fps (actually 23.976), not 29.97, right? :)
>
> > > > Am I doing something wrong or is this a known (but not widely
> > > > discussed) problem? To pullup the 29.97 I've been using the
> > > > "pullup" filter. Using "ivtc=1" or "filmdint=dint_thres=256"
> > > > gives me jerky video for some reason on non-interlaced movies.
> > >
> > > How can we know if you're doing something wrong if you don't provide
> > > the command lines used? At least tell us what you mean by 3pass, since
> > > the 3pass procedure in mencoder makes absolutely no sense if you're
> > > not using mencoder to encode the audio (and does NOT work with -oac
> > > copy).
> > >
> > > Rich
> > >
> > Okay, I hope this isn't too verbose. First I extract the audio with
> > transcode and encode with oggenc, for example:
> >
> > transcode -i vob/ -o /dev/null -a 0 -s 1.650 -a52_drc_off
> > -x null,vob -y raw -N 0x1 --export_fps 23.976,1 -m audio.pcm
> >
> > oggenc -r -C2 -R48000 -q 0 -o audio.ogg audio.pcm
> >
> > (It shouldn't matter what I extract the audio with right? If not, I
> > guess that could be my problem.) Next I encode the video:
>
> Shouldn't matter. I'd use mplayer -ao pcm, but tc should be ok too.
>
> > cat VTS_01_1.VOB VTS_01_2.VOB VTS_01_3.VOB VTS_01_4.VOB |
> > mencoder -oac copy -ovc lavc -lavcopts mbd=2:mv0:trell:cbp:precmp=2
> > :cmp=2:subcmp=2:vmax_b_frames=1:predia=2:dia=2:preme=2:vme=4:v4mv
> > :vbitrate=856:vpass=1 -vf crop=720:362:0:56,scale=720:304,pullup
> > -ofps 23.976 -o /dev/null -
>
> The fine manual says:
>
> NOTE: Presently pullup lacks any way to cap the output framerate, so
> during 30 fps progressive sequences or stills, it will output more
> than 24 fps, meaning you'll have trouble if you use it with mencoder
> -ofps 23.976.
>
> Here "trouble" could be anything from bad frames to crashing to a-v
> desync.
>
> If your movie is 23.976 fps to begin with (demux_mpg: 24fps
> progressive NTSC content detected, switching framerate.) then there's
> no need to use pullup. It will just make encoding a lot slower. Just
> use -ofps 23.976 by itself.
>
> Anyway, my guess is that you a/v desync is caused by passing the vobs
> to mencoder with "cat". This does NOT work correctly, despite the
> examples in the (outdated) docs. You should instead be using
> -dvd-device /path/to/vobs dvd://1 (or whatever the title number is).
>
> Rich
>
Beautiful, this works. To eliminate the transcode variable I used
mplayer to extract the audio:
mplayer -vc dummy -vo null -ao pcm -aofile audio.pcm -aid 128
-nowaveheader dvd://1
Then continued as above but using dvd://1 instead of stdin. The
A/V was perfectly in sync- no more having to read lips. Also, not
using pullup turned a 10 hr encode into only 8 hrs.
I still plan to use transcode to find the audio normalization and
bitrate. And in the case I have several vob files I assume I could
combine them with tccat, then feed that to mencoder as a file.
Thanks for the help!
__________________________________
Do you Yahoo!?
Yahoo! Hotjobs: Enter the "Signing Bonus" Sweepstakes
http://hotjobs.sweepstakes.yahoo.com/signingbonus
More information about the MPlayer-users
mailing list