VideoHelp Forum




+ Reply to Thread
Page 1 of 2
1 2 LastLast
Results 1 to 30 of 34
  1. Member
    Join Date
    Apr 2012
    Location
    United Kingdom
    Search Comp PM
    Hi guys, this is my first thread in VH forum , hope someone can help me with restoring . I have managed to copy my video tapes into my PC, now the biggest issue is i have to clean it

    I have seen a thread here already by mammo1789 but i really don't understand how to use the script to and so.. thats how extacly my videos are... I really need to start from basic... i'm just newbie here for this restoration... hope someone guide me how to this , Thank you guy... looking forward for your replies...
    Quote Quote  
  2. I see nobody answer you yet so i will give it a try.
    Hi guys, this is my first thread in VH forum , hope someone can help me with restoring . I have managed to copy my video tapes into my PC, now the biggest issue is i have to clean it
    Give as your workflow what vcr what tv card and so on ntsc or pal.
    You say the same as my problem then you have very good chance to make it work with that script.

    Do you have any knowledge of avisynth and how to use it you can just copy the script and you are done https://forum.videohelp.com/threads/344962-VHS-Cleanup-What-can-i-do/page3
    copy it from here and all the plugins that you need to use the script open that script in notepad first and change the source to match the path of yours and you are done
    Quote Quote  
  3. Member Cornucopia's Avatar
    Join Date
    Oct 2001
    Location
    Deep in the Heart of Texas
    Search PM
    How BAD are your tapes? (IOW, could they be captured again without more/serious degradation?) I ask this because one REALLY GOOD way to improve resolution & remove random tape-based noise is to MERGE successive captures (assuming they are trimmed to IDENTICAL lengths).

    More to follow...

    Scott
    Quote Quote  
  4. Member
    Join Date
    Apr 2012
    Location
    United Kingdom
    Search Comp PM
    Originally Posted by mammo1789 View Post
    I see nobody answer you yet so i will give it a try.
    Hi guys, this is my first thread in VH forum , hope someone can help me with restoring . I have managed to copy my video tapes into my PC, now the biggest issue is i have to clean it
    Give as your workflow what vcr what tv card and so on ntsc or pal.
    You say the same as my problem then you have very good chance to make it work with that script.

    Do you have any knowledge of avisynth and how to use it you can just copy the script and you are done https://forum.videohelp.com/threads/344962-VHS-Cleanup-What-can-i-do/page3
    copy it from here and all the plugins that you need to use the script open that script in notepad first and change the source to match the path of yours and you are done
    Firstly, thank you for reply , really appreciate it.., I have never used avisynth before , i have downloaded the plugins and copied into my avisynth plugin folder and downloaded the test.avs script and replaced with my file name and open in VirturalDub 1.9.11 i get this error comes up..

    Click image for larger version

