VideoHelp Forum
+ Reply to Thread
Results 1 to 18 of 18
Thread
  1. I have a Super 8 historic footage onto a PAL DVD, I believe it actually comes from a DV source. I don't know how the original was treated.
    I was reading this his thread and I would like to know if someone can help me figuring out my script for I need to deinterlace and transcode to something else for restoring and precomposing.

    Here's a grab of what I have using VLC media player:



    This is what I would like to do:

    1- Open VOB and save project with DGIndex
    2- Open project in VirtualDub via avs script
    3- Deinterlace using nnedi3 and yadifmod_v1 (or something else if recommended?)
    4- Change framerate from 25fps to 23,976fps
    5- (Change to square pixels)
    6- Save result with Lagarith Lossless Video Codec

    I manage to do from 1-3, and obviously 6, however I don't know:
    4- How to change the framerate
    5- How to change to square pixels, but actually, I don't know whether should I change to square pixels at all or not. Should I do it in VirtualDub or just reinterpret in my NLE editor?

    I need the footage for precomposing in a HD 1920x1080 23,976fps square pixels composition.

    Tips for enhancing quality of really old clips is also appreciated. Thanks in advance.
    Quote Quote  
  2. In AviSynth: AssumeFPS(24000,1001)
    In VirtualDub use Video -> Frame Rate..., in the Source Rate Adjustment section (top), select Change Frame Rate To (fps): [23.976]. If you have audio you'll have to stretch it too.

    QTGMC() is a better deinterlacer for most material. It's a smart bobber so you'll get double the frame rate.

    Code:
    QTGMC() # creates 50 fps progressive
    SelectEven() # half frame rate to 25 fps
    AsssumeFPS(24000,1001) # slow it down to 23.976 fps
    If you're going to use the video in a square pixel project you'll have to resize to square pixels at some point.
    Quote Quote  
  3. Thanks! I was getting an error until I realized there was an extra s in AssumeFPS in your code.
    Just one more thing though: what is the correct way to resize to square pixels for my source in VirtualDub? Is it ok to do it just using the resize filter to 768x576, using a computed eight from ratio of 4:3? I ask this because my NLE editor preset for PAL/D1 square pixels is actually 788x576.
    Quote Quote  
  4. Originally Posted by effes View Post
    I ask this because my NLE editor preset for PAL/D1 square pixels is actually 788x576.
    Didn't you say earlier this was for a 1920x1080 project? Or did I misread something? If it's eventually going to be 1920x1080, why do a 'temporary' resize to 768x576 (or whatever)?
    Quote Quote  
  5. Sorry about the AssumeFPS() typo.

    I agree with manono, resize once to your intended size.

    Code:
    WhateverResize(1440,1080) # 4:3 ratio to match your source
    AddBorders(240,0,240,0) # add borders to make it 16:9.
    Quote Quote  
  6. I just need square pixels. A 1.000 (1:1) par instead of 1,09. Then I just drag in a 1920x1080 project and animate and it's easier to work with masks in AE. Here's a grab of how the clip is going to be used... partly:



    Notice that there I rounded corners, cropped garbage and resized to 165% in AE. But later it's also gonna be downscaled to 50%, duplicated a few times, animated to spin clockwise around a character and all sort of stuff. So basically I need no black borders nor upscale to full frame. Just square pixels and 23.976 fps.

    Sorry for bringing PAL/D1 square pixels preset to discussion. I realized later that it's not helpful if I'm changing to 23.976 fps. But basically the question remains: what do I resize to end up with square pixels and not with a deformed the image? 768x576 or 788x576?

    Code:
      MPEG2Source("VTS_01_1.d2v")
      QTGMC() # creates 50 fps progressive
      SelectEven() # half frame rate to 25 fps
      AssumeFPS(24000,1001) # slow it down to 23.976 fps
      BilinearResize(768,576) # 4:3 ratio to match your source
    Quote Quote  
  7. Originally Posted by effes View Post
    But basically the question remains: what do I resize to end up with square pixels and not with a deformed the image?
    Resize to any 4:3 frame size.
    Quote Quote  
  8. The reason why it's 788x576 in some programs is the PAR interpretation is based on 704 or 702 width. Other programs base it on 720 width. It's a very long winded explanation - and there are multiple long threads explaning this - but the short story is there are different guidelines, ITU and non ITU resizing . If your source image has 8 pixel pillarboxing(8+704+8 = 720) , I would base it on 788x576.

    A better way, IMO, is to draw a perfect circle over a known circular object (E.g. in AE) . If circular objects are circular when shot straight on) (you have to take into consideration perspective and angles of the shot), then you have resized to square pixels correctly. You have a car or tractor tire in your image in the 1st post, something from that sequence shot straight on should work . This is a better method because it considers the actual content. For example you might not know if the DVD was done correctly
    Quote Quote  
  9. Thank you guys. So when you don't know if the source was done right basicaly is an eye test.
    I tried doing a test over the tire of the ambulance (dunno if I did it right). Looks better in 768x576 to me. I guess you can also tell by the letters in the vehicle.

    768x576


    788x576
    Quote Quote  
  10. And while we're at it, here's a sample of the footage without deinterlacing. Any tips of how I can improve the quality a bit? There's seems to be lens dirt in the upper part of the clip that it is repeated in all the shots. I tested MCTemporalDenoise with a low setting and it helped quite a bit. It's all a bit washed/blurry too. Not counting the splotches and such. It's obviously not going to be perfect, but if you can give any tips or guide if it's 's already been discussed I'll appreciated.
    Quote Quote  
  11. Deinterlacing it is the wrong thing to do and explains why it's still 'blurry' afterwards. It's field-blended from an NTSC film source and needs to be unblended:

    AssumeTFF()#needed for the sample, maybe not for the whole video
    Yadif(Mode=1)#or a better bobber, one such as QTGMC
    Srestore()#available here:

    http://avisynth.org/mediawiki/Srestore

    The script will give you a 23.976fps video which is, apparently, what you want anyway.
    Quote Quote  
  12. Yes, use SRestore() to get it back to the original 23.976 fps film frames. Then using RemoveSpots() will get rid of a lot of the dirt.

    https://forum.videohelp.com/threads/342085-I-think-an-easy-way-to-fix-dots-flickering-%...=1#post2130520

    That requires the RemoveDirt plugin.

    Regarding the aspect ratio, I don't think your choice of shots is a good one. The wheel isn't being viewed perfectly from the side and it's too low in the frame. When wide angle lenses are used there tend to be distortions towards the edges of the frame (think fish-eye lens). Given that it was recorded from a tape source it's almost certainly ITU compliant (the 4:3 image is contained in a 702x576 portion of the frame). Resize the 720x576 frame to 788x576. In any case, nobody's going to notice the tiny difference between ITU and MPEG resizing.
    Last edited by jagabo; 8th Sep 2012 at 16:45.
    Quote Quote  
  13. Thank you manono and jagabo (and poisondeathray for the always detailed information). I'm sorry I came up with a discussion about deinterlacing when no deinterlacing was required at all! I guess it'd been easier should I had posted the sample in the first place - specially when dealing with material of unknown source. RemoveSpots() has too many complex parameters for a noob like me to handle - but the defaults settings is giving me interesting and improved results already.

    Thank you!
    Quote Quote  
  14. You can call RemoveSpots() repeatedly. But you may get noticeable picture degradation with multiple calls.
    Quote Quote  
  15. If it's scaled down , animated and spinning around in an AE comp with motion blur (or even without) , I doubt anybody is going to notice fine details (not that there is much to begin with) or "oval" tires (and I think 788 is "more" correct for this case) . They are more likely to notice flickering large dirt specs, so you might go stronger on the dirt removal settings than you normally would

    There is a blue hue to this - were you planning on adjusting it or does it fit with the project you are doing ?
    Quote Quote  
  16. You might want to deshake it too.
    Quote Quote  
  17. Originally Posted by poisondeathray View Post
    There is a blue hue to this - were you planning on adjusting it or does it fit with the project you are doing ?
    Nope I want B&W, but I guess I can just use GreyScale(). However I'm not sure whether it is convenient to use it before or after RemoveSpots() in this case? Also if I want to use QTGMC as bobber instead of yadif, I no longer need to use SelectEven() and AssumeFPS(24000,1001) since now I'm using SRestore() or... did I misread something?

    Originally Posted by jagabo View Post
    You might want to deshake it too.
    Yes, I just came across this thread here where there's a Super8Salvage package and it uses Depan for motion stabilization plus Deflicker and a few of the plugins mentioned here but it's automated with .bat files and for outputting a DVD. My footage is a 1:30 min handheld clip with several shots. Would DeShaker be suitable in this case?

    My whole script so far, please tell me if I typed is some aberration :P

    Code:
    MPEG2Source("VTS_01_1.d2v")
    AssumeTFF()
    QTGMC()
    SRestore()
    GreyScale()
    RemoveSpots()
    
    function RemoveSpots(clip input, bool "_grey", int "repmode")
    {
        _grey=default(_grey, true)
        repmode=default(repmode, 16)
        clmode=17
        clensed=Clense(input, grey=_grey, cache=4)
        sbegin = ForwardClense(input, grey=_grey, cache=-1)
        send = BackwardClense(input, grey=_grey, cache=-1)
        alt=Repair(SCSelect(input, sbegin, send, clensed, debug=true), input, mode=repmode, modeU = _grey ? -1 : repmode ) 
        restore=Repair(clensed, input, mode=repmode, modeU = _grey ? -1 : repmode)
        corrected=RestoreMotionBlocks(clensed, restore, neighbour=input,  alternative=alt, gmthreshold=70, dist=1, dmode=2, debug=false, noise=10,  noisy=12, grey=_grey)
        return corrected
    }
    
    BilinearResize(788,576)
    Quote Quote  
  18. DePan sometimes causes a shift in the chroma channels (U and V are both decreased by one, generating a green tinge) so use GreyScale after DePan.
    Last edited by jagabo; 9th Sep 2012 at 07:55.
    Quote Quote  



Similar Threads

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