Main Page

From Avisynth wiki
Jump to: navigation, search

AviSynth FAQ | Internal filters | External filters | AviSynth Syntax | Sourceforge | Doom9 Forum


What is 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 is free open-source software, under the GNU General Public License GPLv2.

New to AviSynth – Start Here

Download AviSynth

  • Official builds
v.2.6.0 ST, 32-bit at SourceForge
  • Unofficial builds
v.2.6.0 MT, 32-bit, author SET at
  • Forks
AviSynth+, 32-bit and 64-bit, author ultim at Download: | Wiki page: AviSynth+
AvxSynth: a Linux port of AviSynth AvxSynth is a native port of AviSynth 2.5.8 running on Ubuntu 32/64.
  • Deprecated
v.2.5.8 MT, 32-bit, author SET, discussion at
v.2.5.8 MT, 64-bit, author SET, compiled by JoshyD at
  • Bugs and issues
Known Issues in v2.58.
Known Issues in v2.60.

Script Syntax

The official reference documentation.

Filters and Utilities

Scripting reference

Beyond scripting basics

  • Scripting reference overview
    • The full AviSynth grammar – The AviSynth grammar revisited and explained in detail.
    • The script execution model – The steps behind the scenes from the script to the final video clip output. The filter graph. Scope and lifetime of variables. Evaluation of runtime scripts.
    • User functions – How to effectively write and invoke user defined script functions; common pitfalls to avoid; ways to organise your function collection and create libraries of functions, and many more.
    • Block statements – Techniques and coding idioms for creating blocks of AviSynth script statements.
    • Arrays – Using arrays (and array operators) for manipulating collections of data in a single step.
    • Scripting at runtime – How to unravel the power of runtime filters and create complex runtime scripts that can perform interesting (and memory/speed efficient) editing/processing operations and effects.

ChannelMixer before and after

MaskHS(startHue=105, endHue=138) Histogram(mode="audiolevels")


Advanced topics

Resampling: Bilinear upsampling
Resampling: Blackman filter response


About This Website

We need your help to build and improve our site!

Documentation Copyright

AviSynth documentation is Copyright (c) 2002-2015 AviSynth developers and contributors.

The contents of and are released under the Creative Commons Attribution-ShareAlike 3.0 License (CC BY-SA 3.0).

Personal tools