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)



























