VideoHelp Forum

Our website is made possible by displaying online advertisements to our visitors. Consider supporting us by disable your adblocker or try DVDFab DRM and remove iTunes movie & music protection! :)
+ Reply to Thread
Results 1 to 25 of 25
Thread
  1. Member Caiosouza's Avatar
    Join Date
    Nov 2013
    Location
    Capćo da Canoa, RS, Brazil
    Search Comp PM
    I really did not want to bring this back, but this video is very rare, and I really did not get another source.
    So reviewing an old topic I felt a little hope of making it at least acceptable, lessen these comets and improve this crap a little.
    I would like some suggestion of bright minds, and I know have many here, thank you!

    Sample:

    1-More static
    2-More movement
    Image Attached Files
    Quote Quote  
  2. Member Caiosouza's Avatar
    Join Date
    Nov 2013
    Location
    Capćo da Canoa, RS, Brazil
    Search Comp PM
    Mr. Jagabo suggested me RemoveDirtMC() or RemoveSpotsMC()
    But I can not make it work
    Quote Quote  
  3. Member Caiosouza's Avatar
    Join Date
    Nov 2013
    Location
    Capćo da Canoa, RS, Brazil
    Search Comp PM
    Mr. johnmeyer show me this:
    Code:
    function Remove_TearsI(clip source) {
    
    #Create mask
    ml           = 100 # mask scale
    scene_change = 900 # scene change
    
    fields=source.SeparateFields()
    even_fields=selecteven(fields)
    odd_fields =selectodd(fields)
    
    super_even = MSuper(even_fields,pel=2, sharp=1)
    vfe = MAnalyse(super_even,isb=false) # forward vectors 
    vbe = MAnalyse(super_even,isb=true)  # backward vectors 
    
    cfe = MFlow(even_fields,super_even,vfe,thSCD1=scene_change) # previous compensated forward
    cbe = MFlow(even_fields,super_even,vbe,thSCD1=scene_change) # next compensated backward 
    
    sadfe = MMask(super_even,vfe, ml=100,kind=1,gamma=1, thSCD1 = scene_change)
    msadfe= sadfe.Binarize() # binary inverted forward SAD mask
    
    sadbe = MMask(super_even,vbe, ml=ml, gamma=1, kind=1, thSCD1 = scene_change) # backward SAD mask
    msadbe= sadbe.Binarize() # binary inverted backward SAD mask
    
    msade = Logic(msadfe,msadbe,"OR") # combined inverted SAD mask
    msade = msade.Expand() # expanded inverted SAD mask
    msadie = Interleave(msade, msade, msade) # interleaved 3-frame inverted SAD mask
    
    Interleave(cfe,even_fields,cbe) # interleave forward compensated, source, and backward compensated
    
    even_result_fields=DeSpot(show=0,mscene=99,p1percent=3,dilate=3,maxpts=1000,p2=6,mthres=9,p1=12,pwidth=840,pheight=12,mwidth=7,mheight=5,merode=33,interlaced=false,seg=1,sign=0,ranked=true).SelectEvery(3,1)
    
    super_odd = MSuper(odd_fields,pel=2, sharp=1)
    vfo = MAnalyse(super_odd,isb=false) # forward vectors 
    vbo = MAnalyse(super_odd,isb=true)  # backward vectors 
    
    cfo = MFlow(odd_fields,super_odd,vfo,thSCD1=scene_change) # previous compensated forward
    cbo = MFlow(odd_fields,super_odd,vbo,thSCD1=scene_change) # next compensated backward 
    
    sadfo = MMask(super_odd,vfo, ml=100,kind=1,gamma=1, thSCD1 = scene_change)
    msadfo= sadfo.Binarize() # binary inverted forward SAD mask
    
    sadbo = MMask(super_odd,vbo, ml=ml, gamma=1, kind=1, thSCD1 = scene_change) # backward SAD mask
    msadbo= sadbo.Binarize() # binary inverted backward SAD mask
    
    msado = Logic(msadfo,msadbo,"OR") # combined inverted SAD mask
    msado = msado.Expand() # expanded inverted SAD mask
    msadio = Interleave(msado, msado, msado) # interleaved 3-frame inverted SAD mask
    
    Interleave(cfo,odd_fields,cbo) # interleave forward compensated, source, and backward compensated
    
    odd_result_fields=DeSpot(show=0,mscene=99,p1percent=3,dilate=3,maxpts=1000,p2=6,mthres=9,p1=12,pwidth=840,pheight=12,mwidth=7,mheight=5,merode=33,interlaced=false,seg=1,sign=0,ranked=true).SelectEvery(3,1)
    interleave(even_result_fields,odd_result_fields)
    weave()
    }
    Image
    [Attachment 46599 - Click to enlarge]

    Image
    [Attachment 46600 - Click to enlarge]


    Really effective, but it can be very complex to play with these numbers for me.
    Quote Quote  
  4. I recognize that image. Isn't this an exact duplicate of what you (or someone else) asked about a year or two ago?
    Quote Quote  
  5. Member Caiosouza's Avatar
    Join Date
    Nov 2013
    Location
    Capćo da Canoa, RS, Brazil
    Search Comp PM
    Originally Posted by johnmeyer View Post
    I recognize that image. Isn't this an exact duplicate of what you (or someone else) asked about a year or two ago?
    Yes,is this, is me
    Quote Quote  
  6. Once again, with video this bad you will be trading one type of artifact for another. It's debatable whether anything you do is an improvement or not. But this might give you some ideas to work with:

    Code:
    LWLibavVideoSource("1-Grotesque Anomaly-1996 MX 125.mkv") 
    TNLMeans(Ax=0, Ay=0, Az=1, h=16) # reduces intensity of comets
    BilinearResize(288, 270) # smaller gives more noise reduction, larger gives less
    RemoveDirtMC(30) # reduce comets, adjust along with size
    TemporalDegrain(SAD1=200, SAD2=150, sigma=8) #general noise reduction
    MergeChroma(aWarpSharp(depth=20)) # sharpen colors
    Sharpen(0.3)
    nnedi3_rpow2(2, cshift="Spline36Resize", fwidth=src.width, fheight=src.height) # upscale
    Sharpen(0.3)
    The result is a very over filtered look but the comets are greatly reduced. You can try higher or lower settings in the filters to get the compromise you want.
    Image Attached Files
    Quote Quote  
  7. The following link will take you to a discussion, by this same person, of the exact same image posted here, from almost two years ago:

    Cleaning trash ...

    We're covering the same ground, going in circles.

    Déją vu.
    Quote Quote  
  8. I know. I just thought I'd give it a shot since we passed the last time. And had some free time.
    Last edited by jagabo; 26th Aug 2018 at 09:43.
    Quote Quote  
  9. Member Caiosouza's Avatar
    Join Date
    Nov 2013
    Location
    Capćo da Canoa, RS, Brazil
    Search Comp PM
    Originally Posted by jagabo View Post
    Once again, with video this bad you will be trading one type of artifact for another. It's debatable whether anything you do is an improvement or not. But this might give you some ideas to work with:

    Code:
    LWLibavVideoSource("1-Grotesque Anomaly-1996 MX 125.mkv") 
    TNLMeans(Ax=0, Ay=0, Az=1, h=16) # reduces intensity of comets
    BilinearResize(288, 270) # smaller gives more noise reduction, larger gives less
    RemoveDirtMC(30) # reduce comets, adjust along with size
    TemporalDegrain(SAD1=200, SAD2=150, sigma=8) #general noise reduction
    MergeChroma(aWarpSharp(depth=20)) # sharpen colors
    Sharpen(0.3)
    nnedi3_rpow2(2, cshift="Spline36Resize", fwidth=src.width, fheight=src.height) # upscale
    Sharpen(0.3)
    The result is a very over filtered look but the comets are greatly reduced. You can try higher or lower settings in the filters to get the compromise you want.

    I believe you've thought about it on a coffee break ... because this looks really delicious!

    I geting error on last line, more precisely in "src"

    Code:
    nnedi3_rpow2(2, cshift="Spline36Resize", fwidth=src.width, fheight=src.height)
    PS:I know it's not the same thing,but
    This Worked:
    Code:
    Spline64Resize(width*2, height*2)
    Sharpen(0.3)
    Edit:
    Work... but I lost the aspect ratio...
    Last edited by Caiosouza; 26th Aug 2018 at 10:18.
    Quote Quote  
  10. Member Caiosouza's Avatar
    Join Date
    Nov 2013
    Location
    Capćo da Canoa, RS, Brazil
    Search Comp PM
    Originally Posted by jagabo View Post
    I know. I just thought I'd give it a shot since we passed the last time. And had some free time.
    Just, are my vacations

    Originally Posted by johnmeyer View Post
    The following link will take you to a discussion, by this same person, of the exact same image posted here, from almost two years ago:

    Cleaning trash ...

    We're covering the same ground, going in circles.

    Déją vu.
    Started with..."I really did not want to bring this back..."
    I think we're walking in line, crooked, but going in some direction, thank you.
    Last edited by Caiosouza; 26th Aug 2018 at 12:00.
    Quote Quote  
  11. Member Caiosouza's Avatar
    Join Date
    Nov 2013
    Location
    Capćo da Canoa, RS, Brazil
    Search Comp PM
    Does that make any sense?
    Code:
    DirectShowSource("C:\Users\User\Desktop\2-Sample-1996 MX 125.mkv")
    TNLMeans(Ax=0, Ay=0, Az=1, h=16) # reduces intensity of comets
    RemoveDirtMC(30) # reduce comets, adjust along with size
    QTGMC(InputType=1, EZDenoise=2.0, DenoiseMC=true) # Denoise
    BilinearResize(width/2, height) # downsize, clean edges, upsize, sharpen
    Santiag(strv=4, strh=4) #anti-aliasing
    Spline36Resize(width*2, height)
    Image
    [Attachment 46608 - Click to enlarge]



    Sorry renamed"My After"...It's actually jagabo mesh
    Image Attached Files
    Last edited by Caiosouza; 26th Aug 2018 at 11:52.
    Quote Quote  
  12. I'd run QTGMC while the video was downscaled. nnedi3 will get you sharper upscaling with less aliasing.
    Quote Quote  
  13. Member Caiosouza's Avatar
    Join Date
    Nov 2013
    Location
    Capćo da Canoa, RS, Brazil
    Search Comp PM
    Originally Posted by jagabo View Post
    I'd run QTGMC while the video was downscaled. nnedi3 will get you sharper upscaling with less aliasing.
    But I get error on "src"

    Code:
    nnedi3_rpow2(2, cshift="Spline36Resize", fwidth=src.width, fheight=src.height)


    Could I have more something working focused only in this (aprox.) area?

    Image
    [Attachment 46610 - Click to enlarge]
    Last edited by Caiosouza; 26th Aug 2018 at 13:32.
    Quote Quote  
  14. It looks like I took out the "src=last" line just after the source filter. It's just to restore the original frame size.
    Quote Quote  
  15. Member Caiosouza's Avatar
    Join Date
    Nov 2013
    Location
    Capćo da Canoa, RS, Brazil
    Search Comp PM
    Originally Posted by jagabo View Post
    It looks like I took out the "src=last" line just after the source filter. It's just to restore the original frame size.
    AviSynthxxx "I do not know what "src" is."

    I try This, but lost aspect ratio

    Code:
    DirectShowSource("C:\Users\User\Desktop\1-Sample-1996 MX 125.mkv")
    TNLMeans(Ax=0, Ay=0, Az=1, h=16) # reduces intensity of comets
    BilinearResize(288, 270)
    RemoveDirtMC(30) # reduce comets, adjust along with size
    RemoveSpotsMC()
    QTGMC(InputType=1, EZDenoise=2.0, DenoiseMC=true) # Denoise 
    Spline36Resize(width*2, height*2)
    Santiag(strv=4, strh=4) #anti-aliasing
    Image Attached Files
    Last edited by Caiosouza; 26th Aug 2018 at 14:58.
    Quote Quote  
  16. QTGMC(preset="very slow",edithreads=4).selecteven() plus Neatvideo V4 on Virtualdub works rather well

    Quote Quote  
  17. Member Caiosouza's Avatar
    Join Date
    Nov 2013
    Location
    Capćo da Canoa, RS, Brazil
    Search Comp PM
    Originally Posted by themaster1 View Post
    QTGMC(preset="very slow",edithreads=4).selecteven() plus Neatvideo V4 on Virtualdub works rather well

    Look's Very interesting!
    Sample please
    Quote Quote  
  18. Originally Posted by Caiosouza View Post
    Originally Posted by jagabo View Post
    It looks like I took out the "src=last" line just after the source filter. It's just to restore the original frame size.
    AviSynthxxx "I do not know what "src" is."
    Jesus christ!

    Code:
    LWLibavVideoSource("1-Grotesque Anomaly-1996 MX 125.mkv") 
    src=last
    TNLMeans(Ax=0, Ay=0, Az=1, h=16) # reduces intensity of comets
    BilinearResize(288, 270) # smaller gives more noise reduction, larger gives less
    RemoveDirtMC(30) # reduce comets, adjust along with size
    TemporalDegrain(SAD1=200, SAD2=150, sigma=8) #general noise reduction
    MergeChroma(aWarpSharp(depth=20)) # sharpen colors
    Sharpen(0.3)
    nnedi3_rpow2(2, cshift="Spline36Resize", fwidth=src.width, fheight=src.height) # upscale
    Sharpen(0.3)
    Quote Quote  
  19. Member Caiosouza's Avatar
    Join Date
    Nov 2013
    Location
    Capćo da Canoa, RS, Brazil
    Search Comp PM
    Originally Posted by jagabo View Post
    Jesus christ!
    Eu ja vi que voce nćo fez a pausa para um café...
    Muitas das vezes isso é irritante mesmo, voce fazer entender coisas que sćo simples para voce,
    Porem muitas frases podem nao ser tćo claras dependendo o contexto, ou algo assim, tipo "Sua batata esta assando, nćo fica dando sopa"...
    Bom, de repente voce prefere tomar seu "café acompanhado de um nego deitado..."
    Obrigado!
    Abraēo.
    Last edited by Caiosouza; 26th Aug 2018 at 17:42.
    Quote Quote  
  20. As my work seems to be appreciated, for once i have uploaded the neat profiles

    video processed by neatvideo v4: here
    neatvideo profiles: here

    comparison original Vs qtgmc + neatv4

    Quote Quote  
  21. Member Caiosouza's Avatar
    Join Date
    Nov 2013
    Location
    Capćo da Canoa, RS, Brazil
    Search Comp PM
    Originally Posted by themaster1 View Post
    As my work seems to be appreciated, for once i have uploaded the neat profiles

    video processed by neatvideo v4: here
    neatvideo profiles: here

    comparison original Vs qtgmc + neatv4

    Really good!

    This can be an interesting combination:
    Code:
    TNLMeans(Ax=0, Ay=0, Az=1, h=16) 
    RemoveDirtMC(30)
    QTGMC(InputType=1, EZDenoise=2.0, DenoiseMC=true)
    
    +neatvideo v4


    PS: ...+Tortelli Wins!
    Last edited by Caiosouza; 26th Aug 2018 at 19:52.
    Quote Quote  
  22. tnlmeans h=16 is too strong
    qtgmc(inputtype=1) that's for a real progressive video which is not even close for this source

    My 2 cents
    Quote Quote  
  23. Originally Posted by themaster1 View Post
    tnlmeans h=16 is too strong
    Yes. I was using that to reduce comets on the still shots. It does very bad things on moving shots.

    Certainly, Neat Video does a good job. Unfortunately, it's not free.
    Quote Quote  
  24. I almost forgot the magic script that you could use after neat (it's not artifacts free, careful) :

    a=last
    #clense(reduceflicker=false).merge(last,0.5).clens e(reduceflicker=false)
    mot=removegrain(8,0).DepanEstimate(range=2)
    take2=a.depaninterleave(mot,prev=2,next=2,subpixel =2)
    clean1=take2.selectevery(5,2)

    sup1 = clean1.minblur(1).removegrain(11,0)
    \ .mt_lutxy(clean1,"x 1 + y < x 2 + x 1 - y > x 2 - y ? ?",U=2,V=2)
    \ .msuper(pel=2,sharp=0)
    sup2 = a.msuper(pel=2,levels=1,sharp=2)
    ###### Good mvtools values, Do not change, checked##########
    bv22=sup1.manalyse(isb=true, truemotion=false,global=true,delta=1,blksize=16,ov erlap=8,search=5,searchparam=4,DCT=5)
    bv21=sup1.manalyse(isb=true, truemotion=false,global=true,delta=1,blksize=16,ov erlap=8,search=5,searchparam=4,DCT=5)
    fv21=sup1.manalyse(isb=false,truemotion=false,glob al=true,delta=1,blksize=16,overlap=8,search=5,sear chparam=4,DCT=5)
    fv22=sup1.manalyse(isb=false,truemotion=false,glob al=true,delta=1,blksize=16,overlap=8,search=5,sear chparam=4,DCT=5)

    interleave(a.mcompensate(sup2,fv22),a.mcompensate( sup2,fv21),a,a.mcompensate(sup2,bv21),a.mcompensat e(sup2,bv22))
    mergeluma(TMedian2(),0.9).mergechroma(TMedian2(),1 ).selectevery(5,2)

    sup3 = last.msuper(pel=2,sharp=2)
    bv33=sup3.manalyse(isb=true, truemotion=false,global=true,delta=1,blksize=8,ove rlap=4,search=5,searchparam=4,DCT=5)
    bv32=sup3.manalyse(isb=true, truemotion=false,global=true,delta=1,blksize=8,ove rlap=4,search=5,searchparam=4,DCT=5)
    bv31=sup3.manalyse(isb=true, truemotion=false,global=true,delta=1,blksize=8,ove rlap=4,search=5,searchparam=4,DCT=5)
    fv31=sup3.manalyse(isb=false,truemotion=false,glob al=true,delta=1,blksize=8,overlap=4,search=5,searc hparam=4,DCT=5)
    fv32=sup3.manalyse(isb=false,truemotion=false,glob al=true,delta=1,blksize=8,overlap=4,search=5,searc hparam=4,DCT=5)
    fv33=sup3.manalyse(isb=false,truemotion=false,glob al=true,delta=1,blksize=8,overlap=4,search=5,searc hparam=4,DCT=5)
    last

    # To remove small Black streaks and some white dots :
    noisy = last
    nonoise = RemoveDirtMC()
    # note:Can work best with : nonoise = RemoveDirtMC.fft3dfilter(sigma=7.0,sigma2=7.0,sigm a3=7.0,sigma4=7.0, bt=1, bw=32, bh=32, ow=16, oh=16,plane=0, sharpen=0.0,interlaced=false,dehalo=0.0)
    diff = 5 # default10 / between 18- 5 to remove more or less
    m = mt_lutxy(noisy,nonoise,"y x - "+string(diff)+" - 255 *")
    mt_merge(noisy,nonoise,m)
    #########################
    Function EdgeCleaner(clip c, float "strength", bool "rep", int "rmode", int "smode", bool "hot", bool "fix") {

    strength = default(strength, 8.0)
    rep = default(rep, true)
    rmode = default(rmode, 17)
    smode = default(smode, 0)
    hot = default(hot, false)
    fix = default(fix, true)

    c = (c.isYV12()) ? c : c.ConvertToYV12()
    strength = (smode==0) ? strength : strength+4

    main = c.aWarpSharp(strength,1)
    main = (rep) ? Repair(main,c,rmode) : main

    mask = c.mt_edge("prewitt",4,32,4,32).mt_invert().mt_conv olution()

    final = (!hot) ? mt_merge(c,main,mask) : Repair(mt_merge(c,main,mask),c,2)
    final = (fix) ? Overlay(final,c.ConvertToRGB24().Crop(0,1,-c.width+1,-c.height+2),x=0,y=1) : final
    final = (smode != 0) ? mt_merge(final,c,c.StarMask(smode)) : final

    return final

    }

    function StarMask(clip c, int "mode") {

    mode = default(mode, 1)

    clean = (mode==1) ? c.RemoveGrain(17) : Repair(c.Deen("a3d",4,12,0),c,15).RemoveGrain(21)
    diff = (mode==1) ? mt_makediff(c,clean) : NOP

    final = (mode==1) ? diff.Greyscale().Levels(40,0.350,168,0,255).remove grain(7,-1).mt_edge("prewitt",4,16,4,16) : \
    Subtract(mt_merge(clean,c,c.mt_edge("roberts",0,2, 0,2).mt_expand(mode=mt_circle(1)).mt_invert()),c). mt_edge("roberts",0,0,0,0).mt_deflate()

    return final

    }



    function MinBlur(clip clp, int r, int "uv")
    {
    uv = default(uv,3)
    uv2 = (uv==2) ? 1 : uv
    rg4 = (uv==3) ? 4 : -1
    rg11 = (uv==3) ? 11 : -1
    rg20 = (uv==3) ? 20 : -1
    medf = (uv==3) ? 1 : -200

    RG11D = (r==0) ? mt_makediff(clp,clp.sbr(),U=uv2,V=uv2)
    \ : (r==1) ? mt_makediff(clp,clp.removegrain(11,rg11),U=uv2,V=u v2)
    \ : (r==2) ? mt_makediff(clp,clp.removegrain(11,rg11).removegra in(20,rg20),U=uv2,V=uv2)
    \ : mt_makediff(clp,clp.removegrain(11,rg11).removegra in(20,rg20).removegrain(20,rg20),U=uv2,V=uv2)
    RG4D = (r<=1) ? mt_makediff(clp,clp.removegrain(4,rg4),U=uv2,V=uv2 )
    \ : (r==2) ? mt_makediff(clp,clp.medianblur(2,2*medf,2*medf),U= uv2,V=uv2)
    \ : mt_makediff(clp,clp.medianblur(3,3*medf,3*medf),U= uv2,V=uv2)
    DD = mt_lutxy(RG11D,RG4D,"x 128 - y 128 - * 0 < 128 x 128 - abs y 128 - abs < x y ? ?",U=uv2,V=uv2)
    clp.mt_makediff(DD,U=uv,V=uv)
    return(last)
    }



    # median of 5 clips from Helpers.avs by G-force
    Function Median2(clip "input_1", clip "input_2", clip "input_3", clip "input_4", clip "input_5", string "chroma")
    {
    chroma = default(chroma,"process") #default is "process". Alternates: "copy first" or "copy second"
    #MEDIAN(i1,i3,i5)
    Interleave(input_1,input_3,input_5)
    chroma == "process" ? Clense(reduceflicker=false) : Clense(reduceflicker=false,grey=true)
    m1 = selectevery(3,1)
    #MAX(MIN(i1,i3,i5),i2)
    m2 = input_1.MT_Logic(input_3,"min",chroma=chroma).MT_L ogic(input_5,"min",chroma=chroma).MT_Logic(input_2 ,"max",chroma=chroma)
    #MIN(MAX(i1,i3,i5),i4)
    m3 = input_1.MT_Logic(input_3,"max",chroma=chroma).MT_L ogic(input_5,"max",chroma=chroma).MT_Logic(input_4 ,"min",chroma=chroma)
    Interleave(m1,m2,m3)
    chroma == "process" ? Clense(reduceflicker=false) : Clense(reduceflicker=false,grey=true)
    selectevery(3,1)
    chroma == "copy first" ? last.MergeChroma(input_1) : chroma == "copy second" ? last.MergeChroma(input_2) : last
    ConverttoRGB32(matrix="rec601",interlaced=false)
    LoadVirtualDubPlugin("C:\Program Files (x86)\VirtualDub\plugins\Camcorder_Color_Denoise_s se2.vdf", "CCD", 1)
    CCD(7,1) # de 0 ą 100 # Défaut =30 /
    converttoyv12(matrix="rec601",interlaced=false)
    Return(last)
    }

    function TMedian2(clip c) {
    Median2( c.selectevery(1,-2), c.selectevery(1,-1), c, c.selectevery(1,1), c.selectevery(1,2) ) }


    function RemoveDirt(clip input, int limit, bool _grey)
    {
    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=li mit,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)
    }
    Processed video (with the script above): https://mega.nz/#!N05DTQaJ!2GCTwr9AYDFAIa8czzzx7oosga2wegIHNOh2NHG5PA8

    example (Neat v4, Neat+Script above, Original):
    Image Attached Thumbnails Click image for larger version

Name:	big-neat.jpg
Views:	10
Size:	233.6 KB
ID:	46667  

    Click image for larger version

Name:	big-special.jpg
Views:	11
Size:	228.3 KB
ID:	46668  

    Click image for larger version

Name:	Big-OG.jpg
Views:	4
Size:	327.2 KB
ID:	46669  

    Last edited by themaster1; 3rd Sep 2018 at 05:37.
    Quote Quote  
  25. I just A/B'd between the two pics, and your improvement over using just Neat Video was quite good. Nice job.
    Quote Quote  



Similar Threads