VideoHelp Forum
+ Reply to Thread
Results 1 to 22 of 22
Thread
  1. Member
    Join Date
    Jan 2019
    Location
    Victorville, Ca
    Search PM
    I have been trying my hardest to get AVIsynth to work. I have tried different scripts from people and there is always an error. I deleted things and still NOTHING. I would like to know HOW to install things from scratch. WHERE exactly do I put the plug-ins, and any links that you guys can find to any proper files or proper packages. Thanks guy.
    Quote Quote  
  2. http://avisynth.nl/index.php/QTGMC#Requirements
    See "Download" column. Start with the core plugins (and also their requirements like vc++ packages as listed on their respective links). On the top right you also have dl link to latest QTGMC v3.358s. Put the .avsi and .dll files in your AviSynth plugin folder. What AviSynth version are you using? 32 bit or 64 bit? AviSynth+?

    After you've checked all that try to run a simple QTGMC(). If it doesn't run use Avisynth Info Tool to further investigate (post its complete log here). Post any error message completely, don't say "there was an error".
    Quote Quote  
  3. Originally Posted by sneaker View Post
    After you've checked all that try to run a simple QTGMC(). If it doesn't run use Avisynth Info Tool to further investigate (post its complete log here). Post any error message completely, don't say "there was an error".
    Good advice, but before trying a difficult filter like QTGMC, I think I'd first run a simple script to make sure AviSynth was installed correctly.

    Create a text file called Version.txt. Rename it as an AVS, as Version.avs.

    Inside have a single line:

    Version()

    Open the Version.avs in Virtual Dub. If it works you'll see a little rectangle with the AviSynth version you installed. If it doesn't work reply here with the complete error message. Then before going on to getting QTGMC to work I think I'd next try to open a video without any filtering at all. If that doesn't work, reply here with the complete script and the error message VDub gives you.
    Last edited by manono; 16th Feb 2019 at 18:03.
    Quote Quote  
  4. The current version of staxrip 2.0.0.0 has QTGMC as a built in option. It's easy to get it up and running instead of fiddling around.
    Quote Quote  
  5. Member
    Join Date
    Jan 2019
    Location
    Victorville, Ca
    Search PM
    Originally Posted by blud7 View Post
    The current version of staxrip 2.0.0.0 has QTGMC as a built in option. It's easy to get it up and running instead of fiddling around.
    I will check that out too, thank you...

    Quick question......
    Is there anything in the CORE plug-ins of AVIsynth that will allow me to erase blemishes such as those white horizontal lines called comets or dropouts? Or is that in the QTGMC. That is the main reason I want this so I don't have to break it down frame by frame and go into photoshop.
    Quote Quote  
  6. Originally Posted by DiggyDre View Post
    Is there anything in the CORE plug-ins of AVIsynth that will allow me to erase blemishes such as those white horizontal lines called comets or dropouts?
    No. And QTGMC wasn't designed for that, either. Weren't you given better filters for that in your other thread?
    Quote Quote  
  7. Member
    Join Date
    Jan 2019
    Location
    Victorville, Ca
    Search PM
    Originally Posted by manono View Post
    Originally Posted by DiggyDre View Post
    Is there anything in the CORE plug-ins of AVIsynth that will allow me to erase blemishes such as those white horizontal lines called comets or dropouts?
    No. And QTGMC wasn't designed for that, either. Weren't you given better filters for that in your other thread?
    I was told to try the median filter which didnt do anything. Someone also recommended RemoveDirt in AVIsynth
    Quote Quote  
  8. Originally Posted by DiggyDre View Post
    I was told to try the median filter which didnt do anything.
    What exactly did you do? The median filter for AviSynth works pretty well when used properly. You need three or five caps and the comets must appear in different locations in each cap. If they always appear at the same location it won't work.

    https://forum.videohelp.com/threads/362361-Median()-plugin-for-Avisynth
    http://avisynth.nl/index.php/Median
    Last edited by jagabo; 16th Feb 2019 at 20:05.
    Quote Quote  
  9. Member
    Join Date
    Jan 2019
    Location
    Victorville, Ca
    Search PM
    Originally Posted by manono View Post
    Originally Posted by sneaker View Post
    After you've checked all that try to run a simple QTGMC(). If it doesn't run use Avisynth Info Tool to further investigate (post its complete log here). Post any error message completely, don't say "there was an error".
    Good advice, but before trying a difficult filter like QTGMC, I think I'd first run a simple script to make sure AviSynth was installed correctly.

    Create a text file called Version.txt. Rename it as an AVS, as Version.avs.

    Inside have a single line:

    Version()

    Open the Version.avs in Virtual Dub. If it works you'll see a little rectangle with the AviSynth version you installed. If it doesn't work reply here with the complete error message. Then before going on to getting QTGMC to work I think I'd next try to open a video without any filtering at all. If that doesn't work, reply here with the complete script and the error message VDub gives you.

    Okay, I am finally sitting down and trying to get through this....
    Image
    [Attachment 48150 - Click to enlarge]
    Quote Quote  
  10. You got AviSynth installed correctly, so, congrats. It's the + version so someone else will have to take it from here as I've never used it and have no idea what additional problems it might present for using QTGMC, if any. If I were you, I might take blud7's suggestion of installing StaxRip and using the QTGMC in it.
    Quote Quote  
  11. Member
    Join Date
    Jan 2019
    Location
    Victorville, Ca
    Search PM
    I opened StaxRip and I am curious to know, is there a way to install any other AVI synth plugins in it? I really want to try RemoveDirtMC since people are saying it can help remove comets.
    Quote Quote  
  12. That image indicates you have 32 bit AviSynth+ and 32 bit VirtualDub installed. QTGMC works with 32 bit AviSynth if you install all the correct 32 bit third party dlls.

    As i understand it, Staxrip is only available in 64 bit versions now. So that would require 64 bit AviSynth and third party dlls.
    Quote Quote  
  13. Member
    Join Date
    Jan 2019
    Location
    Victorville, Ca
    Search PM
    Image
    [Attachment 48158 - Click to enlarge]


    I went back to the regular instead of the plus. Now I am starting to follow along with the guide on the AVIsynth site.
    Quote Quote  
  14. Member
    Join Date
    Jan 2019
    Location
    Victorville, Ca
    Search PM
    Well.... I think I have things going okay so far. Would anyone be able to tell me any code or how to set something up for removing comets?
    Quote Quote  
  15. Code:
    import("X:\path\to\RemoveDirtMC.avs") # set path to wherever the AVS script is on your computer
    
    WhateverSource("filename.ext") # use an appropriate source filter for your input file, AviSource(), LWlibavVideoSource(), ffVideoSource(), etc.
    RemoveDirtMC(30) # higher values remove more "dirt".  Too high removes details.
    Quote Quote  
  16. Member
    Join Date
    Jan 2019
    Location
    Victorville, Ca
    Search PM
    I get a error saying There is no function named "RemoveDirtMC"
    Image Attached Files
    Quote Quote  
  17. Is this the version you're using? https://pastebin.com/PgkQc9X4

    That one creates RemoveDirtMC_SE() which is different. The one I have is:

    Code:
    #REMOVE DIRT FUNCTION
    #.................................................   ..................................................   ..................................................  .................
    function RemoveDirt(clip input, int limit, bool "_grey")
    {
      _grey=default(_grey, false)
      clensed=input.Clense(grey=_grey)#, cache=4)
      alt=input.RemoveGrain(2)
      return RestoreMotionBlocks(clensed,input,alternative=alt,   pthreshold=6,cthreshold=8, gmthreshold=40,dist=3,               dmode=2,debug=false,noise=limit,noisy=4, grey=_grey)
    
      # Alternative settings
      # return RestoreMotionBlocks(clensed,input,alternative=alt,   pthreshold=4,cthreshold=6,  gmthreshold=40,dist=1,dmode=2,debug=false,noise=li   mit,noisy=12,grey=_grey,show=true)
      # return RestoreMotionBlocks(clensed,input,alternative=alt,   pthreshold=6,cthreshold=8, gmthreshold=40,dist=3,tolerance=  12,dmode=2,debug=false,noise=limit,noisy=12,grey=_  grey,show=false)
    }
    
    function RemoveDirtMC(clip clip,int limit, bool "_grey")
    {
      _grey=default(_grey, false)
      limit = default(limit,6)
      i=MSuper(clip,pel=2)
      bvec = MAnalyse(i,isb=true, blksize=8, delta=1, truemotion=true)
      fvec = MAnalyse(i,isb=false, blksize=8, delta=1, truemotion=true)
      backw = MFlow(clip,i,bvec)
      forw  = MFlow(clip,i,fvec)
      clp=interleave(backw,clip,forw)
      clp=clp.RemoveDirt(limit,_grey)
      clp=clp.SelectEvery(3,1)
      return clp
    }
    
    
    function RemoveSpots(clip clp, int "repmode", bool "_grey")
    {
      _grey     = Default(_grey, false)
      repmode   = Default(repmode, 16)
      
      clmode    = 17
    
      clensed   = Clense(clp, grey=_grey)#, cache=4)
      sbegin    = ForwardClense(clp, grey=_grey, cache=-1)
      send      = BackwardClense(clp, grey=_grey, cache=-1)
      alt       = Repair(SCSelect(clp, sbegin, send, clensed, debug=true), clp, mode=repmode, modeU = _grey ? -1 : repmode ) 
      restore   = Repair(clensed, clp, mode=repmode, modeU = _grey ? -1 : repmode)
      corrected = RestoreMotionBlocks(clensed, restore, neighbour=clp, alternative=alt, gmthreshold=70, dist=1, \
                                      dmode=2, debug=false, noise=10, noisy=12, grey=_grey)
      
      return corrected
    }
    Quote Quote  
  18. If this is a VHS cap, it would be encoded as fields and you might have to do other things first

    If it's progressive film content , you might want to IVTC first . Or if it's interlaced content you might apply to even/odd fields or bob deinterlace first before applying filter. But you almost never apply a dirt/dust removal filter while it's still in fields unless it has a specific interlaced mode
    Quote Quote  
  19. Member
    Join Date
    Jan 2019
    Location
    Victorville, Ca
    Search PM
    Originally Posted by jagabo View Post
    Is this the version you're using? https://pastebin.com/PgkQc9X4

    That one creates RemoveDirtMC_SE() which is different. The one I have is:

    Code:
    #REMOVE DIRT FUNCTION
    #.................................................   ..................................................   ..................................................  .................
    function RemoveDirt(clip input, int limit, bool "_grey")
    {
      _grey=default(_grey, false)
      clensed=input.Clense(grey=_grey)#, cache=4)
      alt=input.RemoveGrain(2)
      return RestoreMotionBlocks(clensed,input,alternative=alt,   pthreshold=6,cthreshold=8, gmthreshold=40,dist=3,               dmode=2,debug=false,noise=limit,noisy=4, grey=_grey)
    
      # Alternative settings
      # return RestoreMotionBlocks(clensed,input,alternative=alt,   pthreshold=4,cthreshold=6,  gmthreshold=40,dist=1,dmode=2,debug=false,noise=li   mit,noisy=12,grey=_grey,show=true)
      # return RestoreMotionBlocks(clensed,input,alternative=alt,   pthreshold=6,cthreshold=8, gmthreshold=40,dist=3,tolerance=  12,dmode=2,debug=false,noise=limit,noisy=12,grey=_  grey,show=false)
    }
    
    function RemoveDirtMC(clip clip,int limit, bool "_grey")
    {
      _grey=default(_grey, false)
      limit = default(limit,6)
      i=MSuper(clip,pel=2)
      bvec = MAnalyse(i,isb=true, blksize=8, delta=1, truemotion=true)
      fvec = MAnalyse(i,isb=false, blksize=8, delta=1, truemotion=true)
      backw = MFlow(clip,i,bvec)
      forw  = MFlow(clip,i,fvec)
      clp=interleave(backw,clip,forw)
      clp=clp.RemoveDirt(limit,_grey)
      clp=clp.SelectEvery(3,1)
      return clp
    }
    
    
    function RemoveSpots(clip clp, int "repmode", bool "_grey")
    {
      _grey     = Default(_grey, false)
      repmode   = Default(repmode, 16)
      
      clmode    = 17
    
      clensed   = Clense(clp, grey=_grey)#, cache=4)
      sbegin    = ForwardClense(clp, grey=_grey, cache=-1)
      send      = BackwardClense(clp, grey=_grey, cache=-1)
      alt       = Repair(SCSelect(clp, sbegin, send, clensed, debug=true), clp, mode=repmode, modeU = _grey ? -1 : repmode ) 
      restore   = Repair(clensed, clp, mode=repmode, modeU = _grey ? -1 : repmode)
      corrected = RestoreMotionBlocks(clensed, restore, neighbour=clp, alternative=alt, gmthreshold=70, dist=1, \
                                      dmode=2, debug=false, noise=10, noisy=12, grey=_grey)
      
      return corrected
    }
    This code is actually going through with NO errors! What do I have to tweak in it to start trying to kill off the comets?
    Quote Quote  
  20. See post #15.
    Quote Quote  
  21. Member
    Join Date
    Jan 2019
    Location
    Victorville, Ca
    Search PM
    Originally Posted by jagabo View Post
    See post #15.

    I get a error saying There is no function named "RemoveDirtMC"
    Quote Quote  
  22. Then what did you mean in post #19?
    This code is actually going through with NO errors!
    Did you import that AVS script into your script as I indicated in post #15?
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!