Name:	1.jpg
Views:	2495
Size:	72.4 KB
ID:	11787

    Script used
    MPEG2Source ("wedding.mpg")
    ConvertToYV12(interlaced =true)
    AssumeTFF()
    SeparateFields()
    a=last

    clense(reduceflicker=false).merge(last,0.5).clense (reduceflicker=false)
    mot=removegrain(11,0).removegrain(20,0).DepanEstim ate(range=2)
    take2=a.depaninterleave(mot,prev=2,next=2,subpixel =2)
    clean1=take2.TMedian2().selectevery(5,2)

    sup1 = clean1.minblur(1).removegrain(11,0).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)

    bv22=sup1.manalyse(isb=true, truemotion=false,global=true,delta=2,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=2,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))
    TMedian2().selectevery(5,2)

    sup3 = last.msuper(pel=2,sharp=2)
    bv33=sup3.manalyse(isb=true, truemotion=false,global=true,delta=3,blksize=8,ove rlap=4,search=5,searchparam=4,DCT=5)
    bv32=sup3.manalyse(isb=true, truemotion=false,global=true,delta=2,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=2,blksize=8,overlap=4,search=5,searc hparam=4,DCT=5)
    fv33=sup3.manalyse(isb=false,truemotion=false,glob al=true,delta=3,blksize=8,overlap=4,search=5,searc hparam=4,DCT=5)

    last.mdegrain3(sup3,bv31,fv31,bv32,fv32,bv33,fv33, thSAD=499)

    Interleave()
    Weave()

    ###
    #####interpolate bad frames and residual cleaning
    ###

    Super = msuper()
    bv1 = manalyse(Super, isb=true, delta=2)
    fv1 = manalyse(Super, isb=false, delta=2)
    bv2 = manalyse(Super, isb=true, delta=3)
    fv2 = manalyse(Super, isb=false, delta=3)
    global CandidatesForN = mflowinter(Super, bv2, fv2, time=33.3, ml=100)
    global CandidatesForO = mflowinter(Super, bv2, fv2, time=66.7, ml=100)
    global CandidatesForC = mflowinter(Super, bv1, fv1, time=50.0, ml=100)

    last
    rx(104,12) #104-116 replaced

    AssumeTFF()
    SeparateFields()
    f1=SelectEven().RemoveDirtMC(100,false).LSFMod(str ength=5)
    f2=SelectOdd().RemoveDirtMC(100,false).LSFMod(stre ngth=5)
    Interleave(f1,f2)
    Weave()





    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
    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=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,int limit, bool "_grey")
    {
    _grey=default(_grey, false)
    limit = default(limit,6)
    i=MSuper(clip,pel=2)
    bvec = MAnalyse(i,isb=false, blksize=8, delta=1, truemotion=true)
    fvec = MAnalyse(i,isb=true, 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 R(clip Source, int N)
    {
    # N is number of the frame in Source that needs replacing.
    # Frame N will be replaced.

    Source.trim(0,-N) ++ CandidatesForC.trim(N-1,-1) ++ Source.trim(N+1,0)
    }


    function RP(clip Source, int N)
    {
    # N is number of the first frame in Source that needs replacing.
    # Frames N and N+1(O) will be replaced.

    Source.trim(0,-N) ++ CandidatesForN.trim(N-1,-1) \
    ++ CandidatesForO.trim(N-1,-1) ++ Source.trim(N+2,0)
    }


    function RX(clip Source, int N, int X)
    {
    # N is number of the 1st frame in Source that needs replacing.
    # X is total number of frames to replace
    #e.g. RX(101, 5) would replace 101,102,103,104,105 , by using 100 and 106 as reference points for mflowfps interpolation

    start=Source.trim(N-1,-1) #one good frame before, used for interpolation reference point
    end=Source.trim(N+X,-1) #one good frame after, used for interpolation reference point

    start+end
    AssumeFPS(1) #temporarily FPS=1 to use mflowfps

    super = MSuper()
    backward_vec = MAnalyse(super, isb = true)
    forward_vec = MAnalyse(super, isb = false)
    MFlowFps(super, backward_vec, forward_vec, blend=false, num=X+1, den=1) #num=X+1
    AssumeFPS(FrameRate(Source)) #return back to normal source framerate for joining
    Trim(1, framecount-1) #trim ends, leaving replacement frames

    Source.trim(0,-N) ++ last ++ Source.trim(N+X+1,0)
    }
    Quote Quote  
  5. Member
    Join Date
    Apr 2012
    Location
    United Kingdom
    Search Comp PM
    Originally Posted by Cornucopia View Post
    How BAD are your tapes? (IOW, could they be captured again without more/serious degradation?) I ask this because one REALLY GOOD way to improve resolution & remove random tape-based noise is to MERGE successive captures (assuming they are trimmed to IDENTICAL lengths).

    More to follow...

    Scott
    Thanks for replying , VHS Tape is been damanged badly coz not been played for more than 12 years, I have captured more than 7 times and little bit of improvement by keep on cleaning the VCR head / tape. Video resoultion is 352*288 PAL, quality is terrible when it's 480p, Length of the video tape is more than 3hrs but only managed to get 2hr 20mins in a watchable quality..
    Quote Quote  
  6. Member hech54's Avatar
    Join Date
    Jul 2001
    Location
    Yank in Europe
    Search PM
    Originally Posted by rajakumarr19 View Post
    Video resoultion is 352*288 PAL
    Time to start over again.
    Quote Quote  
  7. Banned
    Join Date
    Oct 2004
    Location
    New York, US
    Search Comp PM
    Originally Posted by mammo1789 View Post
    Do you have any knowledge of avisynth and how to use it you can just copy the script and you are done https://forum.videohelp.com/threads/344962-VHS-Cleanup-What-can-i-do/page3
    copy it from here and all the plugins that you need to use the script open that script in notepad first and change the source to match the path of yours and you are done
    The script is not located at the link given. It's in another thread, here:
    https://forum.videohelp.com/threads/343296-Transfer-of-real-bad-tape-to-pc-and-restore?...=1#post2139402


    Originally Posted by rajakumarr19 View Post
    I have never used avisynth before , i have downloaded the plugins and copied into my avisynth plugin folder and downloaded the test.avs script and replaced with my file name and open in VirturalDub 1.9.11 i get this error comes up..

    Image
    [Attachment 11787 - Click to enlarge]


    Script used
    MPEG2Source ("wedding.mpg")
    ConvertToYV12(interlaced =true)
    ....
    ....
    MPEG2Source can't be used in that manner. Also, usually MPEG2 is already YV12 colorspace. But it won't hurt to be sure by using ConvertToYV12.

    MPEG2Source is part of the DGMPGDec package: http://neuron2.net/dgmpgdec/dgmpgdec.html .
    A guide to using it with MPG and similar videos: http://neuron2.net/dgmpgdec/QuickStart.html
    Last edited by sanlyn; 22nd Mar 2014 at 04:17.
    Quote Quote  
  8. MPEG2Source can't be used in that manner. Also, usually MPEG2 is already YV12 colorspace. But it won't hurt to be sure by using ConvertToYV12.
    my bad it was intended for something else sorry.Sanlyn is right the directshow source is much better and you have to have DGMPGDec package to work as it is ( don't use it here my mistake )I assume you captured avi files so avisource is more appropriate ( if you use aspmod you can just enter insert and it will recognize the source automatically, it is much easier when i started learning avisynth i found it very helpful( i still consider my self newbie after all that time with video ).

    Video resoultion is 352*288 PAL
    Time to start over again.
    Hm I must agree here 720x576(DVD) or 704x576( DVD) or even 768x576 ( good for other final codec including mkv ) are much much better than 352x288 which is even lower than half d1 res 352x576 ( but i know of some folks that use them even I but it was for some turkish series for my cousin and i had to put a lot of them on one dvd so I went with lower bitrate and lower resolution
    Do it again and post some samples



    Ops i now see it is mpeg file i'm not very carеfull today then in the first line instead of MPEG2Source ("wedding.mpg")
    enter DirectShowSource ("wedding.mpg")
    or use sanlyn suggestion

    you have error in line 17 of the script you posted did you copy the script exactly from sanlyn or from lin that i gave you

    copy this script exactly and just change the path of your video ( you copy all the plugins that i posted on the other tread right ) should work

    DirectShowSource("D:\shaking.mpg")
    AssumeFPS(25)
    ConvertToYV12(interlaced =true)
    AssumeTFF()
    SeparateFields()
    a=last

    clense(reduceflicker=false).merge(last,0.5).clense (reduceflicker=false)
    mot=removegrain(11,0).removegrain(20,0).DepanEstim ate(range=2)
    take2=a.depaninterleave(mot,prev=2,next=2,subpixel =2)
    clean1=take2.TMedian2().selectevery(5,2)

    sup1 = clean1.minblur(1).removegrain(11,0).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)

    bv22=sup1.manalyse(isb=true, truemotion=false,global=true,delta=2,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=2,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))
    TMedian2().selectevery(5,2)

    sup3 = last.msuper(pel=2,sharp=2)
    bv33=sup3.manalyse(isb=true, truemotion=false,global=true,delta=3,blksize=8,ove rlap=4,search=5,searchparam=4,DCT=5)
    bv32=sup3.manalyse(isb=true, truemotion=false,global=true,delta=2,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=2,blksize=8,overlap=4,search=5,searc hparam=4,DCT=5)
    fv33=sup3.manalyse(isb=false,truemotion=false,glob al=true,delta=3,blksize=8,overlap=4,search=5,searc hparam=4,DCT=5)

    last.mdegrain3(sup3,bv31,fv31,bv32,fv32,bv33,fv33, thSAD=499)

    Interleave()
    Weave()

    ###
    #####interpolate bad frames and residual cleaning
    ###

    Super = msuper()
    bv1 = manalyse(Super, isb=true, delta=2)
    fv1 = manalyse(Super, isb=false, delta=2)
    bv2 = manalyse(Super, isb=true, delta=3)
    fv2 = manalyse(Super, isb=false, delta=3)
    global CandidatesForN = mflowinter(Super, bv2, fv2, time=33.3, ml=100)
    global CandidatesForO = mflowinter(Super, bv2, fv2, time=66.7, ml=100)
    global CandidatesForC = mflowinter(Super, bv1, fv1, time=50.0, ml=100)

    last
    rx(104,12) #104-116 replaced

    AssumeTFF()
    SeparateFields()
    f1=SelectEven().RemoveDirtMC(500,false).LSFMod(str ength=50)
    f2=SelectOdd().RemoveDirtMC(500,false).LSFMod(stre ngth=50)
    Interleave(f1,f2)
    Weave()





    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
    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=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,int limit, bool "_grey")
    {
    _grey=default(_grey, false)
    limit = default(limit,6)
    i=MSuper(clip,pel=2)
    bvec = MAnalyse(i,isb=false, blksize=8, delta=1, truemotion=true)
    fvec = MAnalyse(i,isb=true, 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 R(clip Source, int N)
    {
    # N is number of the frame in Source that needs replacing.
    # Frame N will be replaced.

    Source.trim(0,-N) ++ CandidatesForC.trim(N-1,-1) ++ Source.trim(N+1,0)
    }


    function RP(clip Source, int N)
    {
    # N is number of the first frame in Source that needs replacing.
    # Frames N and N+1(O) will be replaced.

    Source.trim(0,-N) ++ CandidatesForN.trim(N-1,-1) \
    ++ CandidatesForO.trim(N-1,-1) ++ Source.trim(N+2,0)
    }


    function RX(clip Source, int N, int X)
    {
    # N is number of the 1st frame in Source that needs replacing.
    # X is total number of frames to replace
    #e.g. RX(101, 5) would replace 101,102,103,104,105 , by using 100 and 106 as reference points for mflowfps interpolation

    start=Source.trim(N-1,-1) #one good frame before, used for interpolation reference point
    end=Source.trim(N+X,-1) #one good frame after, used for interpolation reference point

    start+end
    AssumeFPS(1) #temporarily FPS=1 to use mflowfps

    super = MSuper()
    backward_vec = MAnalyse(super, isb = true)
    forward_vec = MAnalyse(super, isb = false)
    MFlowFps(super, backward_vec, forward_vec, blend=false, num=X+1, den=1) #num=X+1
    AssumeFPS(FrameRate(Source)) #return back to normal source framerate for joining
    Trim(1, framecount-1) #trim ends, leaving replacement frames

    Source.trim(0,-N) ++ last ++ Source.trim(N+X+1,0)
    }
    Last edited by mammo1789; 4th Apr 2012 at 10:32.
    Quote Quote  
  9. Member
    Join Date
    Apr 2012
    Location
    United Kingdom
    Search Comp PM
    Originally Posted by sanlyn View Post
    Originally Posted by mammo1789 View Post
    Do you have any knowledge of avisynth and how to use it you can just copy the script and you are done https://forum.videohelp.com/threads/344962-VHS-Cleanup-What-can-i-do/page3
    copy it from here and all the plugins that you need to use the script open that script in notepad first and change the source to match the path of yours and you are done
    The script is not located at the link given. It's in another thread, here:
    https://forum.videohelp.com/threads/343296-Transfer-of-real-bad-tape-to-pc-and-restore?...=1#post2139402


    Originally Posted by rajakumarr19 View Post
    I have never used avisynth before , i have downloaded the plugins and copied into my avisynth plugin folder and downloaded the test.avs script and replaced with my file name and open in VirturalDub 1.9.11 i get this error comes up..

    Image
    [Attachment 11787 - Click to enlarge]


    Script used
    MPEG2Source ("wedding.mpg")
    ConvertToYV12(interlaced =true)
    ....
    ....
    MPEG2Source can't be used in that manner. Also, usually MPEG2 is already YV12 colorspace. But it won't hurt to be sure by using ConvertToYV12.

    MPEG2Source is part of the DGMPGDec package: http://neuron2.net/dgmpgdec/dgmpgdec.html . Use DGIndex from this package to create a .d2v index file of your mpg. Then open the .d2v in Avisynth with something like this: MPEG2Source(MyFile.d2v).

    A guide to using it with MPG and similar videos: http://neuron2.net/dgmpgdec/QuickStart.html
    Simple to use...

    but i do get this error... :S

    Click image for larger version

Name:	error.png
Views:	1570
Size:	13.7 KB
ID:	11798
    Quote Quote  
  10. Member
    Join Date
    Apr 2012
    Location
    United Kingdom
    Search Comp PM
    Originally Posted by mammo1789 View Post
    MPEG2Source can't be used in that manner. Also, usually MPEG2 is already YV12 colorspace. But it won't hurt to be sure by using ConvertToYV12.
    my bad it was intended for something else sorry.Sanlyn is right the directshow source is much better and you have to have DGMPGDec package to work as it is ( don't use it here my mistake )I assume you captured avi files so avisource is more appropriate ( if you use aspmod you can just enter insert and it will recognize the source automatically, it is much easier when i started learning avisynth i found it very helpful( i still consider my self newbie after all that time with video ).

    Video resoultion is 352*288 PAL
    Time to start over again.
    Hm I must agree here 720x576(DVD) or 704x576( DVD) or even 768x576 ( good for other final codec including mkv ) are much much better than 352x288 which is even lower than half d1 res 352x576 ( but i know of some folks that use them even I but it was for some turkish series for my cousin and i had to put a lot of them on one dvd so I went with lower bitrate and lower resolution
    Do it again and post some samples



    Ops i now see it is mpeg file i'm not very carеfull today then in the first line instead of MPEG2Source ("wedding.mpg")
    enter DirectShowSource ("wedding.mpg")
    or use sanlyn suggestion

    you have error in line 17 of the script you posted did you copy the script exactly from sanlyn or from lin that i gave you

    copy this script exactly and just change the path of your video ( you copy all the plugins that i posted on the other tread right ) should work

    DirectShowSource("D:\shaking.mpg")
    AssumeFPS(25)
    ConvertToYV12(interlaced =true)
    AssumeTFF()
    SeparateFields()
    a=last

    clense(reduceflicker=false).merge(last,0.5).clense (reduceflicker=false)
    mot=removegrain(11,0).removegrain(20,0).DepanEstim ate(range=2)
    take2=a.depaninterleave(mot,prev=2,next=2,subpixel =2)
    clean1=take2.TMedian2().selectevery(5,2)

    sup1 = clean1.minblur(1).removegrain(11,0).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)

    bv22=sup1.manalyse(isb=true, truemotion=false,global=true,delta=2,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=2,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))
    TMedian2().selectevery(5,2)

    sup3 = last.msuper(pel=2,sharp=2)
    bv33=sup3.manalyse(isb=true, truemotion=false,global=true,delta=3,blksize=8,ove rlap=4,search=5,searchparam=4,DCT=5)
    bv32=sup3.manalyse(isb=true, truemotion=false,global=true,delta=2,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=2,blksize=8,overlap=4,search=5,searc hparam=4,DCT=5)
    fv33=sup3.manalyse(isb=false,truemotion=false,glob al=true,delta=3,blksize=8,overlap=4,search=5,searc hparam=4,DCT=5)

    last.mdegrain3(sup3,bv31,fv31,bv32,fv32,bv33,fv33, thSAD=499)

    Interleave()
    Weave()

    ###
    #####interpolate bad frames and residual cleaning
    ###

    Super = msuper()
    bv1 = manalyse(Super, isb=true, delta=2)
    fv1 = manalyse(Super, isb=false, delta=2)
    bv2 = manalyse(Super, isb=true, delta=3)
    fv2 = manalyse(Super, isb=false, delta=3)
    global CandidatesForN = mflowinter(Super, bv2, fv2, time=33.3, ml=100)
    global CandidatesForO = mflowinter(Super, bv2, fv2, time=66.7, ml=100)
    global CandidatesForC = mflowinter(Super, bv1, fv1, time=50.0, ml=100)

    last
    rx(104,12) #104-116 replaced

    AssumeTFF()
    SeparateFields()
    f1=SelectEven().RemoveDirtMC(500,false).LSFMod(str ength=50)
    f2=SelectOdd().RemoveDirtMC(500,false).LSFMod(stre ngth=50)
    Interleave(f1,f2)
    Weave()





    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
    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=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,int limit, bool "_grey")
    {
    _grey=default(_grey, false)
    limit = default(limit,6)
    i=MSuper(clip,pel=2)
    bvec = MAnalyse(i,isb=false, blksize=8, delta=1, truemotion=true)
    fvec = MAnalyse(i,isb=true, 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 R(clip Source, int N)
    {
    # N is number of the frame in Source that needs replacing.
    # Frame N will be replaced.

    Source.trim(0,-N) ++ CandidatesForC.trim(N-1,-1) ++ Source.trim(N+1,0)
    }


    function RP(clip Source, int N)
    {
    # N is number of the first frame in Source that needs replacing.
    # Frames N and N+1(O) will be replaced.

    Source.trim(0,-N) ++ CandidatesForN.trim(N-1,-1) \
    ++ CandidatesForO.trim(N-1,-1) ++ Source.trim(N+2,0)
    }


    function RX(clip Source, int N, int X)
    {
    # N is number of the 1st frame in Source that needs replacing.
    # X is total number of frames to replace
    #e.g. RX(101, 5) would replace 101,102,103,104,105 , by using 100 and 106 as reference points for mflowfps interpolation

    start=Source.trim(N-1,-1) #one good frame before, used for interpolation reference point
    end=Source.trim(N+X,-1) #one good frame after, used for interpolation reference point

    start+end
    AssumeFPS(1) #temporarily FPS=1 to use mflowfps

    super = MSuper()
    backward_vec = MAnalyse(super, isb = true)
    forward_vec = MAnalyse(super, isb = false)
    MFlowFps(super, backward_vec, forward_vec, blend=false, num=X+1, den=1) #num=X+1
    AssumeFPS(FrameRate(Source)) #return back to normal source framerate for joining
    Trim(1, framecount-1) #trim ends, leaving replacement frames

    Source.trim(0,-N) ++ last ++ Source.trim(N+X+1,0)
    }
    This one also didn't help.... planning to start over again properly... going to record the full tape again in AVI 720*576 and try to do this again.. just give me one day.. and also post sample clip here once its done...

    Click image for larger version

Name:	new error.png
Views:	1524
Size:	15.2 KB
ID:	11799
    Quote Quote  
  11. Banned
    Join Date
    Oct 2004
    Location
    New York, US
    Search Comp PM
    Don't worry about the "comma or )" error, that happens all the time. Typo's are a frequent pain in the neck.

    If you're capturing to AVI, capture with huffyuv lossless compression (Lagarith is too slow for real-time capture) in YUY2 to avoid color problems. Open an AVI with plain old AviSource(). That script will require that you work in YV12, so be sure to include the COnvertToYV12(interlaced=true) statement in the script you run.

    When you copy avs scripts from the forum, be careful about code that is enclosed inside "QUOTE" instead of inside "CODE". The forum software often puts spaces in lines where they don't belong when "QUOTE" is used, so you get errors when that happens. It's best to copy that script from the original link posted earlier, as you'll see that the original script is inside "CODE" marks.
    Last edited by sanlyn; 22nd Mar 2014 at 04:18.
    Quote Quote  
  12. If you're capturing to AVI, capture with huffyuv lossless compression (Lagarith is too slow for real-time capture) in YUY2 to avoid color problems
    i don't understand why people say to slow when in my pc uses 10-20% max, and i surf and do word and other stuff while capturing, and it is also multitraded ( altough there is huffyuv that is mt also )and better for dual or quadcores, if you have "powerful" machine then go with lagarith it will save you more space because it can compress better than huff.
    Quote Quote  
  13. Banned
    Join Date
    Oct 2004
    Location
    New York, US
    Search Comp PM
    True, but we have to consider what rajakumarr19 is probably using for hardware.
    Last edited by sanlyn; 22nd Mar 2014 at 04:18.
    Quote Quote  
  14. Member
    Join Date
    Apr 2012
    Location
    United Kingdom
    Search Comp PM
    Originally Posted by sanlyn View Post
    True, but we have to consider what rajakumarr19 is probably using for hardware.
    I was doing all of the process on my house desktop with 2GB RAM, AMD, 500GB. but now going to start again with my laptop... with Intel i7, 3tb, 8gb ram, Intel HD graphics... hope it will save me some time during this process.
    Quote Quote  
  15. Banned
    Join Date
    Oct 2004
    Location
    New York, US
    Search Comp PM
    When using a laptop for capture, monitor the process carefully. The usual problem with laptop capture is dropped frames and audio sync glitches due to the slow hartd drives in laptops. Sometimes it works well, sometimes it doesn't. ALso, post-processing will be slower.
    Last edited by sanlyn; 22nd Mar 2014 at 04:18.
    Quote Quote  
  16. When using a laptop for capture, monitor the process carefully. The usual problem with laptop capture is dropped frames and audio sync glitches due to the slow hartd drives in laptops. Sometimes it works well, sometimes it doesn't. ALso, post-processing will be slower.
    I think he said that will try the laptop for postprocess only he didn't say what capture card or processor he is using ( but i assume some amd x2 class one).
    Although true about older laptops hdd (new ones in laptops are even faster than ordinary sata or pata 7200 desktop hdd he has ssd maybe )the i7 m ( quadcore ) is also extremely fast especially for video render and 8gb ram will make it breath comfortably. I know he said 3tb but I assume there is also ssd ( it looks like very expensive and fast laptop ) there I said it

    Concerning the script ( which on the original post was posted by poisondeathray) it is very slow on any pc including quadcores because doesn't uses MT and other stuff so you will have to deal with it ( in my pc 0,75 - 1,5 fps ). I will still go for the processing in laptop and capturing in desktop.

    Did you recapture in avi losless ? then post some of the samples here I'm sure guru guys like sanlyn master poisondeathray and jagabo will deal with it with easy im here like a spotter only
    Quote Quote  
  17. Member
    Join Date
    Apr 2012
    Location
    United Kingdom
    Search Comp PM
    Originally Posted by mammo1789 View Post
    When using a laptop for capture, monitor the process carefully. The usual problem with laptop capture is dropped frames and audio sync glitches due to the slow hartd drives in laptops. Sometimes it works well, sometimes it doesn't. ALso, post-processing will be slower.
    I think he said that will try the laptop for postprocess only he didn't say what capture card or processor he is using ( but i assume some amd x2 class one).
    Although true about older laptops hdd (new ones in laptops are even faster than ordinary sata or pata 7200 desktop hdd he has ssd maybe )the i7 m ( quadcore ) is also extremely fast especially for video render and 8gb ram will make it breath comfortably. I know he said 3tb but I assume there is also ssd ( it looks like very expensive and fast laptop ) there I said it

    Concerning the script ( which on the original post was posted by poisondeathray) it is very slow on any pc including quadcores because doesn't uses MT and other stuff so you will have to deal with it ( in my pc 0,75 - 1,5 fps ). I will still go for the processing in laptop and capturing in desktop.

    Did you recapture in avi losless ? then post some of the samples here I'm sure guru guys like sanlyn master poisondeathray and jagabo will deal with it with easy im here like a spotter only
    Sorry for the late reply guys... my VCR broke after playing my bad videos tapes , ordered a VCR head cleaner, waiting for that to fix it... and it took nearly two days for me to sort out my easycap drive with my W7.... i have no idea what should i do...

    I gave the video tapes to Jessops to ask them to make DVD but they made a VIDEO-CD as 3 disc... now i got the file bit cleaner..... buts its MPG...... n again its same as my old rip 352*288.. but uts better than before...

    just give 1hrs will post a screenshot of it...
    Quote Quote  
  18. Banned
    Join Date
    Oct 2004
    Location
    New York, US
    Search Comp PM
    A video CD? 3 hours, on one disc?
    And now....a head-cleaning tape?

    Not much anyone can do at this point. Good luck.
    Last edited by sanlyn; 22nd Mar 2014 at 04:18.
    Quote Quote  
  19. Have you tried virtualvcr or graphedit . graphedit (see here) is the kind of tool developers use to debug and make softwares , it's for advanced users though.
    352x288 is not acceptable

    Also you should try a good software called ChrisTV (the lite version should be enough i believe to record avi lossless)
    *** DIGITIZING VHS / ANALOG VIDEOS SINCE 2001**** GEAR: JVC HR-S7700MS, TOSHIBA V733EF AND MORE
    Quote Quote  
  20. Member
    Join Date
    Apr 2012
    Location
    United Kingdom
    Search Comp PM
    Originally Posted by sanlyn View Post
    A video CD? 3 hours, on one disc?
    And now....a head-cleaning tape?

    Not much anyone can do at this point. Good luck.
    Basically its 3 VCDs of 2hrs 20mins length..., if i get my Head-Cleaning tape by tomorrow then i will re-do it again with my easycap... i should get it by today just coz its bank holiday need to wait one more day....
    Quote Quote  
  21. Member
    Join Date
    Apr 2012
    Location
    United Kingdom
    Search Comp PM
    Originally Posted by themaster1 View Post
    Have you tried virtualvcr or graphedit . graphedit (see here) is the kind of tool developers use to debug and make softwares , it's for advanced users though.
    352x288 is not acceptable

    Also you should try a good software called ChrisTV (the lite version should be enough i believe to record avi lossless)
    Thank you... will give a try to these software today
    Quote Quote  
  22. Banned
    Join Date
    Oct 2004
    Location
    New York, US
    Search Comp PM
    The problem now is the VCR. It depends on what you mean by the VCR being "broke". If you mean that it randomly and suddenly stops playing, a head cleaner won't fix it. Several things could cause that, but it's never caused by dirty heads. Usually it's a bad end of tape sensor, an electronic part (likely a diode) that needs to be replaced. There are also tension guides that get worn or misaligned, which put the brakes on tape flow when they sense something wrong.

    I don't know of anyone who recommends head cleaning tapes. Most techs would absolutely forbid them; they create wear in video and audio heads, and often damage them. The correct way to clean video heads is shown here: http://www.mediacollege.com/video/misc/headclean.html . Cleaning tapes are abrasive. Don't fall for the non-abrasive advertising campaigns these products like to push. All tapes are abrasive, period, whether they are cleaners or not. Cleaners generate heat across the video drum and audio head; there's no getting around it. If you insist on using one of these, run them for a only a few seconds at most. A "few seconds" means no more than 3 or 4 seconds.
    Last edited by sanlyn; 22nd Mar 2014 at 04:18.
    Quote Quote  
  23. Also you should try a good software called ChrisTV (the lite version should be enough i believe to record avi lossless)
    lite version doesn't let you record only watch tv, you have to pay to record
    Quote Quote  
  24. Banned
    Join Date
    Oct 2004
    Location
    New York, US
    Search Comp PM
    Eww. Bummer.
    Last edited by sanlyn; 22nd Mar 2014 at 04:19.
    Quote Quote  
  25. I see nobody mentioned dscaler it's free and although it is meant for tv viewing with best deinterlacing it can also serve as capture software ( you could use any codec you want )even if the card is not recognized you could chose unknown card and it works even asesnito can try it in his hauppage card
    Quote Quote  
  26. Member
    Join Date
    Apr 2012
    Location
    United Kingdom
    Search Comp PM
    Originally Posted by mammo1789 View Post
    I see nobody mentioned dscaler it's free and although it is meant for tv viewing with best deinterlacing it can also serve as capture software ( you could use any codec you want )even if the card is not recognized you could chose unknown card and it works even asesnito can try it in his hauppage card
    Thank you , finally received my Head cleaner today morning and cleaned the VCR. Recorded the tape completely in 720*576 in AVI. so now... need to start everything from beginning
    Quote Quote  
  27. I think you should listen to sanlyn advice concerning video cleaning tapes ( aka never to use them ) instead it is much better to clean it you self with some cloth ( I personal clean the heads this way, open the top take some a4 copier paper slice it to small pieces like 2-3 pen in width and about the same length as pens, then gently ( but not very that way you are not cleaning anything just slide it ) the paper that was souk in 95% alcohol keep against the video heads and rotate the heads when the gunk comes to the paper trough it away and put another one till there is no black coming out from the heads you should also clean the path ( erase heads, pinch roller, and all the joints where the cassette is going trough you can do this with q-tips becaouse it is not so risky as in the heads don't use q-tips on the heads you could also damage it ) . There are plenty of tutorials and treads on this site and others about cleaning vcr.
    But the question is is the vcr really dirty or is it something else you didn't say . I had some paranoia ( to not contaminate the tapes that are clean and each time i play the cassette that i suspect is dirty before put it another i clean the vcr ( i do this very often almost 3-4 times weakly no problem so far and it is long period ( in years ) that im doing that. Another "extreme" measure that i have taken is to clean the tapes it self ( only the most important ones i don't have the nerves to wine all those tapes and they are very long my friend).

    How is dscaler doing you did you capture it trough that or you manage trough vdub no comes the fun part after you capture the tapes
    cheers
    Quote Quote  
  28. if memory serves right only the version 4 can record the full height
    *** DIGITIZING VHS / ANALOG VIDEOS SINCE 2001**** GEAR: JVC HR-S7700MS, TOSHIBA V733EF AND MORE
    Quote Quote  
  29. Member
    Join Date
    Apr 2012
    Location
    United Kingdom
    Search Comp PM
    Originally Posted by mammo1789 View Post
    I think you should listen to sanlyn advice concerning video cleaning tapes ( aka never to use them ) instead it is much better to clean it you self with some cloth ( I personal clean the heads this way, open the top take some a4 copier paper slice it to small pieces like 2-3 pen in width and about the same length as pens, then gently ( but not very that way you are not cleaning anything just slide it ) the paper that was souk in 95% alcohol keep against the video heads and rotate the heads when the gunk comes to the paper trough it away and put another one till there is no black coming out from the heads you should also clean the path ( erase heads, pinch roller, and all the joints where the cassette is going trough you can do this with q-tips becaouse it is not so risky as in the heads don't use q-tips on the heads you could also damage it ) . There are plenty of tutorials and treads on this site and others about cleaning vcr.
    But the question is is the vcr really dirty or is it something else you didn't say . I had some paranoia ( to not contaminate the tapes that are clean and each time i play the cassette that i suspect is dirty before put it another i clean the vcr ( i do this very often almost 3-4 times weakly no problem so far and it is long period ( in years ) that im doing that. Another "extreme" measure that i have taken is to clean the tapes it self ( only the most important ones i don't have the nerves to wine all those tapes and they are very long my friend).

    How is dscaler doing you did you capture it trough that or you manage trough vdub no comes the fun part after you capture the tapes
    cheers
    Thank you so much, it really helped... basically its a new VCR bought 3 weeks ago (just for this process). I have cleaned as you said and re-recorded it.. using dscaler, output is really unbeliveable... never expected it ..

    I think its time to start the cleaning process using virtualdub now , need step by step instructions) and again thank you...... ))))
    Quote Quote  
  30. if memory serves right only the version 4 can record the full height
    Hm i never tried the older ones only 4 so i cant vouch.

    Thank you so much, it really helped... basically its a new VCR bought 3 weeks ago (just for this process). I have cleaned as you said and re-recorded it.. using dscaler, output is really unbeliveable... never expected it ..
    Cleaning the heads ( and vcr for that mater ) can really help a lot for the stability and quality of the picture ( i noticed that you can have more drop outs on dirty heads with some bad tapes that lose oxide on the vcr)
    Could it be that after I cleaned remote my dvd recorder reads better
    Another thing you could try is the median approach that was mentioned couple of times here and on other treads on the forum basically you capture the same tape 3 times ( and get 3 copies of the same event ) then use this script and by averaging the captures you can eliminate a lot of noise or anomalies ( of just one capture) it can work better on bad equipment ( especially bad vcr that can add noise to the original source) without sacrificing the quality as normal denoisers do ( at least theoretically )

    Try it you cant loose anything ( other than more free time )
    Quote Quote  



Similar Threads

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