VideoHelp Forum
+ Reply to Thread
Page 1 of 2
1 2 LastLast
Results 1 to 30 of 35
Thread

Threaded View

  1. Member goodiesguy's Avatar
    Join Date: Sep 2011
    Location: New Zealand
    Search Comp PM
    I've looked everywhere but with no luck.

    I have Power DVD 10, and using it's Motion Interpolation (Truetheater Motion), I am able to make old shows that only exist on 16mm look like they are on video ("the video look").

    The problem is, i want to be able to not just watch it, but to be able to apply The motion interpolation to, say an Mpeg-2 file and then render/ save it, so i can put it on a dvd and watch the Motion interpolated footage on my tv.

    I basically want something that will let me apply motion interpolation to a normal clip (not Slow Motion, standard speed) and then render it, so i can put it to a dvd.

    I'm basically wanting to do what the BBC do with the Doctor Who restorations. I know this can be done, as i have seen "home made" examples.

    I've also noticed that VirtualDub has an Interpolation filter, but i have had no luck with it. A VirtualDub Plugin would be the best for me, but i'm willing to accept anything.

    I tried some software called "motion perfect" but that failed, and would not render any of my files.

    Please help
    Quote Quote  
  2. Since DVD is very restrictive in the allowed framerates (25fps for your PAL DVDs), I'm not quite sure how you figure to make a DVD out of something for which you've multiplied the framerate. Sure, for other formats it's possible, just not for DVD.

    AviSynth's MVTools can usually do a pretty decent job with this sort of thing:

    http://avisynth.org/mediawiki/MVTools
    Quote Quote  
  3. Member goodiesguy's Avatar
    Join Date: Sep 2011
    Location: New Zealand
    Search Comp PM
    I want to save the motion interpolated video as an interlaced mpeg2. the problem is finding something that will save a motion interpolated video. I can only watch motion interpolation in real time (powerdvd) at the moment.
    PC: AMD Athlon 64 3400+ | Gigabyte Motherboard | GeForce 6600 | 1.5GB DDR RAM | Windows 7 Ultimate 32 Bit
    Quote Quote  
  4. OK, you want to (for example) motion interpret the framerate to 50p and then reinterlace it to 25i? Also easy enough using AviSynth.

    Me, I think it's a waste of time, but since you didn't ask if anyone thought it was a good idea...
    Quote Quote  
  5. Member goodiesguy's Avatar
    Join Date: Sep 2011
    Location: New Zealand
    Search Comp PM
    Originally Posted by manono View Post
    OK, you want to (for example) motion interpret the framerate to 50p and then reinterlace it to 25i? Also easy enough using AviSynth.
    That's exactly what i want to do.

    Is there any tutorial on how to do it with AviSynth? I tried avisynth once before and found it mind boggling (and im usually good at this kinda stuff)
    PC: AMD Athlon 64 3400+ | Gigabyte Motherboard | GeForce 6600 | 1.5GB DDR RAM | Windows 7 Ultimate 32 Bit
    Quote Quote  
  6. The reinterlacing is easy:

    SeparateFields()
    SelectEvery(4,0,3)
    Weave()

    As for the motion interpolation, wait until poisondeathray or jagabo or someone that's done it before comes around. I've never used MVTools myself in a script I didn't copy from somewhere else and am far from an expert on it.
    Quote Quote  
  7. Something like this:

    Code:
    function DoubleFPS(clip source)
    {
    super = MSuper(source, pel=2, hpad=0, vpad=0, rfilter=4)
    backward_1 = MAnalyse(super, chroma=false, isb=true, blksize=16, searchparam=3, plevel=0, search=3, badrange=(-24))
    forward_1 = MAnalyse(super, chroma=false, isb=false, blksize=16, searchparam=3, plevel=0, search=3, badrange=(-24))
    backward_2 = MRecalculate(super, chroma=false, backward_1, blksize=8, searchparam=1, search=3)
    forward_2 = MRecalculate(super, chroma=false, forward_1, blksize=8, searchparam=1, search=3)
    backward_3 = MRecalculate(super, chroma=false, backward_2, blksize=4, searchparam=0, search=3)
    forward_3 = MRecalculate(super, chroma=false, forward_2, blksize=4, searchparam=0, search=3)
    MBlockFps(source, super, backward_3, forward_3, num=2*FramerateNumerator(source), den=FramerateDenominator(source), mode=0)
    }
    
    WhateverSource("25p.ext") 
    DoubleFPS()
    SeparateFields()
    SelectEvery(4,0,3)
    Weave()
    That works well on panning shots but can screw up with complex motions. Here's an example where it screws up. Three consecutive frames, the two original frames with the motion interpolated frame in the middle:

    Name:  p1.jpg
Views: 362
Size:  28.3 KB

    Name:  p2.jpg
Views: 355
Size:  27.5 KB

    Name:  p3.jpg
