Advertisement
Guest User

Untitled

a guest
Aug 18th, 2017
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.47 KB | None | 0 0
  1. # Easy MVDeGrain by Sagekilla
  2. # Modified for MVTools2 by twc
  3. #
  4. # Requirements:
  5. # MVTools2
  6. #
  7. # Description of parameters:
  8. #
  9. # method = MDeGrain with 1, 2, or 3 vectors (default 1)
  10. # pp = Clip to calculate vectors from (default input)
  11. # thSAD = MDeGrain thSAD (default 400)
  12. # thSCD1 = MDeGrain thSCD1 (default 400)
  13. # thSCD2 = MVTools thSCD2 (default 130)
  14. # blksize = MAnalyse block size (default 8)
  15. # pel = MSuper Subpixel accuracy (default 2 / hpel)
  16. # overlap = MAnalyse block overlap (default 2)
  17. # dct = MAnalyse DCT method (default 0 / none)
  18. # search = MAnalyse search level (default 4 / hex )
  19. # searchparam = MAnalyse search parameter (default 2)
  20. #
  21. # method and thSAD are the main control of denoising strength.
  22. # Increasing overlap to 4 may reduce blocking artifacts.
  23.  
  24. function MDeGrain(clip input, int "method", clip "pp", int "thSAD", int "thSCD1", int "thSCD2", int "blksize", int "pel", int "overlap", int "dct", int "search", int "searchparam", bool "chroma")
  25. {
  26. method = default(method, 1)
  27. overlap = default(overlap, 2)
  28.  
  29. pp_enabled = defined(pp)
  30. pp_super = pp_enabled ? MSuper(pp, pel=pel, chroma=chroma) : MSuper(input, pel=pel, chroma=chroma)
  31. super = pp_enabled ? MSuper(input, pel=pel, levels=1) : pp_super
  32.  
  33. # Motion vector search.
  34. b3vec = MAnalyse(pp_super, delta=3, isb=true, chroma=chroma, search=search, searchparam=searchparam, overlap=overlap, blksize=blksize, dct=dct)
  35. b2vec = MAnalyse(pp_super, delta=2, isb=true, chroma=chroma, search=search, searchparam=searchparam, overlap=overlap, blksize=blksize, dct=dct)
  36. b1vec = MAnalyse(pp_super, delta=1, isb=true, chroma=chroma, search=search, searchparam=searchparam, overlap=overlap, blksize=blksize, dct=dct)
  37. f1vec = MAnalyse(pp_super, delta=1, chroma=chroma, search=search, searchparam=searchparam, overlap=overlap, blksize=blksize, dct=dct)
  38. f2vec = MAnalyse(pp_super, delta=2, chroma=chroma, search=search, searchparam=searchparam, overlap=overlap, blksize=blksize, dct=dct)
  39. f3vec = MAnalyse(pp_super, delta=3, chroma=chroma, search=search, searchparam=searchparam, overlap=overlap, blksize=blksize, dct=dct)
  40.  
  41. # Now we perform the actual MDeGrain.
  42. output = method >= 3 ? MDeGrain3(input, super, b1vec, f1vec, b2vec, f2vec, b3vec, f3vec, thSAD=thSAD, thSCD1=thSCD1, thSCD2=thSCD2) :
  43. \ method == 2 ? MDeGrain2(input, super, b1vec, f1vec, b2vec, f2vec, thSAD=thSAD, thSCD1=thSCD1, thSCD2=thSCD2) :
  44. \ MDeGrain1(input, super, b1vec, f1vec, thSAD=thSAD, thSCD1=thSCD1, thSCD2=thSCD2)
  45.  
  46. return output
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement