Main Page

From Avisynth wiki
(Difference between revisions)
Jump to: navigation, search
(how do i left-align the upper text with the other sections?)
 
(35 intermediate revisions by 10 users not shown)
Line 10: Line 10:
 
[http://forum.doom9.org/forumdisplay.php?s=&forumid=33 Doom9 Forum]
 
[http://forum.doom9.org/forumdisplay.php?s=&forumid=33 Doom9 Forum]
 
</p>
 
</p>
<div id="avisyn_mainpage_topbox"> <!-- TOP BOX -->
+
[[File:Avisynth-logo-tray.png|center|280px|AviSynth]]
<div style="margin:0.5em 2em;">
+
 
<div class="avisyn_mainpage_boxcontents" style="text-align:left">
+
{| role="presentation" style="border:0; margin:0;" width="90%" cellspacing="10"
<div id="avisyn_mainpage_pagetitle" style="background-color:inherit; font-family:Arial;font-size:200%; margin:0.5em 2em; text-align:center">[[File:Avisynth-logo-tray.png|280px|AviSynth]] 
+
 
</div>
+
| colspan="2"| <!-- Row 0 -->
<div style="background-color:inherit; width:90%; margin:0em 0em; text-align:left; ">
+
=== {{ReverseHeading3|Donations}} === __NOEDITSECTION__
 +
Hello everyone! I have been hosting this wiki for a long time. I have been hosting it since around 2010 (from Richard Berg). Although the content is maintained by several people, and I'm very grateful for their time, the hosting costs a lot of money. If you are happy with the site, please make a donation! I would be very grateful and we can keep this site alive:
 +
* You can donate by buying me a coffee: https://buymeacoffee.com/avisynth
 +
* You can donate using PayPal: https://paypal.me/avisynth/
 +
 
 
=== {{ReverseHeading3|What is AviSynth?}} === __NOEDITSECTION__
 
=== {{ReverseHeading3|What is AviSynth?}} === __NOEDITSECTION__
<p>
 
 
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 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.
 
+
<p>
AviSynth itself does not provide a graphical user interface (GUI), but instead relies on a script system that allows advanced [[NLE|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 itself does not provide a graphical user interface (GUI), but instead relies on a script system that allows advanced [[NLE|non-linear editing]]. While this may at first seem laborious 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.
 
</p>
 
</p>
 
<p>
 
<p>
AviSynth is free open-source software, under the [http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License GPLv2].
+
AviSynth is free open-source software, and licensed under the [http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License GPLv2].
 
</p>
 
</p>
</div></div></div></div>
 
  
{| role="presentation" style="border:0; margin:0;" width="90%" cellspacing="10"
+
|-
 
| style="vertical-align: top; width:50%; padding-right:2em; padding-top: 1em;" |  <!-- Row 1 Left -->
 
| style="vertical-align: top; width:50%; padding-right:2em; padding-top: 1em;" |  <!-- Row 1 Left -->
 
=== {{ReverseHeading3|New to AviSynth – Start Here}} === __NOEDITSECTION__
 
=== {{ReverseHeading3|New to AviSynth – Start Here}} === __NOEDITSECTION__
Line 37: Line 39:
 
* '''[[AviSynth FAQ]]''' – Answers to many common problems.
 
* '''[[AviSynth FAQ]]''' – Answers to many common problems.
 
* [[More_about_AviSynth|More information]] ''(How does it work? When is it useful? Why no GUI? What applications work well with AviSynth?)''
 
* [[More_about_AviSynth|More information]] ''(How does it work? When is it useful? Why no GUI? What applications work well with AviSynth?)''
* [[Guides]] – Guides explaing the basics, tips on specific conversion types and common tasks.
+
* [[Guides]] – Guides explaining the basics, tips on specific conversion types and common tasks.
 
* [[Troubleshooting]] your scripts and configuration.
 
* [[Troubleshooting]] your scripts and configuration.
 +
 +
 +
{|style="border:none;max-width:26em;margin-left:1em"
 +
|style="padding:0.5em"|[[File:Overlay-example-lighten.png|104px|link=Overlay|Overlay: Lighten mode]]
 +
|style="padding:0.5em"|[[File:Layer-example-lite.png|104px|link=Layer|Layer: Lighten mode]]
 +
|style="padding:0.5em"|[[File:Overlay-example-subtract.png|104px|link=Overlay|Overlay: Subtract mode]]
 +
|-
 +
|style="padding:0.5em"|[[File:Overlay-example-add.png|104px|link=Overlay|Overlay: Add mode]]
 +
|style="padding:0.5em"|[[File:Layer-example-mul-rgb.png|104px|link=Layer|Layer: Multiply mode]]
 +
|style="padding:0.5em"|[[File:Layer-base-Lena.png|104px|link=File:Lenna.png|Lenna]]
 +
|}
  
 
|style="vertical-align: top; width:50%; padding-top: 1em;" |  <!-- Row 1 Right -->
 
|style="vertical-align: top; width:50%; padding-top: 1em;" |  <!-- Row 1 Right -->
 
=== {{ReverseHeading3|Download AviSynth}} === __NOEDITSECTION__
 
=== {{ReverseHeading3|Download AviSynth}} === __NOEDITSECTION__
*'''Official builds'''
+
*'''Current Builds'''
 +
::{{AvsPlusFullname}}
 +
::New features, backward compatible, native support for Unix-like OSes.
 +
::[[AviSynth%2B|Wiki page]]
 +
::[http://www.avs-plus.net/ Homepage (avs-plus.net)&nbsp;]
 +
::[https://github.com/AviSynth/AviSynthPlus/releases Latest release (GitHub)&nbsp;]
 +
::[https://forum.doom9.org/showthread.php?t=181351 Discussion] at forum.doom9.org
 +
 
 +
*''Deprecated Official builds''
 
::[http://sourceforge.net/projects/avisynth2/ v.2.6.0 ST, 32-bit] at [[SourceForge]]
 
::[http://sourceforge.net/projects/avisynth2/ v.2.6.0 ST, 32-bit] at [[SourceForge]]
  
*''Unofficial builds''
+
*''Deprecated Unofficial builds''
::[http://forum.doom9.org/showthread.php?t=148782 v.2.6.0 MT, 32-bit, author SET] at forum.doom9.org
+
::[http://forum.doom9.org/showthread.php?t=148782 v.2.6.0 MT, 32-bit, author SET] <br>at forum.doom9.org
  
*'''Forks'''
+
*'''Universal Installer'''
::[http://forum.doom9.org/showthread.php?t=168856 AviSynth+, 32-bit and 64-bit, author ultim] at forum.doom9.org. Download: [http://www.avs-plus.net/ avs-plus.net] | Wiki page: [[AviSynth+]]
+
::Install&mdash;and quickly switch between&mdash;AviSynth versions:
::[http://www.avxsynth.org/ AvxSynth: a Linux port of AviSynth] AvxSynth is a native port of AviSynth 2.5.8 running on Ubuntu 32/64.
+
::* Avisynth 2.5.8, 2.6.0, 2.6.0 MT, 2.6.1 Alpha
 +
::* Avisynth+ 32-bit, 64-bit
 +
::Get it [http://forum.doom9.org/showthread.php?t=172124 here] at forum.doom9.org
  
*''Deprecated''
+
*''Deprecated Multithread Version''
::v.2.5.8 MT, 32-bit, author SET, [http://forum.doom9.org/showthread.php?t=148117 discussion at forum.doom9.org]
+
::v.2.5.8 MT, 32-bit, author SET, <br>[http://forum.doom9.org/showthread.php?t=148117 discussion at forum.doom9.org]
::v.2.5.8 MT, 64-bit, author SET, [http://forum.doom9.org/showthread.php?t=152800 compiled by JoshyD at forum.doom9.org]  
+
::v.2.5.8 MT, 64-bit, author SET, <br>[http://forum.doom9.org/showthread.php?t=152800 compiled by JoshyD at forum.doom9.org]  
 +
::[https://github.com/avxsynth/avxsynth AvxSynth] <br>AviSynth 2.5.8 running on Ubuntu 32/64.
  
*''Bugs and issues''
+
*''Old Bugs and issues''
 
::[[Known Issues v2.58|Known Issues in v2.58]].
 
::[[Known Issues v2.58|Known Issues in v2.58]].
 
::[[Known Issues|Known Issues in v2.60]].
 
::[[Known Issues|Known Issues in v2.60]].
Line 73: Line 97:
 
** '''[[Plugins]]''' – How to load them (AviSynth, VirtualDub, VFAPI and C-plugins); autoloading and name-precedence explained. Most '''[[External filters]]''' are plugins; the rest are regular scripts.
 
** '''[[Plugins]]''' – How to load them (AviSynth, VirtualDub, VFAPI and C-plugins); autoloading and name-precedence explained. Most '''[[External filters]]''' are plugins; the rest are regular scripts.
 
** '''[[Runtime environment]]''' – Scripting on a per-clip frame basis.
 
** '''[[Runtime environment]]''' – Scripting on a per-clip frame basis.
 +
** '''[[Function objects]]''' – {{AvsPluscon}}user defined functions as variables, capture external variables, use them in ScriptClip instead of stringified script fragments.
  
 
|style="vertical-align:top; width:50%; padding-top: 1em;" | <!-- Row 2 Right -->
 
|style="vertical-align:top; width:50%; padding-top: 1em;" | <!-- Row 2 Right -->
Line 79: Line 104:
 
* '''[[External filters]]''' – Hundreds of separately downloadable filters, organized by category.
 
* '''[[External filters]]''' – Hundreds of separately downloadable filters, organized by category.
 
* User pages hosted on this site:
 
* User pages hosted on this site:
** [http://www.avisynth.nl/users/warpenterprises/ AviSynth Filter Collection – Warpenterprises]
+
** [http://www.avisynth.nl/users/warpenterprises/ AviSynth Filter Collection – Warpenterprises] 20250316: the names of the AviSynth 2.5 plugins are messed up, put 5F before 25 in the filename (thus for example avsmon25a_5F25_dll_20030125.zip instead of avsmon25a_25_dll_20030125.zip)
 
** [http://www.avisynth.nl/users/fizick/fizick.html Fizick’s AviSynth plugins]
 
** [http://www.avisynth.nl/users/fizick/fizick.html Fizick’s AviSynth plugins]
 
** [http://www.avisynth.nl/users/vcmohan/ vcmohan’s Plugin Filters]
 
** [http://www.avisynth.nl/users/vcmohan/ vcmohan’s Plugin Filters]
Line 99: Line 124:
  
 
|style="vertical-align:top; width:40%; padding-top: 1em;" | <!-- Row 3 Right -->
 
|style="vertical-align:top; width:40%; padding-top: 1em;" | <!-- Row 3 Right -->
 +
<br><br>
 
[[File:ChannelMixer_Before%26After.png|center|240px|link=ChannelMixer|ChannelMixer before and after]]
 
[[File:ChannelMixer_Before%26After.png|center|240px|link=ChannelMixer|ChannelMixer before and after]]
 
<div style="text-align:center;">
 
<div style="text-align:center;">
Line 123: Line 149:
 
* Want to [[get involved]]?
 
* Want to [[get involved]]?
 
* The [http://sourceforge.net/projects/avisynth2/ official project].
 
* The [http://sourceforge.net/projects/avisynth2/ official project].
 +
* Learn how to [[Filter_SDK/Compile AviSynth|install compilers and setup environments]].
 
* Learn how to [[Filter_SDK/Compile AviSynth|compile AviSynth]], [[Filter_SDK/Compiling_instructions|AviSynth plugins]] and [[Filter_SDK/Compiling_instructions|console applications that access AviSynth]].
 
* Learn how to [[Filter_SDK/Compile AviSynth|compile AviSynth]], [[Filter_SDK/Compiling_instructions|AviSynth plugins]] and [[Filter_SDK/Compiling_instructions|console applications that access AviSynth]].
 
* Learn how to debug [[Filter_SDK/Debugging_instructions|AviSynth]], [[Filter_SDK/Debugging_instructions|AviSynth plugins]] and [[Filter_SDK/Debugging_instructions|console applications that access AviSynth]].
 
* Learn how to debug [[Filter_SDK/Debugging_instructions|AviSynth]], [[Filter_SDK/Debugging_instructions|AviSynth plugins]] and [[Filter_SDK/Debugging_instructions|console applications that access AviSynth]].
Line 140: Line 167:
 
*'''Filter and script authors''' – please see [http://forum.doom9.org/showthread.php?t=171356 ''Submit your Documentation''] on doom9.org, and the documentation template [[ExampleFilter]].
 
*'''Filter and script authors''' – please see [http://forum.doom9.org/showthread.php?t=171356 ''Submit your Documentation''] on doom9.org, and the documentation template [[ExampleFilter]].
  
|style="vertical-align:top; font-size:96%; width:50%; padding-top: 1.5em;" | <!-- Row 5 Right -->
+
|style="vertical-align:top; font-size:96%; width:50%; padding-top: 1em;" | <!-- Row 5 Right -->
 
=== {{ReverseHeading3|Documentation Copyright}} === __NOEDITSECTION__
 
=== {{ReverseHeading3|Documentation Copyright}} === __NOEDITSECTION__
 
AviSynth documentation is [[Avisynth_wiki:Copyrights|Copyright (c) 2002-{{CURRENTYEAR}}]] AviSynth developers and contributors.
 
AviSynth documentation is [[Avisynth_wiki:Copyrights|Copyright (c) 2002-{{CURRENTYEAR}}]] AviSynth developers and contributors.

Latest revision as of 21:37, 16 March 2025

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

AviSynth

Donations

Hello everyone! I have been hosting this wiki for a long time. I have been hosting it since around 2010 (from Richard Berg). Although the content is maintained by several people, and I'm very grateful for their time, the hosting costs a lot of money. If you are happy with the site, please make a donation! I would be very grateful and we can keep this site alive:

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 laborious 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, and licensed under the GNU General Public License GPLv2.

New to AviSynth – Start Here


Overlay: Lighten mode Layer: Lighten mode Overlay: Subtract mode
Overlay: Add mode Layer: Multiply mode Lenna

Download AviSynth

  • Current Builds
AviSynth+
New features, backward compatible, native support for Unix-like OSes.
Wiki page
Homepage (avs-plus.net) 
Latest release (GitHub) 
Discussion at forum.doom9.org
  • Deprecated Official builds
v.2.6.0 ST, 32-bit at SourceForge
  • Deprecated Unofficial builds
v.2.6.0 MT, 32-bit, author SET
at forum.doom9.org
  • Universal Installer
Install—and quickly switch between—AviSynth versions:
  • Avisynth 2.5.8, 2.6.0, 2.6.0 MT, 2.6.1 Alpha
  • Avisynth+ 32-bit, 64-bit
Get it here at forum.doom9.org
  • Deprecated Multithread Version
v.2.5.8 MT, 32-bit, author SET,
discussion at forum.doom9.org
v.2.5.8 MT, 64-bit, author SET,
compiled by JoshyD at forum.doom9.org
AvxSynth
AviSynth 2.5.8 running on Ubuntu 32/64.
  • Old 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")

Histogram(mode="color2")

Advanced topics

Resampling: Bilinear upsampling
Resampling: Blackman filter response

Development

About This Website

We need your help to build and improve our site!

Documentation Copyright

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

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

Personal tools