AviSynth

AviSynth is a powerful tool for video post-production. It provides ways of editing and processing videos. AviSynth works as a frameserver, providing instant editing without the need for temporary files.
AviSynth itself does not provide a graphical user interface (GUI), but instead relies on a script system that allows advanced non-linear editing. While this may at first seem tedious and unintuitive, it is remarkably powerful and is a very good way to manage projects in a precise, consistent, and reproducible manner. Because text-based scripts are human readable, projects are inherently self-documenting. The scripting language is simple yet powerful, and complex filters can be created from basic operations to develop a sophisticated palette of useful and unique effects.
AviSynth works by faking AVI files. That means that AviSynth script files work in principle with all media applications and players capable of opening AVI files. What you might see in real life is that not all applications treat video files like they are supposed to. (For instance, Ligos MPEG encoder will not let you choose anything but straight AVI files in the file selector. But if you load an AVI, and manually change the name in the filename box to .AVS - it works perfectly.)
Because AviSynth works like a frameserver your filters are being applied 'on-the-fly'. That means that when a program that has opened an AVS file requests frame 303, it is read from the source, the filters are applied before the frame is delivered to the program.
Download