View difference between Paste ID: 0D16eaHv and 1ENb9weV
SHOW: | | - or go back to the newest paste.
1-
# ASTDR DeRainbow function v1.1
1+
# ASTDR DeRainbow function v1.2
2
3
  function ASTDR(clip input, int "strength")
4
  {
5
  strn         = Default(strength, 5)
6
  
7-
  momask    = input.tweak(sat=1.5).mt_motion(thc2=5,thc1=5,thy2=2,thy1=2,y=3,v=3,u=3)
7+
  momask    = input.tweak(sat=1.1).mt_motion(thc2=1,thc1=1,thy2=1,thy1=1,y=3,v=3,u=3)
8
  momaskinv = momask.Invert().Levels(0,2,255,0,255)
9
10-
  f_uv = input.DeCross(ThresholdY=15, Noise=100, Margin=1).awarpsharp2(depth=1,chroma=6).hqdn3d(ls=1,lt=2,cs=strn*3/5,ct=strn).temporalsoften(2,5,15,3,2).aWarpSharp2(depth=-1,chroma=2)
10+
  filtered_uv = input.DeCross(ThresholdY=15, Noise=100, Margin=1).FluxSmoothST(50,50).awarpsharp2(depth=1,chroma=6).hqdn3d(cs=strn*3/5,ct=strn)
11-
  filtered_uv=f_uv.MergeLuma(f_uv.blur(0.1)).aWarpSharp2(depth=1,chroma=6).FluxSmoothST(10,10).fft3dfilter(sigma=1,plane=3,degrid=1)
11+
              \ .temporalsoften(2,5,15,3,2).aWarpSharp2(depth=-1,chroma=2).blur(0.2).aWarpSharp2(depth=1,chroma=6).fft3dfilter(sigma=1,plane=3,degrid=1)
12
  
13
  filtered = mt_merge(filtered_uv, input, momaskinv,y=2,u=3,v=3,luma=true)
14
  
15
  mt_merge(input, filtered, momask.mt_expand(mode="both", y=3,u=3,v=3).mt_inflate(y=3,u=3,v=3),y=2,u=3,v=3)
16
  }