[MEncoder-users] a/v desync when encoding combined 24000/1001 30000/1 fps NTSC DVD

belcampo belcampo at zonnet.nl
Tue Feb 24 09:52:45 CET 2009


Sergey Kovalev wrote:
> I would like to encode several iso-dvds to something smaller.
> ISO in question is attached as /dev/md0 on my freebsd box.
> While playing it I sometimes get messages at fixed points
> 
> $ mplayer dvd://1
> MPlayer 1.0rc2-4.2.1 (C) 2000-2007 MPlayer Team
> CPU: AMD Athlon(tm) XP 2500+ (Family: 6, Model: 10, Stepping: 0)
> CPUflags:  MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 1 SSE2: 0
> Compiled for x86 CPU with extensions: MMX MMX2 3DNow 3DNowEx SSE
> 
> A: 182.9 V: 182.9 A-V: -0.000 ct:  0.054 5475/5472  4%  0%  1.7% 6 0
> demux_mpg: 24000/1001fps progressive NTSC content detected, switching 
> framerate
> A: 201.9 V: 201.9 A-V:  0.022 ct:  0.080 5931/5928  4%  0%  1.8% 6 0
> demux_mpg: 30000/1001fps NTSC content detected, switching framerate.
> Warning! FPS changed 23.976 -> 29.970  (-5.994005) [4]  0%  1.8% 6 0
> A: 286.8 V: 286.8 A-V:  0.004 ct:  0.138 8476/8470  6%  0%  2.5% 6 0
> demux_mpg: 24000/1001fps progressive NTSC content detected, switching 
> framerate
> etc.
> 
> So I've decided that I have "11.2.3.4. Mixed progressive and telecine" 
> according to documentation. The problem arises when I try to encode 
> audio. When I copy with -oac copy everything is fine, 448 kbit/s ac3 
> stream is preserved.
> But when I encode audio reducing abitrate, I do two-pass encoding with a 
> shell script:
> 
> mencoder dvd://1 -chapter 3-3 -aid 129 \
>      -ofps 24000/1001 -oac lavc -o $fname -ovc lavc -lavcopts \
>      vcodec=mpeg4:vbitrate=1152:mbd=2:trell:v4mv:autoaspect:vpass=$i \
>      -vf pullup,softskip,crop=656:352:32:64
> 
> where $fname and $i are shell variables with corresponding values.
> 
> The resulting avi shows enormous a/v desync:
> A:15869.7 V:  25.9 A-V:15843.711 ct:  2.590 622/622  5%  1%  0.6% 0 0
> if I understand A:, V: and A-V: numbers correctly. Seeking on audio 
> stream is almost impossible. And forward seeking often leads to warnings:
> 
> Badly interleaved AVI file detected - switching to -ni mode...
> 
> Besides ct: value is always growing. That leads to the actual desync 
> which can only be avoided by using -mc 0 while playing.
> I've already tried "-vf filmdint", "-mc 0" "-*idx", but the results were 
> almost the same.
> Does anybody know why is this happening? I suppose I don't understand 
> something important here.
> _______________________________________________
> MEncoder-users mailing list
> MEncoder-users at mplayerhq.hu
> https://lists.mplayerhq.hu/mailman/listinfo/mencoder-users
I think you'll endup by dividing video and audio encoding then remuxing 
to what you  want.
In the end your sources are time x of video and time x audio. If you get 
a/v sync at the beginning it will be there at the end.

Henk Schoneveld



More information about the MEncoder-users mailing list