File: Readme_FrameDbl.txt // FrameDbl - Motion compensated frame rate doubler for Avisynth 2.5 // Copyright (C) 2003 Tom Barry - trbarry@trbarry.com // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. Also, this program is "Philanthropy-Ware". That is, if you like it and feel the need to reward or inspire the author then please feel free (but not obligated) to consider joining or donating to the Electronic Frontier Foundation. This will help keep cyber space free of barbed wire and bullsh*t. See their web page at www.eff.org *************** Okay, on to business. ***************** EXPERIMENTAL *********************** WARNING - This version only runs on the Avisynth 2.5+ release. FrameDbl will generate extra frames to double the frame rate of movies from 24 to 48 FPS to give smoother motion. It does this using a motion compensated approach to interpolating between frames. USAGE - To use it just: 1) Place the FrameDbl.dll in a directory somewhere. If that is the C:\Program Files\AviSynth 2.5\plugins folder folder (recommended) then you can omit the LoadPlugin command in your script. You can get FrameDbl from: www.trbarry.com 2) In your Avisynth file use commands similar to LoadPlugin("F:\FrameDbl\FrameDbl.dll") Avisource("D:\wherever\myfile.avi") FrameDbl(255,3) Of course replace the file and directory names with your own. PARAMETERS (note now TWO parameters needed) FrameDbl(motion threshhold, search effort) where: motion threshold = the maximum amount a pixel may change before FrameDbl stops blending and uses the current value. (0 - 255) search effort = how many possible adjacent locations to search for best possible interpolation. valid values are 1,3, or 9; 1 = no motion search except current location, fastest but least smooth motion 3 = search 1 pixel motion, left & right <= RECOMMENDED 9 = search a 3x3 square. This is slower but maybe smoother. It also may have more single pixel artifacts. I've been been just leaving motion threshold at 255 (the max) so far but more testing is needed. A value of 128 also works well. I currently recommend the value 3 for search effort. A value 9 doesn't help noticably, costs more to run and causes a few stray 1 pixel artifacts. If you look at the individual frames generated they look as awful as blended frames often do when taken singly. But when viewed at 48 FPS on an even fast display refresh rate it looks MUCH better. So be sure to test both. Note that since every other output frame is unblended it is possible later to reclaim an unblended file, simply by decimating. KNOWN ISSUES AND LIMITATIONS 1) Requires Avisynth 2.5 and YV12 input. 2) THIS VERSION VERY NEW, EXPERIMENTAL, AND SUBJECT TO CHANGE. FILE LOCATIONS For now, both source, this readme, and DLL should be at: www.trbarry.com *************** Change Log: 2003/06/21 V 0.0.9.1 Add Search Effort parm to save wasted CPU 2003/06/18 V 0.0.9.0 Initial test release for Avisynth 2.5 only