VideoHelp Forum




+ Reply to Thread
Page 2 of 2
FirstFirst 1 2
Results 31 to 52 of 52
  1. Member
    Join Date
    Apr 2005
    Location
    Dover NH
    Search Comp PM
    Originally Posted by jagabo View Post
    Originally Posted by bvdd View Post
    I'm close now, just need to solve the 'slow and jerky' result.
    QTGCM() and SRestore() are very slow filters. Your computer just isn't fast enough to run them in realtime. Encode the video and check the resulting file.

    The resulting file is exactly the same .. very slow and jerky. I think something else is going on.
    Quote Quote  
  2. Member
    Join Date
    Apr 2005
    Location
    Dover NH
    Search Comp PM
    I tried removing the 'QTGMC' line in the script and it's responding normally again. By 'normally' I mean the speed appears to
    be whatever I set the 'AssumeFPS' setting to be.

    If I'm understanding all this so far, the only issue now is duplicate frames which is why it's still looks jerky.

    So maybe the 'QTGMC' line is not right - although it worked fine for manono.
    Quote Quote  
  3. Member
    Join Date
    Apr 2005
    Location
    Dover NH
    Search Comp PM
    Or maybe the 'ConvertToYV12(interlaced=true)' line is the culprit?


    Thanks again guys for your patience.
    Quote Quote  
  4. Can you post mediainfo report what your clip exactly is? Or better, rather than that info, can you post a couple of second sample of your avi video , you can cut it off in VirtualDub, without re compression. I think time has come to it. It usually helps a lot.
    Quote Quote  
  5. Member
    Join Date
    Aug 2013
    Location
    Central Germany
    Search PM
    QTGMC v3.33 got a few changes after v3.32 to support YUY2 video; but there are many more or less "current" sources reported in different locations (e.g. doom9 forum, AviSynth Wiki, ...); converting to YV12 as mentioned above may be more reliable.
    Quote Quote  
  6. Upload your encoded video. Or at least check it with MediaInfo.

    As a quick test, try replacing QTGMC() with Bob().

    And <20 fps video is inherently jerky. It looks to me like the correct frame rate is around 12 fps.
    Last edited by jagabo; 19th Nov 2015 at 06:41.
    Quote Quote  
  7. Member
    Join Date
    Apr 2005
    Location
    Dover NH
    Search Comp PM
    Here is the link to my first post which started this whole thing. Not quite halfway down the page you find the original clip I posted, and
    right below that a reply from manono who made it look great by using his script. I'm really just trying to recreate what he did, on my PC.

    Below the link is manono's script.

    https://forum.videohelp.com/threads/375313-Lowering-AVI-frame-rate-causes-jerky-movement

    AVISource("SHORT TEST.avi")
    QTGMC(Preset="faster")
    Srestore(Frate=19.98)
    AssumeFPS(17.982)
    Crop(8,0,-8,0)
    LanczosResize(640,480)
    Quote Quote  
  8. Member
    Join Date
    Apr 2005
    Location
    Dover NH
    Search Comp PM
    I'll have to wait 'til I get home from work to post my 'very slow and jerky' clip.
    Quote Quote  
  9. Member
    Join Date
    Apr 2005
    Location
    Dover NH
    Search Comp PM
    It's not letting me upload anything - it's stuck on "Sending request to forum.videohelp.com.

    I'll keep trying.
    Quote Quote  
  10. Member
    Join Date
    Apr 2005
    Location
    Dover NH
    Search Comp PM
    Ok, I think I got it.

    Here's a shorter clip followed by the same clip processed.

    And here's the script:

    Import("C:\Program Files\Avisynth\plugins\sRestore.avs")
    AVISource("SHORT TEST2.avi")
    ConvertToYV12(interlaced=true)
    QTGMC(Preset="faster")
    AssumeFPS(17.982)
    Crop(8,0,-8,0)
    LanczosResize(640,480)
    Image Attached Files
    Quote Quote  
  11. You left out SRestore(frate=19.98).
    Quote Quote  
  12. Member
    Join Date
    Apr 2005
    Location
    Dover NH
    Search Comp PM
    Ok, I put it back in but had to try it in different lines.

    This script seemed to work the best speed wise, but it's still jerky and I think it's duplicate frames.

    Import("C:\Program Files\Avisynth\plugins\sRestore.avs")
    AVISource("SHORT TEST2.avi")
    ConvertToYV12(interlaced=true)
    Srestore(Frate=19.98)
    QTGMC(Preset="faster")
    AssumeFPS(17.982)
    Crop(8,0,-8,0)
    LanczosResize(640,480)
    Quote Quote  
  13. QTGMC has to come before SRestore() . It's mandatory.

    QTGMC bob deinterlaces your video to 59.94p. Srestore selectively throws out the duplicates using detection and logic
    Quote Quote  
  14. QTGMC converts each field of the interlaced source (30i) video into a progressive frame (60p). SRestore then removes blended and duplicate frames. When it's done you should have all unique frames with no missing frames and 19.98 fps. As with most such complex operations it's not always perfect but it works pretty well with your source. AssumeFPS() then sets the frame rate for the remaining frames to 17.982 (I think it should be about 12) instead of 19.98. No frames are added or removed, just the rate at which they are to be displayed (the run time increases proportionally). Cropping removes the 8 extra columns at the left and right edges of the rec.601 DV cap. And the resize converts to square pixel 4:3 display aspect ratio.
    Quote Quote  
  15. Member
    Join Date
    Apr 2005
    Location
    Dover NH
    Search Comp PM
    Originally Posted by poisondeathray View Post
    QTGMC has to come before SRestore() . It's mandatory.

    QTGMC bob deinterlaces your video to 59.94p. Srestore selectively throws out the duplicates using detection and logic

    Thanks!
    Quote Quote  
  16. Member
    Join Date
    Apr 2005
    Location
    Dover NH
    Search Comp PM
    Originally Posted by jagabo View Post
    QTGMC converts each field of the interlaced source (30i) video into a progressive frame (60p). SRestore then removes blended and duplicate frames. When it's done you should have all unique frames with no missing frames and 19.98 fps. As with most such complex operations it's not always perfect but it works pretty well with your source. AssumeFPS() then sets the frame rate for the remaining frames to 17.982 (I think it should be about 12) instead of 19.98. No frames are added or removed, just the rate at which they are to be displayed (the run time increases proportionally). Cropping removes the 8 extra columns at the left and right edges of the rec.601 DV cap. And the resize converts to square pixel 4:3 display aspect ratio.

    Excellent explanation, that's just what I need.

    Now I'm going to try again ... fingers crossed.
    Quote Quote  
  17. Member
    Join Date
    Apr 2005
    Location
    Dover NH
    Search Comp PM
    Ok, here it is with FPS set to 12. The speed seems right but it's still a little jerky.

    Import("C:\Program Files\Avisynth\plugins\sRestore.avs")
    AVISource("SHORT TEST2.avi")
    ConvertToYV12(interlaced=true)
    QTGMC(Preset="faster")
    Srestore(Frate=19.98)
    AssumeFPS(12)
    Crop(8,0,-8,0)
    LanczosResize(640,480)
    Image Attached Files
    Quote Quote  
  18. I saw one duplicate frame at frame #70. And didn't notice any missing frames. Of course, 12 fps is jerky to start with and the camerawork is jerky too.
    Quote Quote  
  19. Member
    Join Date
    Apr 2005
    Location
    Dover NH
    Search Comp PM
    Yeah, the camerawork is jerky for sure.

    How do you find individual duplicate frames - or maybe you just have really sharp eyes?

    Is there a way to tell sRestore to find it, or is it set & forget and whatever it finds you settle for?
    Last edited by bvdd; 20th Nov 2015 at 05:54.
    Quote Quote  
  20. Member
    Join Date
    May 2014
    Location
    Memphis TN, US
    Search PM
    Originally Posted by bvdd View Post
    How do you find individual duplicate frames - or maybe you just have really sharp eyes?
    With some media players you can move frame by frame, but it's clumsy and a hassle to move back and forth. Open a video in Virtualdub. Then click the >> or << navigation arrows at the bottom of the window to move frame by frame.

    Tip: An Avisynth script executes coded lines in the order in which they're listed. Avisynth executes the first line, then the next, then the next after that, and so on.
    Last edited by LMotlow; 20th Nov 2015 at 06:41.
    - My sister Ann's brother
    Quote Quote  
  21. Originally Posted by bvdd View Post
    How do you find individual duplicate frames - or maybe you just have really sharp eyes?
    I first noticed it during realitme playback. Then I opened the video in VirtualDub and stepped through, frame by frame (right arrow key) to verify it and get the frame number.

    Originally Posted by bvdd View Post
    Is there a way to tell sRestore to find it, or is it set & forget and whatever it finds you settle for?
    The duplicate frame may mean that the projector was actually running a bit slower than 19.98 fps. Or the clip may be too short for SRestore to completely sync at 19.98 fps. In the former case you should specify a lower frame rate in SRestore. The latter may clear up simply by using a longer clip or starting at a different position.
    Quote Quote  
  22. Member
    Join Date
    Apr 2005
    Location
    Dover NH
    Search Comp PM
    I've learned so much in a week and I can't thank you all enough for your help and patience.
    Quote Quote  



Similar Threads

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