Views: 354
Size:  28.2 KB
    Last edited by jagabo; 11th Apr 2012 at 07:25.
    Quote Quote  
  8. About all I see wrong is the umbrella bar thing. If that's all, in full motion while watching the video I don't know how noticeable that would be, and I think it looks pretty good. If you had a whole sequence where every other frame was slightly messed up like that, of course that would be more noticeable. One wonders if the motion interpolation of the TV sets or the PowerDVD goodiesguy mentioned earlier can do a better job.
    Quote Quote  
  9. Originally Posted by manono View Post
    If you had a whole sequence where every other frame was slightly messed up like that, of course that would be more noticeable.
    That often happens.

    Originally Posted by manono View Post
    One wonders if the motion interpolation of the TV sets or the PowerDVD goodiesguy mentioned earlier can do a better job.
    Not from what I've seen. Though I haven't really looked in the last few years.

    A bad case example (from Tron) is attached. It's usually subtler than this. Usually you just notice that's something's not quite right with the video.
    Attached Files
    Last edited by jagabo; 17th Sep 2011 at 17:17.
    Quote Quote  
  10. Member goodiesguy's Avatar
    Join Date: Sep 2011
    Location: New Zealand
    Search Comp PM
    So how do i actually use AviSynth?
    PC: AMD Athlon 64 3400+ | Gigabyte Motherboard | GeForce 6600 | 1.5GB DDR RAM | Windows 7 Ultimate 32 Bit
    Quote Quote  
  11. 1) Install avisynth.
    2) Install the third party MvTools filter. http://avisynth.org.ru/mvtools/mvtools.html
    3) Create a text file with the indicated script* with notepad, use .AVS as the extension, not .TXT.
    4) Open the AVS script as if it was a video file in and editor that supports AviSynth. VirtualDub for example.

    http://avisynth.org/mediawiki/Getting_started

    * change WhateverSource() to the appropriate command for the type of source file you have. AviSource("filename.avi") for example.
    Quote Quote  
  12. Member goodiesguy's Avatar
    Join Date: Sep 2011
    Location: New Zealand
    Search Comp PM
    Sweet, i understand now.

    Do you know a good codec that will encode interlaced mpeg2? as at the moment i've got no idea what codec to use.
    PC: AMD Athlon 64 3400+ | Gigabyte Motherboard | GeForce 6600 | 1.5GB DDR RAM | Windows 7 Ultimate 32 Bit
    Quote Quote  
  13. Originally Posted by goodiesguy View Post
    Do you know a good codec that will encode interlaced mpeg2?
    I use HcEnc via HcGUI. It accepts AVS scripts -- requires them, in fact.
    Quote Quote  
  14. Member goodiesguy's Avatar
    Join Date: Sep 2011
    Location: New Zealand
    Search Comp PM
    Well nothing worked, the avs file woulnt even open in virtualdub (error line 1, colum 22).
    PC: AMD Athlon 64 3400+ | Gigabyte Motherboard | GeForce 6600 | 1.5GB DDR RAM | Windows 7 Ultimate 32 Bit
    Quote Quote  
  15. Post the full script (copy and paste).
    Quote Quote  
  16. Member goodiesguy's Avatar
    Join Date: Sep 2011
    Location: New Zealand
    Search Comp PM
    how do i install mvtools?

    and when trying to open the script in vdub, it still gives me errors and wont open.

    Is there anyway i can just use Vdubs built in Interpolate plugin to do the same thing?
    PC: AMD Athlon 64 3400+ | Gigabyte Motherboard | GeForce 6600 | 1.5GB DDR RAM | Windows 7 Ultimate 32 Bit
    Quote Quote  
  17. Originally Posted by goodiesguy View Post
    how do i install mvtools?
    Extract the dll file into AviSynth's plugins folder.

    Originally Posted by goodiesguy View Post
    and when trying to open the script in vdub, it still gives me errors and wont open.
    You should say what the error is. Be sure you open the script using File -> Open Video File. Not, File -> Run Script. The latter is for VirtualDub scripts, not AviSynth scripts.

    Originally Posted by goodiesguy View Post
    Is there anyway i can just use Vdubs built in Interpolate plugin to do the same thing?
    I'm not aware of any such filter for VirtualDub.
    Quote Quote  
  18. You didn't post your script as requested. Nor have you told us what the error messages are. You don't install MVTools, you just stick the DLL in the AviSynth Plugins folder.
    Quote Quote  
  19. Member goodiesguy's Avatar
    Join Date: Sep 2011
    Location: New Zealand
    Search Comp PM
    won't it just be easier to find a plugin for Vdub or something? as this avisynth stuff is a pain in the arse.
    PC: AMD Athlon 64 3400+ | Gigabyte Motherboard | GeForce 6600 | 1.5GB DDR RAM | Windows 7 Ultimate 32 Bit
    Quote Quote  
  20. Member goodiesguy's Avatar
    Join Date: Sep 2011
    Location: New Zealand
    Search Comp PM
    I was never asked to post any sort of script?
    PC: AMD Athlon 64 3400+ | Gigabyte Motherboard | GeForce 6600 | 1.5GB DDR RAM | Windows 7 Ultimate 32 Bit
    Quote Quote  
  21. Originally Posted by goodiesguy View Post
    I was never asked to post any sort of script?
    Originally Posted by jagabo View Post
    Post the full script (copy and paste).
    Originally Posted by goodiesguy View Post
    won't it just be easier to find a plugin for Vdub or something?
    No.
    Quote Quote  
  22. Member
    Join Date: Mar 2008
    Location: United States
    Search Comp PM
    See post #15. If you post the full script, someone here could probably spot the problem.
    Quote Quote  
  23. Member goodiesguy's Avatar
    Join Date: Sep 2011
    Location: New Zealand
    Search Comp PM
    function DoubleFPS("C:\Users\Nathan\Desktop\Hullabaloo_Dec 6, 1965.avi")
    {
    super = MSuper(source, pel=2, hpad=0, vpad=0, rfilter=4)
    backward_1 = MAnalyse(super, chroma=false, isb=true, blksize=16, searchparam=3, plevel=0, search=3, badrange=(-24))
    forward_1 = MAnalyse(super, chroma=false, isb=false, blksize=16, searchparam=3, plevel=0, search=3, badrange=(-24))
    backward_2 = MRecalculate(super, chroma=false, backward_1, blksize=8, searchparam=1, search=3)
    forward_2 = MRecalculate(super, chroma=false, forward_1, blksize=8, searchparam=1, search=3)
    backward_3 = MRecalculate(super, chroma=false, backward_2, blksize=4, searchparam=0, search=3)
    forward_3 = MRecalculate(super, chroma=false, forward_2, blksize=4, searchparam=0, search=3)
    MBlockFps(source, super, backward_3, forward_3, num=2*FramerateNumerator(source), den=FramerateDenominator(source),

    mode=0)
    }

    DirectShowSource("C:\Users\Nathan\Desktop\Hullabal oo_Dec 6, 1965.avi")
    DoubleFPS(60)
    SeparateFields(2)
    SelectEvery(0,3)
    Weave()
    This is it here. I get all sorts of errors
    PC: AMD Athlon 64 3400+ | Gigabyte Motherboard | GeForce 6600 | 1.5GB DDR RAM | Windows 7 Ultimate 32 Bit
    Quote Quote  
  24. Member
    Join Date: Jul 2009
    Location: Spain
    Search Comp PM
    Originally Posted by goodiesguy View Post
    I get all sorts of errors
    It would be more helpful if you told us the actual error message.
    Strange you are saying errors, since Avisynth stops on the first error and won't report more than one.

    Regarding your script, the lines
    SeparateFields(2)
    SelectEvery(0,3)
    should be:
    SeparateFields()
    SelectEvery(4,0,3)

    The SelectEvery line was wrong in jagabo's original post (typo).
    Quote Quote  
  25. Originally Posted by Gavino View Post
    The SelectEvery line was wrong in jagabo's original post (typo).
    You're right. I'll fix it.
    Quote Quote  
  26. Member
    Join Date: Jul 2009
    Location: Spain
    Search Comp PM
    Originally Posted by poisondeathray View Post
    Beware this message board inserts bizarre spaces, so be careful if you're copying & pasting scripts
    For example, go look at your post #22 , there is a huge gap where there shouldn't be on line 14. Make sure your actual script doesn't have that space. Another example, "Hullabal oo" has a space inserted
    That's only on the display - the underlying text is actually OK.

    Originally Posted by goodiesguy View Post
    Script Error: Invalid arguments to Function "DoubleFPS".
    That's because you have wrongly added a '60' to jagabo's original script.
    Originally Posted by goodiesguy View Post
    DoubleFPS(60)
    The last part of the script should be
    Code:
    DirectShowSource("C:\Users\Nathan\Desktop\Hullabaloo_Dec 6, 1965.avi") 
    DoubleFPS()
    SeparateFields()
    SelectEvery(4,0,3)
    Weave()
    Actually, it would be better to use AviSource than DirectShowSource, which is not always frame-accurate.
    Quote Quote  
  27. Member goodiesguy's Avatar
    Join Date: Sep 2011
    Location: New Zealand
    Search Comp PM
    error, line 3, line 13. "I dont know what source is"
    PC: AMD Athlon 64 3400+ | Gigabyte Motherboard | GeForce 6600 | 1.5GB DDR RAM | Windows 7 Ultimate 32 Bit
    Quote Quote  
  28. The first line of your script should read:

    Code:
     function DoubleFPS(clip source)
    Quote Quote  
  29. Member Cornucopia's Avatar
    Join Date: Oct 2001
    Location: Deep in the Heart of Texas
    Search Comp PM
    Also, IIRC, isn't "Hullabaloo" from the UK? That means it ought to be PAL (25/50 fps) source, so you'd also have to deal with correct PAL->NTSC conversion first/instead.

    Scott
    "When will the rhetorical questions end?!" - George Carlin
    Quote Quote  



Similar Threads