=== {{ReverseHeading3|About This Website}} === __NOEDITSECTION__
=== {{ReverseHeading3|About This Website}} === __NOEDITSECTION__
''Welcome to our MediaWiki. Feel free to pitch in and help out! We need your help to build and improve our site. Please see the [http://meta.wikipedia.org/wiki/MediaWiki_User%27s_Guide MediaWiki User's Guide] to learn about Wiki editing. If you are interested in porting this documentation to another language, please see the [http://www.mediawiki.org/wiki/Localisation MediaWiki Localisation Guide.] '''Filter and script authors''' - please submit your documentation to the Wiki! See [http://forum.doom9.org/showthread.php?t=171356 this thread on doom9.org] for a guide on how to easily get involved.''
We need your help to build and improve our site!
*'''Editing''' is easy! Please see [http://www.mediawiki.org/wiki/Help:Editing_pages Editing pages] and [http://www.mediawiki.org/wiki/Help:Formatting Formatting].
*To port this site to '''another language''', please see the [http://www.mediawiki.org/wiki/Localisation MediaWiki Localisation Guide.]
*'''Filter and script authors''' - please see [http://forum.doom9.org/showthread.php?t=171356 Submit your Documentation] on doom9.org.
The contents of [http://avisynth.org avisynth.org] and [http://avisynth.nl avisynth.nl] are released under the ''Creative Commons Attribution-ShareAlike 3.0 License'' [http://creativecommons.org/licenses/by-sa/3.0/ (CC BY-SA 3.0)].
=== {{ReverseHeading3|Documentation Copyright}} === __NOEDITSECTION__
AviSynth documentation is Copyright (c) 2002-{{CURRENTYEAR}} AviSynth developers and contributors - see the [[Avisynth_wiki:Copyrights|Copyrights]] page for more information.
Starting from 5 August 2007 the documentation on this site (avisynth.org and avisynth.nl) is released under the [http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 License] (abbreviated by "CC BY-SA 3.0", see also [http://creativecommons.org/licenses/by-sa/3.0/legalcode full license terms]).
It is a powerful tool for video post-production. It provides ways of editing and processing videos.
It is a frameserver to your other video programs, providing instant editing without the need for temporary files.
It is a script system for video filters and advanced non-linear editing.
It's called AviSynth because it synthesizes a virtual Avi file, "generating video and audio data according to the script and feeding it to the application as needed." It is much more than that, though: to get an idea, take a quick glance at all the third-party plugins available. At the same time, it is much less: it's easy to create a quick script to solve some video problem.
AviSynth itself does not provide a graphical user interface (GUI). While scripting 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 - basic filters can be combined to create useful and unique effects.
Some guides explaining the basic possibilities of AviSynth:
Analog Capture guide. The AviSynth part of the capture guide is about what filters can be used to enhance the quality of the capture. It discusses things like deinterlacing, denoising, cropping and resizing and color adjustment. Which makes it really useful to learn about some of the capabilities of AviSynth in a schematic way.
AviSynth 101mirror - A guide by l33tmeatwad, it includes mostly current information on software setup, video basics, importing videos, handling audio, using filters and other useful information.
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.