What you need
- K-Lite Mega Codec Pack
- ffdshow tryouts
- Avisynth 2.5.8 (Latest as of 27/01/2010)
- Multithreaded plugin for AVISynth
- Framedoubling Plugin MVTools (at the very bottom)
- Install the K-Lite codec pack you just downloaded. There's no need to change anything, as the defaults should all be fine. Install AVISynth as well.
- unchecked while all AVISynth options are checked during install.
- K-Lite includes an application called Media Player Classic which we'll be using to playback our videos. Open it, and go to View > Options. Click "Internal Filters" and uncheck everything. Next, you'll want to navigate to "Output" which is nested under the "Playback" section. Change the direct show video renderer to Haali.
Save your settings, restart Media Player Classic, and test a video file of your choice. If a number of icons, including ffdshow, appear in your system tray, then you've set everything up correctly.
If you're on a 64-bit system, place avisynth.dll in your "...Windows\SysWOW64" directory, and the contents of the plugins folder you extracted in "...Prorgam Files (x86)\Avisynth 2.5\plugins". Overwrite any existing files. avisynth.dll in your "..Windows\system32" directory, and the contents of the plugins folder you extracted in "...Program Files\Avisynth 2.5\plugins". Overwrite any existing files.
- Finally, extract the framedoubling plugin MVTools download, and place the mvtools2.dll in Avisynth's plugins folder – the same directory as in the last step.
- Video Decoder Configuration and check the AVISynth box on the left. Next, uncheck "Add ffdshow video source". Beside "Input colorspaces," the only value that should be checked is "YV12". Buffer back values should be set to 0/10, though other values (10/10, 0/24) may prove more successful if you experience stuttering.
- Finally, AVISynth relies on a script to carry out frame interpolation on your content. Copy and paste the following into the script box:
SetMTMode(5,4) on the second line of the script to SetMTMode(5,8) to take advantage of the extra threads. Also, on the third last line, changing mode=0 to mode=2 can improve the smoothing process, but may introduce graphical artifacts on lower-end systems.
super=MSuper(pel=1, hpad=0, vpad=0)
backward_1=MAnalyse(super, chroma=false, isb=true, blksize=16, blksizev=16, searchparam=3, plevel=0, search=3, badrange=(-24))
forward_1=MAnalyse(super, chroma=false, isb=false, blksize=16, blksizev=16, searchparam=3, plevel=0, search=3, badrange=(-24))
backward_2 = MRecalculate(super, chroma=false, backward_1, blksize=8, blksizev=8, searchparam=0, search=3)
forward_2 = MRecalculate(super, chroma=false, forward_1, blksize=8, blksizev=8, searchparam=0, search=3)
MBlockFps(super, backward_2, forward_2, num=FramerateNumerator(last)*2, den=FramerateDenominator(last)*1, mode=0)
GetMTMode(false) > 0 ? distributor() : last
It's a longer process than simply playing your file in VLC, but if you're a fan of motion smoothing and frame interpolation, it just might be worth it. Give it a try, and let us know what you think!
Special thanks to nzweers and widezu69 from Guru3D, upon which these steps have been adapted from.