[MPlayer-advusers] mencoder reads wrong frame rate flag from Quicktime files

compn tempn at twmi.rr.com
Tue Jul 6 22:16:52 CEST 2010


On Tue, 6 Jul 2010 17:13:56 +0100, Dominic Bird wrote:
>thanks for response! -demuxer lavf gives correct frame rate but cannot
>use lavf as im decoding prores so i need to use QTMLClient.dll for
>decoding. Mencoder version is r31372 win32 from

binary codecs dont work with lavf :(

>http://oss.netfarm.it/mplayer-win32.php. The file is not actually VFR,

are you able to use mplayer to play the video? here i only get
black screen. it does work in mencoder for me.

prores only works in windows xp for me. on win2k i get
DecompressSequenceFrameS result=0x-8961 and decoding fails. 8961 points
to 'noCodecErr' in the apple quicktime api. i'm not sure where to look
to fix this on win2k.

>but Final Cut flags it that way for some reason (as it seems to all
>captured HD files). Apparently the way you work out the frame rate is
>from the is like this...

argh, what an annoying fcp problem.

>It looks like ffmpeg's .MOV parser sets the video stream frame rate
>solely based on the time scale, which doesn't work for FCP's .MOV
>files. Instead it must divide the time scale by the duration of one
>video sample (as found in the 'stts' atom).
> 
>http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2006-February/006914.ht
>ml
>
>Is there some way I can use the frame rate extracted by lavf and insert
>it in the command? Like -fps lavf? That would solve all my issues!!! If
>not then the -demuxer mov has a bug and needs to calculate the fps
>differently.

unfortunately no. you can only get lavf's fps information if you use
-demuxer lavf and that doesnt work with the binary codecs.

mplayer made -demuxer lavf default because -demuxer mov was
unmaintained. patches welcome to fix this fps bug , but i dont think
any of the devs are interested in fixing it.

this looks like the same bug in our bug tracker:
http://bugzilla.mplayerhq.hu/show_bug.cgi?id=1065

anyways, you can use the mplayer -demuxer lavf -identify -frames 1 to
get the correct fps, then script it to use that in your mencoder line.
it doesnt seem like a very efficient method, but at least it works.

-compn


More information about the MPlayer-advusers mailing list