VideoHelp Forum
+ Reply to Thread
Results 1 to 5 of 5
Thread
  1. Hi have been posting recently about my wish to improve some disney's series from the 90's. I'had for recommendation to learn avisynth...well it's very complicated stuff for a dummy like me who barely know anything about video editing. Anyway i did some reading and a lot of testing and I'd like some guidance at this point.

    Here's a sample of the video I'm working on (opening song) (m2v), it's raw dvd.

    Here's the script I was givin to start with:

    Code:
    Mpeg2Source("VTS_01_1.demuxed.d2v", CPU2="xxxxxx", Info=3) 
    TFM() 
    TDecimate() 
    dehalo_alpha(rx=2.5, ry=1.0, brightstr=2.0)
    McTemporalDenoise(settings="high")

    Here's the script I come up with :

    Code:
    Mpeg2Source("C:\Users\Dingo ext.1.d2v", CPU=6, Info=3)
    DeCrawl(ythresht=7, ythreshs=8, cthresh=2, temporal=50, spatial=100, spatialpasses=1)
    deint = TDeint(mode=2, mtnmode=3, blim=100)
    TFM(cthresh=4, slow=2, clip2=deint)
    TDecimate(mode=1) 
    dehalo_alpha(rx=2.5, ry=1.0, brightstr=1.0)
    McTemporalDenoise(settings="high")
    aWarpSharp2(thresh=128, blur=2, type=0, depth=16, chroma=4)
    MSharpen(threshold=10, strength=100, mask=false, highq=true)
    Here's the result: (mkv). The video looks way better on vlc media player, but on my hd tv it's too clear and unnatural. I'd like to make it more smooth or something, but it takes forever to convert. Since I have around 200 episodes to convert, I'd like to find a faster way, with good results.

    If there is someone with great skills on anime, any advices would be much apreciate. By the way, a have no idea of what I am doing, basically I'm doing some screenshot comparaison to guide my self.

    One other thing I'have notice something that I don't know if it could be fix, the lines are not straight, is it AA ?, can it be fix to straight or better results ?

    Click image for larger version

Name:	Test B3.3c.mkv14.681.jpg
Views:	405
Size:	173.5 KB
ID:	41207


    Thank you for your time. I don't know if I'm posting to the right place, if not let me know or if you know any other sites where I could ask, that would be helpful.
    Image Attached Files
    Quote Quote  
  2. That last MSharpen() is way overdoing it. I played around with some dot crawl removal and got something that I think works a little better. Try this:

    Code:
    Mpeg2Source("Dingo ext.1.d2v", CPU2="xxxxxx", Info=3) 
    Crop(10,0,-6,-0)
    BilinearResize(512,height) # some halo reduction, noise reduction, faster processing
    ColorYUV(off_y=-3, off_u=-1) # minor brightness, color adjustments
    
    #reduce dot crawl artifacts
    SeparateFields()
    evn = SelectEven().Dup(threshold=8.0, maxcopies=1, blend=true, show=false)
    odd = SelectOdd().Dup(threshold=8.0, maxcopies=1, blend=true, show=false)
    Interleave(evn,odd)
    Weave()
    
    TFM(cthresh=4, slow=2)
    TDecimate(mode=1) 
    dehalo_alpha(rx=1.5, ry=1.0, brightstr=1.5)
    McTemporalDenoise(settings="medium")
    aWarpSharp2(thresh=128, blur=2, type=0, depth=16, chroma=4)
    #MSharpen(threshold=10, strength=25, mask=false, highq=true)
    Hysteria() # fine tune this
    nnedi3_rpow2(2, cshift="Spline36Resize", fwidth=720, fheight=height)
    MergeChroma(last, aWarpSharp(depth=10))
    The fairly high Dup() threshold might cause some frames with only very small motions (like when a character far in the background is speaking and only his lips are moving) to lose those motions. You can reduce the threshold to lower the likelihood of that but you'll get less effective dot crawl removal.
    Image Attached Files
    Quote Quote  
  3. Wow thank you. The result is great and those lines look much better. How did you do to make those lines thicker ? Was it hysteria ?, cause I tried many linedarken and did not get that result. Other than that the result is very much what I was looking for, except for a little thing.... I feel sometime that the video is not fluid, kind of slow motions. On what should I play to improve this ? is it what you describe with the Dup() threshol ?

    Man I wish I had half your brain to understand all this. Anyway, thank you very much for you help, it's very appreciate.
    Quote Quote  
  4. Originally Posted by Altruo View Post
    How did you do to make those lines thicker ? Was it hysteria ?
    Yes, Hysteria() is the line thickener/darkener. You can probably get better results playing with the parameters.

    Originally Posted by Altruo View Post
    Other than that the result is very much what I was looking for, except for a little thing.... I feel sometime that the video is not fluid, kind of slow motions. On what should I play to improve this ?
    When I play the source m2v and the encoded video side by side I see no difference in smoothness. Of course, 24 fps film is always a little jerky. Especially cartoons where character animation is usually only at 12 fps.

    Originally Posted by Altruo View Post
    is it what you describe with the Dup() threshol ?
    No, Dup() was used to reduce dot crawl artifacts.

    Normally Dup() is used to turn near duplicate frames into exact duplicates for better compressibility. For example, in a still shot you have many frames that are the same except for variations in noise. If you change all those frames to exactly duplicates you will get better compression. The threshold values determines how much the frames can differ before Dup() calls them "different" and passes them through untouched. You normally set the threshold value just high enough to ignore the noise between frames, but not so high that it misses small motions. When converting near-duplicates to duplicates Dup() allows you to repeat the first frame of the duplicates, the last frame of the duplicates (the default), or a blending of all the duplicates in that sequence.

    With NTSC interlaced video dot crawl artifacts invert from frame to frame. A pixel that is dark in one frame will be light in the next. Then dark again, light again, etc. You can mostly eliminate them simply by averaging pairs of frames together. But that causes problems when there is motion -- you get frames that look like double exposures. It occurred to me that I could use Dup() to determine when there was no motion between successive top fields (for clarity I'm only going to speak of top fields here, but the same is true for bottom fields) and then use its ability to blend images to eliminate dot crawl artifacts by blending those fields together. Since character animation is usually at 12 fps each film frame appears for 2 or 3 top fields, meaning that most of the time dot crawl artifacts can be nearly eliminated. A side effect of this is some noise reduction, so I used a lower setting in MCTD later.

    So in the sequence:

    Code:
    SeparateFields()
    evn = SelectEven().Dup(threshold=8.0, maxcopies=1, blend=true, show=false)
    odd = SelectOdd().Dup(threshold=8.0, maxcopies=1, blend=true, show=false)
    Interleave(evn,odd)
    Weave()
    SeprateFields() is used to separate frames into fields. SelectEven() is used to build a stream of only top fields, then Dup() is used to blend pairs of fields together when there is no motion. SelectOdd() is used to do the same for bottom fields. Then the top and bottom fields are interleaved and woven back together into interlace frames.

    By the way, you can use Dup(blend=true) again at the end of the script to get better compressibility.
    Last edited by jagabo; 12th Apr 2017 at 19:58.
    Quote Quote  
  5. Thanks for these good explanations, your're very generous of your time. I will play with the setting a little bit and learn more about it.

    You've been a good guide thank you, I would never in a million year come out with such script.
    Quote Quote  



Similar Threads

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