Advertisement
AzraelNewtype

ivtc_helpers.avs

Oct 4th, 2015
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Function ivtc_txt60mc (clip src, int frame_ref, bool "srcbob", bool "draft")
  2. {
  3.     srcbob    = Default (srcbob, false)
  4.     draft     = Default (draft,  false)
  5.  
  6.     field_ref = (srcbob) ? frame_ref : frame_ref * 2
  7.     field_ref =      field_ref  % 5
  8.     invpos    = (5 - field_ref) % 5
  9.     pel       = (draft) ? 1 : 2
  10.  
  11.     src
  12.       (srcbob) ? last
  13. \   : (draft ) ? Bob ()
  14. \   :            QTGMC ("fast")
  15.  
  16.     clean  = SelectEvery (5, 1 - invpos)
  17.     jitter = SelectEvery (5, 3 - invpos, 4 - invpos)
  18.     jsup   = jitter.MSuper (pel=pel)
  19.     vect_f = jsup.MAnalyse (isb=false, delta=1, overlap=4)
  20.     vect_b = jsup.MAnalyse (isb=true,  delta=1, overlap=4)
  21.     comp   = jitter.MFlowInter (jsup, vect_b, vect_f, time=50, thSCD1=400)
  22.     fixed  = comp.SelectEvery (2, 0)
  23.     Interleave (clean, fixed)
  24.     Trim (invpos / 2, 0)
  25. }
  26.  
  27.  
  28. function norm_ivtc(clip c, bool "dec_out") {
  29.     dec_out = Default(dec_out, true)    
  30.     c
  31.     dt = TDeint(order=1,field=1,type=1,edeint=nnedi3(field=1,threads=1))
  32.     tfm(pp=5,mode=2,order=1,slow=1,y0=58,y1=140,clip2=dt)
  33.     vinverse()
  34.     return (dec_out) ? last.tdecimate() : last.assumefps("ntsc_film")
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement