VideoHelp Forum
+ Reply to Thread
Results 1 to 25 of 25
Thread
  1. Hi there

    I hope all is well. Could someone please help me diagnose this clip:

    https://drive.google.com/open?id=1A6RMJMDnYo7-FGnGFdNh1iMbWy0MHhhM

    It's from an NTSC DVD. What would be the way forward to get it to progressive scan?

    Thanks
    Quote Quote  
  2. Member
    Join Date
    Mar 2008
    Location
    United States
    Search Comp PM
    Something like this will give 25 fps. Use DGindex to create the d2v file. Instead of yadif you can use qtgmc,
    a little better quality, but much slower.

    Code:
    LoadPlugin("J:\your_path\DGMPGDec\DGDecode.dll")
    import("F:\Program Files\AviSynth\plugins\srestore.avs")
    Load_Stdcall_plugin("J:\your_path\Yadif\Yadif.dll")
    mpeg2source("C:\your_path\VTS_01_03.demuxed.d2v")
    yadif(mode=1,order=1)
    srestore()
    Last edited by davexnet; 14th May 2019 at 03:42.
    Quote Quote  
  3. How do you know the output should be 25 fps and not double that of NTSC i.e. 59.94 fps? What settings would you recommend for qtgmc after evaluating that source?

    Thank you so much!
    Quote Quote  
  4. Not to put too fine a point on it, but only by using AviSynth can you undo that mess. If you don't know of it and aren't willing to learn at least a little bit to do the work needed for this video, then there's no other way to fix it. Get and read the docs included in the DGMPGDec package to help you get started.

    Also, that DVD is crap and should have been encoded as 16:9 and never field-blended to begin with.

    How do you know the output should be 25 fps...
    It's typical PAL to NTSC garbage. It's easy to spot because it's pretty common. Just put on a bobber and note all the blending.

    ...and not double that of NTSC i.e. 59.94 fps?
    Films aren't 60fps. They're 24fps. I'd go farther with your source and slow the video to 23.976fps and the audio to match.

    What settings would you recommend for qtgmc after evaluating that source?
    The default QTGMC() is fine.
    Quote Quote  
  5. Originally Posted by manono View Post
    but only by using AviSynth can you undo that mess.
    What do you mean? Are those AviSynth filters not enough?

    Thanks for everything else though, I will try qtgmc.

    Okay I tried loading srestore(), it says Avisynth open failure: I don't know what "AvsPlusVersionNumber" means, could you please advise?
    Last edited by johnny27depp; 13th May 2019 at 16:05.
    Quote Quote  
  6. Originally Posted by johnny27depp View Post
    What do you mean? Are those AviSynth filters not enough?
    My point was that not only are they enough, but it's the only way to properly remove the blending, or most of it anyway.

    Okay I tried loading srestore(), it says Avisynth open failure
    I don't use AviSynth+ so I can't help there. Both SRestore and QTGMC are third party filters and have to be either placed in the AviSynth Plugins folder or loaded explicitly in your script with the LoadPlugin filter.

    QTGMC can be difficult to get running as it's particular about the other filters needed to make it work.
    Last edited by manono; 13th May 2019 at 16:28.
    Quote Quote  
  7. Hmm so when you say go further to bring it to 23.976 fps does that involve another step after deinterlacing and bringing it down to PAL 25 fps?

    Originally Posted by manono View Post

    I don't use AviSynth+ so I can't help there.
    What do you use to run these filters?
    Quote Quote  
  8. Originally Posted by johnny27depp View Post
    Hmm so when you say go further to bring it to 23.976 fps does that involve another step after deinterlacing and bringing it down to PAL 25 fps?
    Just add AssumeFPS(24000, 1001) to your script. You'll have to slow the audio too.
    Quote Quote  
  9. Originally Posted by johnny27depp View Post
    What do you use to run these filters?
    AviSynth, not the plus version.

    As jagabo mentioned, after unblending the video to 25fps, then add the AssumeFPS command.
    Quote Quote  
  10. Is it better to use the normal AviSynth and not the plus version?

    Would it not be better to specify the frame rate in the srestore function like this:

    mpeg2source("C:\VTS_01_03.d2v")
    yadif(mode=1,order=1)
    Srestore(frate=23.976)

    What's the difference between doing that and using the AssumeFPS function?
    Quote Quote  
  11. Member
    Join Date
    Mar 2008
    Location
    United States
    Search Comp PM
    Originally Posted by johnny27depp View Post
    Is it better to use the normal AviSynth and not the plus version?

    Would it not be better to specify the frame rate in the srestore function like this:

    mpeg2source("C:\VTS_01_03.d2v")
    yadif(mode=1,order=1)
    Srestore(frate=23.976)

    What's the difference between doing that and using the AssumeFPS function?
    If you force 23.976 SRestore actually drops unique frames to honor the setting.
    Leaving it at default then slowing down to 23.97 is far superior. You can even handle the audio in the same script,
    if that's a concern
    Quote Quote  
  12. Oh okay I understand, thanks for all the assistance it's all good now!
    Last edited by johnny27depp; 15th May 2019 at 15:57.
    Quote Quote  
  13. Hey how would you do the audio? I tried saving the video assuming a lower frame rate and it crashed, it displayed some division by zero error. I have a feeling that it's not processing the audio or something. Thanks!
    Quote Quote  
  14. Although it can be done in the script, I prefer to handle the audio separately as I work on it anyway.

    BeSweet, among others (eac3to, for example) has a preset to change from 25fps to 23.976fps. Also, any audio editor (such as the freeware Audacity) can slow the audio by a percentage.

    If you're doing it within the script, you'd best show the complete script that crashed.
    Quote Quote  
  15. I think I'll handle the audio separately yes, thanks for that.

    Also why do you choose to not use the plus version of AviSynth? Is there something intrinsically different?

    Thanks
    Quote Quote  
  16. If you include the audio in AviSynth all you have to do is add "true" to parameters:

    Code:
    AssumeFPS(24000, 1001, true)
    or

    Code:
    AssumeFPS(24000, 1001, sync_audio = true)
    I usually leave the video at 25 fps and keep the original AC3 audio.
    Quote Quote  
  17. Originally Posted by johnny27depp View Post
    Also why do you choose to not use the plus version of AviSynth?
    Sheer laziness. What I have works and I don't want to mess that up.
    Quote Quote  
  18. Originally Posted by manono View Post
    Originally Posted by johnny27depp View Post
    Also why do you choose to not use the plus version of AviSynth?
    Sheer laziness. What I have works and I don't want to mess that up.
    I kept my old 32 bit AviSynth (MT) installation intact, then installed only the 64 bit version of AviSynth+. That way I have access to both on the same computer. Eventually I found 64 bit versions of most of the filters I use so now I use 64 bit AviSynth+ most of the time.
    Quote Quote  
  19. Okay thank you so much. I think it's time for me to migrate to AviSynth+ 64
    Quote Quote  
  20. Originally Posted by johnny27depp View Post
    Okay thank you so much. I think it's time for me to migrate to AviSynth+ 64
    or Vapoursynth 64bit , using audio separately with current Avisynth or eac3to and also using QTGMC
    but of course new things to learn but just saying , its out there ...
    Quote Quote  
  21. Originally Posted by _Al_ View Post
    or Vapoursynth 64bit , using audio separately with current Avisynth or eac3to and also using QTGMC
    but of course new things to learn but just saying , its out there ...
    I don't mind the learning curve. I learn something from each little project

    What is the most efficient way to load an image sequence into AviSynth and specifying the frame rate accurately i.e. 24000/1001?

    Might be a dumb question: Is it possible to load one image sequence at a certain frame rate and then a second one at a different frame rate into the same video? Let's say you wanted to fast forward or slow down certain sections without using motion interpolation?

    Thanks
    Quote Quote  
  22. To append a series of images with names in the form parta00000.ph, parta00001.png, parta00002.png... and partb00000.png, partb00001.png, partb00002.png...

    Code:
    parta = ImageSource("parta%05d.png").AssumeFPS(24000, 1001)
    partb = ImageSource("partb%05d.png").AssmeFPS(48000,1001).ChangeFPS(24000,1001)
    
    parta+partb
    parta is loaded and its frame rate set to 23.976 fps. partb is loaded and it's frame rate set to 47.952 fps. partb is then slowed to 23.976 fps by duplicating each of its frames. Finally the two clips are joined together into a single clip at 23.976 fps. The frame rates must match for them to be joined into a single clip.

    http://avisynth.nl/index.php/ImageSource
    http://avisynth.nl/index.php/FPS
    Quote Quote  
  23. Woah that is cool, so will AviSynth always parse the last line of code as the output? Like you don't have to specify? eg. if i wrote:

    a = parta
    b = partb
    c = parta+partb

    That's kinda just a declaration of variables, would there be any output ?
    Quote Quote  
  24. Most filters in AviSynth take an input and an output. When you don't specify them by name the name "last" is used. At the end of the script last is returned. In my script:

    Code:
    parta+partb
    is equivalent to:

    Code:
    last = parta+partb
    return(last)
    Your script would fail because there is no "last" to return. You would have to add return(c).
    Quote Quote  
  25. Okay that makes sense, thank you I understand!
    Quote Quote  



Similar Threads

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