By Rainer Wittmann gorw@gmx.de
Binary and source are subject to the GNU General Public License. Last change August 27, 2005.
AvsRecursion.dll is an ordinary dynamic link library, which is used by new versions of the AvsTimer, RemoveGrain, ReduceFlicker, RemoveDirt plugins to support recursion within scripts. It is not an Avisynth plugin. Thus it should not be installed in the Avisynth plugin directory. It also cannot be loaded with the LoadPlugin command. Rather it should be put somewhere, where the system can find it. We recommend to put AvsRecursion.dll in the same directory as Avisynth.dll. Usually this is C:\Windows\System32. Please install AvsRecursion.dll only once. AvsRecursion.dll is dynamically linked. Thus you also need to install msvcr71.dll, preferably also in C:\Windows\System32. Because AvsRecursion.dll is dynamically linked, it no more makes sense to provide statically linked versions of plugins, which require AvsRecursion.dll.
For the basic concept of recursion within Avisynth scripts we refer to section The Delay Filter and AssignRecursionClip of the AvsTimer documentation. Programmers who want to add recursion to their filters should look at the source code of the filter Delay (contained in the AvsTimer plugin), of the filter Clense (contained in the RemoveGrain plugin) or of the ReduceFluctuations (contained in the ReduceFlicker plugin). Recursive filters must be linked with the import library AvsRecursion.lib (contained in the source code archive) and AvsRecursion.h has to be included into the source of the filter. It doesn't make sense to recompile AvsRecursion.cpp and link it statically with a filter.
All questions, comments should be posted to the support forum (registration is appreciated but not required).