History of AviSynth
In order to understand what AviSynth is and what it does, it's necessary to first understand one of the most archaic video containers still in use - AVI. AVI, or Audio Video Interleave, is a rudimentary container designed to work as part of the Microsoft Video for Windows (VfW) framework. VfW was first introduced a decade and a half ago in order to add video playback capabilities to Windows 3.1. Although it's long since been deprecated in favor of the much more useful DirectShow (DirectX) framework, the abillity of video enthusiasts to use it as the basis for early MPEG-4 encoding has prolonged its life far beyond what many people would have thought possible. While the merits of this are debatable, what's clear is that VfW, and by extension AVI, haven't gone anywhere yet, and for the near future aren't expected to.
Fake AVI Files
The basic purpose of AviSynth is to frameserve video to VfW aware applications. What this means in layman's terms is that AviSynth tricks software like video encoders or media players into believing they're reading normal AVI files. Although AviSynth scripts are only text files, they're delivered by a process that ensures Windows can't tell the difference between an actual AVI file and an AviSynth script. Generally neither can programs that open the scripts. In general, if a program can read AVI files you should be able to use the actual video files and AVS (AviSynth Script) files interchangeably.Since some software vendors use their own routines to open AVI files, instead of Windows built in code, using AviSynth with certain software will require an additional step of creating another file to open in place of the script. This is covered in more detail in the next section on installation.
AviSynth Versions
The original version of AviSynth, 1.0b, was developed by Ben Rudiak Gould. Since it's always been an open source project, when he gave up development others made some bugfixes and released them in unofficial builds. Eventually a major development project began, resuliting in AviSynth 2.0. This version is very similar to v1.0, although it has more filters. Despite the version number increment, which makes it appear to be a minor revision, AviSynth 2.5 substantially changed how video is processed by AviSynth. While prior versions use the YUY2 colorspace by default, version 2.5 works internally in the YV12 colorspace used in most consumer video. Because this allows AviSynth to deliver frames closer to those stored in the original source, it's been adopted by nearly all AviSynth users. The difference in colorspaces sometimes makes AviSynth 2.5 incompatible with older applications expecting YUY2 color from AviSynth 2.0. This can sometimes be alleviated by converting to that colorspace just before the video is sent to another program.