PDA

View Full Version : Frames not matching


aftertaste
8th November 2005, 07:52
I seem to be having an issue with what i think would be the frame server. I will post how i am doing things.

#ASYNTHER MPEG2Source (DGDecode.dll)
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\DGDecode.dll")
MPEG2Source("%f")
Telecide(order=1,Post=0,Chroma=True,Guide=1)
Decimate(Cycle=5,Mode=0,Quality=3)
ConvertToYUY2()

Using these settings with Godfather I i get 245,156 frames and the Duration is 2:50:25:02 (which is the correct frames for that duration)

-----------------------------------------------------------------------

#ASYNTHER WOOT!! (DGDecode.dll)
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\DGDecode.dll")
MPEG2Source("%f")
ConvertToYUY2()

Taking out the Telecide and Decimate commands I get 306,445 frames with a duration of 2:50:25:02 (same as before)

So what exactly is going on with that. Has anyone else seen that before? Or am i simply not doing something wrong? I should mention i am using CCE for encoding.

Manao
8th November 2005, 09:45
Well, that's perfectly normal : telecide() / decimate() are meant to discard one frame every six frames, in order to change the framerate from 29.97 down to 23.976, and to eliminate the process called telecine ( search on doom9's guides for explanations of what is telecine ).

245156 / 10225 = 23.976 and 306445 / 10225 = 29.97, so everything is going fine

neuron2
8th November 2005, 14:07
telecide() / decimate() are meant to discard one frame every six frames, in order to change the framerate from 29.97 down to 23.976 One small correction: Decimate() removes 1 frame in every 5 for 29.97 -> 23.976 fps. The removed frames are duplicate frames.

4/5 * 29.97 = 23.976

aftertaste
8th November 2005, 17:56
ok i understand.. However, i'm a little confused about one more thing. When i go to encode i was going to try running the built in deinterlacer included in CCE v2.69. First, should I? Would i be better off running Decomb? (This was for testing purposes in the first place). And will the quality suffer being that there are more frames and a lower bit rate? I've been doing these for years and i guess i never noticed this before cause i always run Decomb. One more question. If i do decide to run the built in deinterlacer (to do a few tests) do i have to run forced film within DGIndex? Thx for responding guys. It's my understanding that Neuron2 is the main scripter for Decomb? If so thanks for taking the time to answer a few of my questions :)

neuron2
8th November 2005, 20:48
ok i understand.. However, i'm a little confused about one more thing. When i go to encode i was going to try running the built in deinterlacer included in CCE v2.69. First, should I? Would i be better off running Decomb? (This was for testing purposes in the first place). You want to deinterlace only if your material is pure video and not telecined progressive content, e.g., 3:2 pulled down film. Even for pure video, the deinterlacers available under Avisynth, I'd guess, are better than the one integral to CCE.

And will the quality suffer being that there are more frames and a lower bit rate? That's one of the reasons not to deinterlace telecined material. Use inverse telecining (IVTC) instead, e.g., Telecide()+Decimate(). Another reason is that 2 out every 5 frames are combed when you have 3:2 pulled down material; so if you deinterlace that (instead of IVTC), you'll get a horrible strobing effect, and 2/5 of your frames will be horribly degraded when you could have nice, crisp original progressive frames.

I've been doing these for years and i guess i never noticed this before cause i always run Decomb. Decomb can do both deinterlacing and IVTC, so it's critical to know whether your video is telecined or pure video.

One more question. If i do decide to run the built in deinterlacer (to do a few tests) do i have to run forced film within DGIndex? No; you use Honor Pulldown Flags. If you are selecting Forced Film that implies that you have telecined progressive video, in which case it would make no sense to deinterlace (leaving aside postprocessing).

Thx for responding guys. It's my understanding that Neuron2 is the main scripter for Decomb? I'm not sure what you mean by "scripter", but I am indeed the author of Decomb. I had lots of help developing it from members of this forum, including especially manono. A similar package with some more advanced functionality was subsequently developed by tritical: tfm(), tdecimate(), tdeint(), etc.

For pure video deinterlacing, you might want to look at leakkerneldeint() and tdeint(). I would guess either one would blow away CCE's integrated deinterlacing.

aftertaste
8th November 2005, 21:58
Most of the meterial i am encoding turns out to be 90%+ FILM.. some of which are pure film. This is the script i am using under most cases.

#ASYNTHER MPEG2Source (DGDecode.dll)
LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\DGDecode.dll")
MPEG2Source("%f")
Telecide(order=1,Post=0,Chroma=True,Guide=1)
Decimate(Cycle=5,Mode=0,Quality=3)
ConvertToYUY2()

Guess what answers most of my questions is do i use CCE's deinterlacer and after trying to understand most of what you are telling me i do not wnat to and i should stick with Telecide and Decimate under most situations.

I will go and read the documentation for Decomb to get a better understanding of the different flags and settings. Is there anything in my script that you find odd? Been using it for a long time and i get very very good encodings. And again thanks for your time and all your hard work. You guys are amazing at this stuff !

neuron2
9th November 2005, 00:36
For pure film you might find Force Film mode to be preferable to Decomb.

Elic
9th November 2005, 08:38
Most of the meterial i am encoding turns out to be 90%+ FILM.. some of which are pure film.In similar cases, I observed few times that neither Telecide()/Decimate() not Force Film can't give video of acceptable qualilty, especially when movie was telecined first and then cut'n'pasted. So, in these cases I prefer to set "ignore pulldown flag" and then sort pure-film / pure-video frames manually (yes, it eats time :( ), and finally make "matroska" with VFR.

Apropos, how can I get timecode file of "ignore pulldown" automatically (from .d2v file for example)? It will be very useful for many cases...

neuron2
9th November 2005, 14:36
You'd have to write your own utility to generate a timecode file from the D2V file.