VideoHelp Forum
+ Reply to Thread
Page 2 of 3
FirstFirst 1 2 3 LastLast
Results 31 to 60 of 69
Thread
  1. Originally Posted by DB83 View Post
    Is it my eyes but those artifacts are not present in the later sample.

    But something, as I suggested, in good day-light may provide better analysis.
    Ok I will take another capture. In the meantime here is vdubbed version of the unprocessed capture in my last post. Notice there are artifacts in the "Wonka" letters
    Image Attached Files
    Quote Quote  
  2. Originally Posted by boolian2 View Post
    Originally Posted by Sharc View Post
    Originally Posted by DB83 View Post
    I am probably way off the scale here but vdub2 reports the OP's UT captures as Rec 709. Surely they should be Rec 601 ?
    Yes, the wrong codec was selected for SD video. Should be the 'UTVideo YUV422 BT.601' variant of the UTVideo codec suite, with the FOURCC code ULY2 instead of ULH2.
    (This applies to the OP's previous captures as well, b.t.w.)
    My bad. I changed it to ULY2. Here is a new capture using ULY2.
    The capture in post #29 looks pretty good to me. In post processing you may want to reduce the saturation somewhat and increase the gamma slightly - a matter of personal preference though.
    Last edited by Sharc; 1st Jul 2022 at 03:33.
    Quote Quote  
  3. New capture
    Image Attached Files
    Quote Quote  
  4. Originally Posted by boolian2 View Post
    New capture
    Looks good to me.
    Still, you may want to check your cables to prevent any residual Y/C crosstalk (dotcrawl, rainbows) possibly caused by the cables (like in your previous anime video)
    Last edited by Sharc; 1st Jul 2022 at 04:35.
    Quote Quote  
  5. Originally Posted by Sharc View Post
    Originally Posted by boolian2 View Post
    New capture
    Looks good to me.
    Still, you may want to check your cables to prevent any residual Y/C crosstalk (dotcrawl, rainbows) possibly caused by the cables (like in your previous anime video)
    Yeah I might replace the Monster Cable S-Video with a new S-Video cable from Amazon
    Quote Quote  
  6. The latest cap is looking pretty good. For what it's worth here's a version with the worst of the halos reduced, edges smoothed, and a little temporal noise reduction.

    Code:
    LWLibavVideoSource("amarec(20220701-0305).avi", cache=false, format="YUY2") 
    AssumeTFF()
    TFM()
    TDecimate()
    ConvertToYV12()
    FineDehalo(rx=3.0, ry=1.0)
    FineDehalo(rx=6, ry=1.0, BrightStr=0.5, DarkStr=0.5)
    Santiag()
    Sharpen(0.3)
    SMDegrain(tr=1, thSAD=200, refinemotion=true, contrasharp=false, PreFilter=4, mode=0, truemotion=true, plane=4, chroma=false)
    Image Attached Files
    Quote Quote  
  7. Member
    Join Date
    May 2005
    Location
    Australia-PAL Land
    Search Comp PM
    Wow.
    Quote Quote  
  8. A little better? Sharper and better aligned chroma, slightly sharper luma:

    Code:
    LWLibavVideoSource("amarec(20220701-0305).avi", cache=false, format="YUY2") 
    AssumeTFF()
    TFM()
    TDecimate()
    ConvertToYV12()
    FineDehalo(rx=3.0, ry=1.0)
    FineDehalo(rx=6, ry=1.0, BrightStr=0.5, DarkStr=0.5)
    Santiag()
    SMDegrain(tr=1, thSAD=200, refinemotion=true, contrasharp=false, PreFilter=4, mode=0, truemotion=true, plane=4, chroma=false)
    MergeChroma(aWarpSharp2(depth=5), LanczosResize(width/2, height).aWarpSharp2(depth=15).LanczosResize(width,height))
    ChromaShiftSP(x=-1)
    Sharpen(0.3)
    Image Attached Files
    Quote Quote  
  9. @jagabo: Very nice.
    Question about the chroma sharpening: Is the chroma subsampling (YV12, 4:2:0) the reason why you reduced the picture width by 2 before applying the sharpener?
    Quote Quote  
  10. Originally Posted by Sharc View Post
    @jagabo: Very nice.
    Question about the chroma sharpening: Is the chroma subsampling (YV12, 4:2:0) the reason why you reduced the picture width by 2 before applying the sharpener?
    No. VHS just has very low chroma resolution horizontally. Reducing the width by a factor of 2 gets the horizontal chroma resolution closer to the vertical chroma resolution. That way aWarpSharp2 sharpens more evenly over the two axis. Otherwise a much higher depth value would be required and the "warping" would be too strong on the vertical axis -- with some smaller objects losing their color.
    Quote Quote  
  11. Originally Posted by jagabo View Post
    Originally Posted by Sharc View Post
    @jagabo: Very nice.
    Question about the chroma sharpening: Is the chroma subsampling (YV12, 4:2:0) the reason why you reduced the picture width by 2 before applying the sharpener?
    No. VHS just has very low chroma resolution horizontally. Reducing the width by a factor of 2 gets the horizontal chroma resolution closer to the vertical chroma resolution. That way aWarpSharp2 sharpens more evenly over the two axis. Otherwise a much higher depth value would be required and the "warping" would be too strong on the vertical axis -- with some smaller objects losing their color.
    Cool, thanks
    Quote Quote  
  12. Originally Posted by jagabo View Post
    Code:
    LWLibavVideoSource("amarec(20220629-2054).avi", format="YUY2") 
    AssumeTFF()
    
    n = TFM(clip2=QTGMC(FPSDivisor=2)) # normal field matching
    s = TFM(Crop(0,0,-0,-1).AddBorders(0,1,0,0).AssumeBFF().SwapFields(), clip2=QTGMC(FPSDivisor=2)) # field matching after swapping field positions
    
    ncombs = n.Crop(8,8,-8,-8).ConvertToYV12().FindCombing(0) # look for combing in n
    scombs = s.Crop(8,8,-8,-8).ConvertToYV12().FindCombing(0) # look for combing in s
    morecombs = Subtract(scombs, ncombs) # which has more combing?
    ConditionalFilter(morecombs, s.Subtitle("s"), n.Subtitle("n"), "AverageLuma()", "LessThan", "126.0") # pick the frame with the least combing
    TDecimate()
    Where would I find the function "FindCombing()" which is called in above code? Thanks.
    Quote Quote  
  13. It's something I wrote a while back. I think the usage of GeneralConvolution with YV12 video requires AviSynth+, not the older versions of AviSynth. Also since it uses mt_lut(), it could be modified to use mt_edge() with a custom matrix instead of GeneralConvolution().

    Code:
    ###################################################
    #
    # Build a mask of areas where a pixel has a
    # darker pixel above and below it.
    #
    ##################################################
    
    function FindCombing(clip v, int "threshold")
    {
        threshold = default(threshold, 10)
    
        # find vertical low to high transitions
        Subtract(v, v.blur(1.0, 1.0))
        GeneralConvolution(0, "
            0 -8  0
            0  8  0
            0  0  0", chroma=false, alpha=false)
        lth = mt_lut("x 126 -")
    
        # find vertical high to low transitions
        Subtract(v, v.blur(1.0, 1.0))
        GeneralConvolution(0, "
            0  0  0
            0  8  0
            0 -8  0", chroma=false, alpha=false)
        htl = mt_lut("x 126 -")
    
        # Logical AND(ish)
        Overlay(lth, htl, mode="multiply")
        mt_binarize(threshold)
        mt_expand()
        mt_inpand()
        mt_inpand(chroma="-128")
    }
    
    ##################################################
    I also found that noise in some scenes of the later videos would sometimes cause ConditionalFilter() to choose the wrong frame. Lowering the threshold from 126.0 to 125.97 took care of that. You may have to tune it a bit for different videos.

    But since your latest caps don't have the same field bounce problem you probably don't need the code.
    Quote Quote  
  14. Originally Posted by jagabo View Post
    It's something I wrote a while back. I think the usage of GeneralConvolution with YV12 video requires AviSynth+, not the older versions of AviSynth. Also since it uses mt_lut(), it could be modified to use mt_edge() with a custom matrix instead of GeneralConvolution().

    Code:
    ###################################################
    #
    # Build a mask of areas where a pixel has a
    # darker pixel above and below it.
    #
    ##################################################
    
    function FindCombing(clip v, int "threshold")
    {
        threshold = default(threshold, 10)
    
        # find vertical low to high transitions
        Subtract(v, v.blur(1.0, 1.0))
        GeneralConvolution(0, "
            0 -8  0
            0  8  0
            0  0  0", chroma=false, alpha=false)
        lth = mt_lut("x 126 -")
    
        # find vertical high to low transitions
        Subtract(v, v.blur(1.0, 1.0))
        GeneralConvolution(0, "
            0  0  0
            0  8  0
            0 -8  0", chroma=false, alpha=false)
        htl = mt_lut("x 126 -")
    
        # Logical AND(ish)
        Overlay(lth, htl, mode="multiply")
        mt_binarize(threshold)
        mt_expand()
        mt_inpand()
        mt_inpand(chroma="-128")
    }
    
    ##################################################
    I also found that noise in some scenes of the later videos would sometimes cause ConditionalFilter() to choose the wrong frame. Lowering the threshold from 126.0 to 125.97 took care of that. You may have to tune it a bit for different videos.

    But since your latest caps don't have the same field bounce problem you probably don't need the code.
    Which avisynth plugins are you using? I tried to find them but your code still wouldn't run. So I just tried Handbrake again, and this is how it turned out, does this look ok:
    Image Attached Files
    Quote Quote  
  15. Wrong Aspect Ratio and some blended frames.
    If you seek help upload a snippet of the capture and post your script.
    Quote Quote  
  16. Originally Posted by Sharc View Post
    Wrong Aspect Ratio and some blended frames.
    If you seek help upload a snippet of the capture and post your script.
    The filters are

    Detelecine Default
    Interlace Detection Default
    Deinterlace Decomb EEDI2
    Denoise NLMeans Medium Animation
    Chroma Smooth Light Small

    The Dimensions are
    Image
    [Attachment 65719 - Click to enlarge]
    Quote Quote  
  17. Can't help you with handbrake. I don't use it. Maybe someone else.
    It's better you learn avisynth basics than wildly clicking options in GUI's
    And upload a few seconds of the capture so someone may take a look.
    Quote Quote  
  18. Originally Posted by boolian2 View Post
    Which avisynth plugins are you using?
    LSMASHSource, masktools2, TIVTC.

    Originally Posted by boolian2 View Post
    I tried to find them but your code still wouldn't run.
    AviSynth usually gives you an error message indicating what went wrong.

    Originally Posted by boolian2 View Post
    So I just tried Handbrake again, and this is how it turned out, does this look ok
    Your ITU cap has a pixel aspect ratio of 10:11. You encoded it as 1:1 so it displays incorrectly. Handbrake doesn't handle AVI with interlaced lossless YUV 4:2:2 chroma correctly. That has resulted in chroma blending artifacts. I don't think you can "fix" that about Handbrake.
    Last edited by jagabo; 4th Jul 2022 at 08:06.
    Quote Quote  
  19. Captures & Restoration lollo's Avatar
    Join Date
    Jul 2018
    Location
    Italy
    Search Comp PM
    It's better you learn avisynth basics than wildly clicking options in GUI's
    +1
    Quote Quote  
  20. Originally Posted by jagabo View Post
    Originally Posted by boolian2 View Post
    Which avisynth plugins are you using?
    LSMASHSource, masktools2, TIVTC.

    Originally Posted by boolian2 View Post
    I tried to find them but your code still wouldn't run.
    AviSynth usually gives you an error message indicating what went wrong.

    Originally Posted by boolian2 View Post
    So I just tried Handbrake again, and this is how it turned out, does this look ok
    Your ITU cap has a pixel aspect ratio of 10:11. You encoded it as 1:1 so it displays incorrectly. Handbrake doesn't handle AVI with interlaced lossless YUV 4:2:2 chroma correctly. That has resulted in chroma blending artifacts. I don't think you can "fix" that about Handbrake.
    Do you know which filter in Handbrake is causing the artifacts? I can just try turning it off until I figure out the avisynth stuff
    Quote Quote  
  21. Member
    Join Date
    Mar 2008
    Location
    United States
    Search Comp PM
    Try turning off the interlaced options, just leave detelecine
    Quote Quote  
  22. Originally Posted by davexnet View Post
    Try turning off the interlaced options, just leave detelecine
    I tried just detelecine first, without deinterlace, and it looks like Handbrake's "detelecine" isn't "inverse telecine", it just cleans up artifacts it finds from the original telecine process when the movie was put on VHS. So the "detelecine" didn't deinterlace it
    Quote Quote  
  23. Member
    Join Date
    Mar 2008
    Location
    United States
    Search Comp PM
    Did you set the frame rate to 23.976? Otherwise post a sample, something with
    steady movement
    Quote Quote  
  24. Originally Posted by davexnet View Post
    Did you set the frame rate to 23.976? Otherwise post a sample, something with
    steady movement
    Yeah, the frame rate is set to 23.976. I turned off Chroma Smoothing and Denoise and the artifacts are still there:

    Image
    [Attachment 65727 - Click to enlarge]


    Then I changed the deinterlacing from EEDI2 to Bob and it came out with this which I don't know how to explain:
    Image Attached Files
    Quote Quote  
  25. Originally Posted by boolian2 View Post
    Do you know which filter in Handbrake is causing the artifacts? I can just try turning it off until I figure out the avisynth stuff
    None of the filters you can control. It's the initial conversion from YUY2 to YV12. It's treated as progressive instead of interlaced, resulting in the chroma blending.
    Quote Quote  
  26. Originally Posted by boolian2 View Post
    Then I changed the deinterlacing from EEDI2 to Bob and it came out with this which I don't know how to explain:
    The field order is wrong. It was treated as bottom field first rather than top field first. And the chroma blending is still there.
    Quote Quote  
  27. Wrong field order. Just continuing with wildly clicking around in options of handbrake or other GUIs doesn't lead you anywhere.
    Quote Quote  
  28. Originally Posted by jagabo View Post
    Originally Posted by boolian2 View Post
    Do you know which filter in Handbrake is causing the artifacts? I can just try turning it off until I figure out the avisynth stuff
    None of the filters you can control. It's the initial conversion from YUY2 to YV12. It's treated as progressive instead of interlaced, resulting in the chroma blending.
    I downloaded the avisynth plugins you're using, what is _xp? I installed the plugins and got this error message when trying one of the avisynth scripts you posted earlier
    Image
    [Attachment 65729 - Click to enlarge]
    Last edited by boolian2; 4th Jul 2022 at 16:49.
    Quote Quote  
  29. http://avisynth.nl/index.php/FineDehalo
    But it won't solve the basic problem with your source or script. Means you can leave it away for the time being.
    Quote Quote  
  30. Originally Posted by Sharc View Post
    http://avisynth.nl/index.php/FineDehalo
    But it won't solve the basic problem with your source or script.
    So that's not included in the plugin? Do I just copy and paste it at the top of the file?
    Quote Quote  



Similar Threads

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