View Full Version : 30i Credits on top of 24p(IVTC)


kenshin1991
3rd January 2015, 14:33
Hey everyone,

I was just wondering how I can handle scrolling 30fps credits on a 24fps (film) background?

Credits from episode (10sec | 13MB):
http://www.mediafire.com/watch/gfh2cs3v5fxkk6s/MonsterCredits.m2v

The majority of the episode is film (portion linked below) except for the 30i scrolling credits on a 23.976 film background (linked above).

Film portion from episode (50sec | 50MB):
http://www.mediafire.com/watch/12utbczkwj0x5em/MonsterEP1.m2v

Is there a simple function where I can turn the credits into progressive film (or perhaps create a hybrid source) with minimal motion blur or judder?
I found this thread which seems to have a solution although I'm not sure how to use it: http://forum.doom9.org/showthread.php?t=158680

My current script is:

MPEG2Source("Ep01_1.d2v", cpu=0)
ivtc = tfm(pp=0).tdecimate(mode=1)
deint = qtgmc().selectevery(5,0,2)
deintCredits = QTGMC( Preset="faster", FPSDivisor=2, ShutterBlur=3, ShutterAngleSrc=180, ShutterAngleOut=360 ).convertfps("NTSC_Film")


rfs(ivtc,deint,"[263 293]")
rfs(deintCredits,"[32268 33986]")

wonkey_monkey
3rd January 2015, 21:31
To fix the credits, assuming they stay the same way throughout (scrolling credits on left, artwork on the right) I did this:

mpeg2source("monstercredits.d2v")

left=crop(0,0,340,0)
right=crop(340,0,0,0)

left=interleave(left,left.pointresize(left.width,left.height,0,1)) # 60fps
left=interleave(left,left.spline16resize(left.width,left.height,0,0.5)) # 120fps
left=left.selectevery(5,0) # down to 24fps

# ITVC the "right" side of the clip (placeholder):
right=right.separatefields.selectevery(5,0,1,2,3).weave

stackhorizontal(left,right)


It upsamples the credits half of the picture to 120fps by interleaving shifted copies of each frame, then selects down to 24fps.

David

colours
4th January 2015, 13:52
I was going to suggest ivtc_txt30mc (like I did in the previous thread), but having actually looked at the source, using any sort of deinterlacing is simply not viable. (Anyway, ivtc_txt60mc is not the right filter even if it did "work", because that's for handling 60 fps text overlays.)

David's post provides one solution; a slightly more general solution is to use MFlowFPS instead of manually shifting when interpolating to 120 fps.

bxyhxyh
5th January 2015, 19:02
I didn't download your film part sample. But I assume it is just common one.

DGDecode_mpeg2source("yourclip.d2v", info=3)
# lfofp stands for last frame of film part
# lfofp should be 4 (mod 5) for exact audio sync.
part_main = Trim(0,lfofp).TFM().TDecimate(mode=1)
part_ending = Trim(lfofp+1, song_end)
picture = part_ending.crop(358,0,0,0).TFM()
credits = part_ending.crop(0,0,-362,0)
part_ending = StackHorizontal(b,a)
part_main++part_ending.AssumeFPS(part_main)


And do the VFR clip.