[MEncoder-users] HDTV encoding, another question

Trent Piepho xyzzy at speakeasy.org
Wed Apr 13 00:12:20 CEST 2005

On Mon, 11 Apr 2005, RC wrote:
> On Mon, 11 Apr 2005 23:58:24 -0500
> David Shay <davideshay at gmail.com> wrote:
> >  If I exclude "-fps
> > 30000/1001" from the mencoder command line (when using lavc and
> > vcodec=mpeg2video), I get an error:
> > 
> > MPEG1/2 doesn't support 2997/50 fps
> > 
> You can't just leave "-ofps" off, because the number gets rounded off.

There really is no reason for this to happen, even though mplayer uses a float
to store the framerate. 

First the frame rate values in the mpeg decoder are not completely accurate. 
30000/1001 specified on the command line should give the same exact value as
rate code 4 from a mpeg TS stream, but clearly it doesn't.

The second is that when libavcodec tries to convert the float to a fraction,
it tries to make the terms as small as possible.  It prefers 2997/50 to
30000/1001 because 2997 is less than 30000, even though 30000/1001 is the
correct value.

More information about the MEncoder-users mailing list