Introduction
VapourSynth is an application for video manipulation. Or a plugin. Or a library. It’s hard to tell because it has a core library written in C++ and a Python module to allow video scripts to be created. It came to be when I started thinking about alternative designs for Avisynth and most of it was written over a 3 month period.
The software has been heavily inspired by Avisynth and aims to be a 21st century rewrite, taking advantage of the advancements computers have made since the late 90s. The main features compared to Avisynth are:
Multithreaded - Frame level multithreading that scales well
Generalized Colorspaces - New colorspaces can be specified at runtime
Per Frame Properties - Additional metadata can be attached to frames
Python Based - The scripting part is implemented as a Python module so you don’t have to learn a special language
Support for video with format changes - Some video just can’t stick to one format or frame size. VapourSynth can handle any kind of change
Compatible with a large number of already existing Avisynth plugins