[MEncoder-users] How to Change FPS on a Broken TS Stream?

Jeff Clagg snacky at ikaruga.co.uk
Tue Jun 6 04:45:43 CEST 2006


On Mon, Jun 05, 2006 at 06:56:48PM -0700, Bill Adams wrote:

> >There are tons of utils out there that do proper packet filtering
> >without messing anything up.
> >  
> Please do tell. It seems that perhaps mencoder is a good candidate?

vlc, mencoder, ts2es, dvbstream, probably more. Some may be more
suitable than others.

> When I encode and change the fps, e.g.: -fps 60000/1001 -ofps 30000/1001 
> then I get a stream of "Skipping frame!" messages and the video looks 
> jerky (that is I can notice the missing frames).

Actually, you're seeing duplicate frames. Lost is 24fps, which is why
frames have to be duplicated. The most efficient and best-looking thing
to do is to use -ofps 24000/1001 for this show.

> fps the same (that is use -fps 60000/1001), the video looks great in 
> mplayer. BUT, I think that is because mencoder is keeping the broken 
> frame rate. (If I try to mencode the final file without any options, it 
> too reports the broken frame rate).

I dunno, sounds like a bug, but it's worked around with a proper -ofps.

> I am still not able to re-encode to dvd. If I try to specify "-fps 
> 60000/1001 -ofps 60000/1001" when encoding the DVD, it gives back the 
> same error: "[mpeg2video @ 0x861accc]MPEG1/2 does not support 19001/317 
> fps". So the "vstrict=-2" stops mencoder from complaining about the 
> broken frame rate. Say I run this:
> 
> mencoder \
>        -oac copy \
>        -ovc lavc \
>        -lavcopts 
> vcodec=mpeg2video:vqscale=4:dia=4:mbd=2:keyint=20:vstrict=-2 \
>        -lavdopts skiploopfilter=all:fast \

Skiploopfilter has absolutely no effect on mpeg2. I doubt lavdopts fast
is a good idea.



More information about the MEncoder-users mailing list