Log in

View Full Version : How do I fix this hard telecine on thr credits?


Undead Sega
20th June 2009, 14:41
I have a MPEG 2 file which was definately hard telecines at 29.97, and i used AnimeIVTC to successfully restore it back to 23.976, however, when it came to the rolling credits, it seems that there is a very bad juddering or stuttering, and i am not sure exactly what to do from here.

can anyone help me on this, i have posted a sample of the credits itself.

http://www.megaupload.com/?d=2XF6QJEE

thewebchat
20th June 2009, 16:56
1) Stop using AnimuIVTC, it's useless.
2) Just by looking at it, your credits are 100% 60i interlaced.

So, the solution is to cut out everything but the credits with Trim() and then use TFM().TDecimate() on it. Then cut out the credits and use your favorite deinterlacer and then either cut it to 24fps (causes some juddering unless you use mflowfps) or make some lame vfr encode with 30fps credits.

Undead Sega
20th June 2009, 19:16
1) Stop using AnimuIVTC, it's useless.

wow, someone seems to hate AnimeIVTC :D

ahh, i should have known that is was 60i, its quite annoying when oen cant do a proper job, having 24p material with 60i on a timeline. Anyways, i am now to take the credits either to 60p or 30p, however, there is a way to take such progressive material into 24p with Motion Estimation i read, but how is this done may i ask?

thewebchat
20th June 2009, 20:06
Well, 1) AnimuIVTC is a total waste of time. By the time it finishes, you could have matched every field by hand without any guidance.

There is a description of the usage of motion-compensated framerate conversion in mvtools documentation. For mvtools2, it is something like this:

super = MSuper()
vector = MAnalyse(super)
MFlowFPS(super,vector,24000,1001)

Undead Sega
20th June 2009, 20:30
i see, so what ive mentioned about using Motion Estimation for 60i to 24p is readily available in Avisynth?

can i take my 60p footage and convert it to 24p without any of the stutter or judder problems? can someone post me a script by any chance? :D

lansing
20th June 2009, 20:53
Well, 1) AnimuIVTC is a total waste of time. By the time it finishes, you could have matched every field by hand without any guidance.


So in your definition slow=useless? Prove your point before posting any insulting comments.

Undead Sega
20th June 2009, 21:16
i had a go with the MVTool's MVFlowFPS(2) after reading, but i cannt get it to work, can someone help me on this?

also, would this give me seamless results?

thewebchat
20th June 2009, 21:46
Lansing, no it's not "slow = useless", it's "slower than matching every frame by hand = useless", now stop blogging and astroturfing.

Undead Saga, motion tools are in MVTools (as I mentioned earlier). Near the end of the documentation, there is the following example:
super = MSuper(pel=2)
backward_vec = MAnalyse(super, isb = true)
forward_vec = MAnalyse(super, isb = false)
MFlowFps(super, backward_vec, forward_vec, num=50, den=1, ml=100) # get 50 fps

Now, if you change num to 24000 and den to 1001, you'll get a 23.976fps video. In general, motion-compensated framerate converson gets you funky wavy artifacts, but for credits on a black background, it should work without issues.

Edit: note that this is for mvtools2, mvtools has slightly different syntax.

Edit2: In case you can't figure it out, here's one approach
notcredits = Trim(0,9000).TFM.TDecimate
creditsdeint = Trim(9001,0).MCBob
creditssuper = creditsdeint.MSuper(pel=2)
creditsvectorb = MAnalyse(creditssuper,isb=true)
creditsvectorf = MAnalyse(creditssuper,isb=false)
credits24p = creditsdeint.MFlowFPS(creditssuper,creditsvectorb,creditsvectorf,num=24000,den=1001,ml=100)
notcredits+credits24p

You can use a faster deinterlacer, but MCBob should be able to fix credit scrolls with almost perfect results.

Undead Sega
20th June 2009, 22:13
ahh i see, just tried it and previewed it and seems to look good, however regarding to what u have said:

In general, motion-compensated framerate converson gets you funky wavy artifacts

i always thought Motion compensation stuff would assumingly give very good results, but this one wonders me, is their a way to eleminate this kind of effect?

thewebchat
20th June 2009, 22:21
ahh i see, just tried it and previewed it and seems to look good, however regarding to what u have said:



i always thought Motion compensation stuff would assumingly give very good results, but this one wonders me, is their a way to eleminate this kind of effect?

Well, this happens when you have to make up frames out of nowhere. If you can't find a way to transform one of your frames into the intermediate frame you need, then you have to fill in the blanks. MBlockFPS gets blocks, per the name. MFlowFPS gets wavy lines. For things like MDegrain, you don't have to make up new frames so that doesn't apply (though you can get blocking if MAnalyse comes up with a bad vector).

lansing
20th June 2009, 22:32
Lansing, no it's not "slow = useless", it's "slower than matching every frame by hand = useless"


a quick test (http://www.mediafire.com/download.php?mjdnihm1njd)

setting used: x264: "DXVA_HD Anime_toons HQ" profile in Megui, with automatic 2pass, and birate of 500

AnimeIVTC(1,aa=0)
average speed: 24.51fps

tfm().tdecimate()
average speed: 27.68fps

Now what in the blue hell are you talking about? Prove yourself before running your mouth insulting other people's works.

thewebchat
20th June 2009, 23:34
Except that AnimuIVTC mode 1 is the same as running TFM.TDecimate except lamer and slightly slower. Not to mention more pretentiously.

lansing
21st June 2009, 03:25
Except that AnimuIVTC mode 1 is the same as running TFM.TDecimate except lamer and slightly slower. Not to mention more pretentiously.

Instead of yapping around further rudenessly, why don't you prove your claim?

thewebchat
21st June 2009, 04:50
How about you stop hijacking threads, which I think most would consider "rudeness".

lansing
21st June 2009, 05:21
How about you stop hijacking threads, which I think most would consider "rudeness".

you have been asked three times to prove your point and yet you failed to do so, and you keep running your mouth?

Listen, if you don't appreciate the work of others, then don't use it. Nobody will have problem with that. But by walking around running your mouth insulting people who use it with your proveless opinion is plain rude.

Plorkyeran
21st June 2009, 09:47
Instead of yapping around further rudenessly, why don't you prove your claim?

Just look at the either the documentation or the source? The code for the script is a giant mess but it's still not very hard to see what it's doing with a given set of parameters.

Wilbert
21st June 2009, 13:05
@thewebchat, lansing is right. Don't make unproven accusations and respect other people's work.