File: Readme_UnFilter.txt // UnFilter Soften/Sharpen filter for Avisynth // Copyright (C) 2002 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. UnFilter is a simple and reasonably fast Avisynth Soften/Sharpen filter. It implements 5-tap user adjustable horizontal and vertical filters designed to (slightly) reverse previous efforts at softening or edge enhancment that are common (but ugly) in DVD mastering. Since DVD's were intended originally for interlaced displays this has caused content providers to vertically filter them even a bit more to hide interlacing artifacts. I don't know why they sometimes over do the edge enhancement. When softening it will attempt to approximate the inverse of a simple 3-tap edge enhancement filter. When sharpening it will attempt to approximate the inverse of a simple 3-tap softening filter. For the math and logic involved see the comments in the UnFilterALL.inc member included in zip file. The effects are fairly mild but be aware that excessive sharpening makes things harder to compress and may bring about the dreaded "edge enhancement artifacts" the people complain about in DVD's from some studios. And while excessive softness may hide noise it loses detail and generally just looks ugly. So it is probably best to just try to reverse whatever has already been done to your source. WARNING - USE THE (EXPERIMENTAL) YV12 SUPPORT VERSION ONLY WITH THE AVISYNTH 2.5 ALPHA. Otherwise use the old one. To use it just: 1) Place the UnFilter.dll in a directory somewhere. You can get it from www.trbarry.com/UnFilter.zip 2) In your Avisynth file use commands similar to LoadPlugin("F:\UnFilter\UnFilter.dll") Avisource("D:\wherever\myfile.avi") UnFilter(HSharp, VSharp) Of course replace the file and directory names with your own and supply the integer values for the amount of horizontal and vertical sharpness. Valid values for each are from -100 (max softness) through zero (neutral) through +100 (max sharpness). UnFilter should run on all MMX machines or higher. It has also has some added code for 3DNOW instructions for when it is running on a K6-II or higher and some SSEMMX for P3 & Athlon. Known issues and limitation: 1) Assumes YUV (YUY2) or YV12 Frame Based input. Use an AVIsynth function to convert first if needed. 2) Currenty still requires the pixel width to be a multiple of 2. 3) YV12 support for Avisynth 2.5 alpha release only. Temporary file locations: For now, both source, this readme, and DLL should be at: www.trbarry.com/UnFilter.zip A copy of this Readme_UnFilter.txt file should be at: www.trbarry.com/Readme_UnFilter.txt *************** Change Log: 2003/01/18 V 0.0.1.5 Use AvisynthPluginInit2 2002/11/25 V 0.0.1.4 YV12 support - Don't mess with chroma 2002/11/13 V 0.0.1.3 YV12 support 2002/06/29 V 0.0.1.2 Fix more brain dead mistakes relating to low parm vals 2002/06/29 V 0.0.1.1 Added version info Fixed bug on UnFilter(30,30) Fixed bug that might crash MMX machines 2002/06/28 V 0.0.1.0 Initial test release V 0.1 (had no version info)