Log in

View Full Version : Should I be converting 59.94 (720p) to 23.976 fps (XviD)?


ejp
9th October 2008, 06:31
The whole fps business to me has been confusing and something I never looked into; usually used AGK and let it decide/do the work.

I'm using MeGUI now and it's been great so far.

I encoded a 1080i 29.97fps file to XviD, and it knew to encode it to 23.976 (after analysis).

I have a 720p 59.94fps file now and trying to properly encode it to XviD. Analysis determined it was progressive, which is fine, but the resulting XviD was still at 59.94fps.

The encode looks fine, but is this correct, or should it have been converted to 23.976? When and why would I want to do something like this? Unless I'm missing something, MeGUI wasn't automatically able to do this -- how do I add this to the script?

Thanks.

Atak_Snajpera
9th October 2008, 10:30
Make sure that your video does not contain repeated frames. If dublicated frames are present you should use TDecimate function.

ejp
9th October 2008, 17:06
Thanks.

What would be the proper way to determine if there are duplicate frames? I loaded the avs...

DGDecode_mpeg2source("file.d2v",info=3)
ColorMatrix(hints=true)
LanczosResize(960,544)

...into VirtualDubMod and went frame-by-frame through a few seconds.

It turns out there are duplicate frames. The way it goes is: 2 identical frames, 3 identical frames, 2 identical frames, 3 identical frames, etc. So for every 2 frames, 5 frames are put in; removing all the duplicate frames would make it 23.976.

So how do I properly use the tdecimate function? In my 1080i encode, it put in...

tfm(order=0).tdecimate(hybrid=1)

Tell me if I'm on the right track. If there's a difference "duplication scheme" (instead of 2, 3, 2, 3), will I have to tailor that tdecimate function to fit whatever scheme it's using? What's the proper tdecimate function I'll use for this case, and how do I know what to use for different cases?

For testing purposes, I tried this overnight...

FDecimate(rate=23.976,threshold=1)

Yes, it changed the fps to 23.976, but every now-and-then, it was very choppy, so I'm guessing that's not what I want to use.

Guest
9th October 2008, 17:22
You can try this:

SelectEven()
Decimate(5)

Or use TDecimate to remove 6 frames out of every cycle of 10. IIRC:

TDecimate(CycleR=6,CycleM=10)

(or something like that, check the docs.)