Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # original: http://forum.doom9.org/showthread.php?p=1466105#post1466105
- # frame_ref = start of clean-combed-combed-clean-clean pattern
- Function ivtc_txt60mc (clip src, int frame_ref, bool "srcbob", bool "draft")
- {
- srcbob = Default (srcbob, false)
- draft = Default (draft, false)
- field_ref = (srcbob) ? frame_ref : frame_ref * 2
- field_ref = field_ref % 5
- invpos = (5 - field_ref) % 5
- pel = (draft) ? 1 : 2
- src
- (srcbob) ? last
- \ : (draft ) ? Bob ()
- \ : QTGMC (SourceMatch=3, Lossless=2, tr0=1, tr1=1, tr2=1)
- clean = SelectEvery (5, 1 - invpos)
- jitter = SelectEvery (5, 3 - invpos, 4 - invpos)
- jsup = jitter.MSuper (pel=pel)
- vect_f = jsup.MAnalyse (isb=false, delta=1, overlap=4)
- vect_b = jsup.MAnalyse (isb=true, delta=1, overlap=4)
- comp = jitter.MFlowInter (jsup, vect_b, vect_f, time=50, thSCD1=400)
- fixed = comp.SelectEvery (2, 0)
- Interleave (clean, fixed)
- Trim (invpos / 2, 0)
- }
- # frame_ref = start of AABCD pattern
- Function dec_txt60mc (clip src, int frame_ref, bool "srcbob", bool "draft")
- {
- srcbob = Default (srcbob, false)
- draft = Default (draft, false)
- field_ref = (srcbob) ? frame_ref : frame_ref * 2
- field_ref = field_ref % 5
- invpos = (5 - field_ref) % 5
- pel = (draft) ? 1 : 2
- src
- (srcbob) ? last
- \ : (draft ) ? Bob ()
- \ : QTGMC (SourceMatch=3, Lossless=2, tr0=1, tr1=1, tr2=1)
- clean = SelectEvery (5, 4 - invpos)
- jitter = SelectEvery (5, 1 - invpos, 2 - invpos)
- jsup = jitter.MSuper (pel=pel)
- vect_f = jsup.MAnalyse (isb=false, delta=1, overlap=4)
- vect_b = jsup.MAnalyse (isb=true, delta=1, overlap=4)
- comp = jitter.MFlowInter (jsup, vect_b, vect_f, time=50, thSCD1=400)
- fixed = comp.SelectEvery (2, 0)
- Interleave (fixed, clean)
- Trim (invpos / 3, 0)
- }
- # frame_ref = start of clean-combed-combed-clean-clean pattern
- # written independently of and without reference to http://pastebin.com/vQX1pDPF
- # needs ApplyEvery (for DeleteEvery() and InterleaveEvery())
- Function ivtc_txt30mc_t (clip src, int frame_ref, bool "srcbob", bool "draft")
- {
- srcbob = Default (srcbob, false)
- draft = Default (draft, false)
- field_ref = (srcbob) ? frame_ref : frame_ref * 2
- field_ref = field_ref % 10
- invpos = (10 - field_ref) % 10
- frame_ref = ( 3 * field_ref) % 5
- pel = (draft) ? 1 : 2
- src
- (srcbob) ? last
- \ : (draft ) ? Bob ()
- \ : QTGMC (SourceMatch=3, Lossless=2, tr0=1, tr1=1, tr2=1)
- src = (srcbob) ? SeparateFields ().SelectEvery (4, 0, 3).Weave () : src
- clean = src.SelectEvery (5, -1 - invpos/2)
- jitter = SelectEvery (1, -1 - invpos).DeleteEvery (10, 8).AssumeFPS (9)
- jsup = jitter.MSuper (pel=pel)
- vect_f = jsup.MAnalyse (isb=false, delta=1, overlap=4)
- vect_b = jsup.MAnalyse (isb=true, delta=1, overlap=4)
- comp = jitter.MFlowFPS (jsup, vect_b, vect_f, num=4, den=1, thSCD1=400)
- fixed = comp.SelectEvery (4, 1, 2, 3)
- InterleaveEvery (clean, fixed, 4, 1, 2, 3)
- Trim (Select(invpos / 2, 1, 2, 3, 3, 4), 0)
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement