Main Page

From Avisynth wiki
(Difference between revisions)
Jump to: navigation, search
m (MediaWiki i18n - dead link fix)
(42 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<p style="clear:both; margin-top:-3px; margin-bottom: 1em; font-variant: small-caps; text-align: center; font-size: 105%;"><!-- These should be fundamental categories -->  
+
__NOTOC__
[http://sourceforge.net/projects/avisynth2/ Download] | [[AviSynth FAQ]] | [[Internal filters]] | [[External filters]] | [http://www.avisynth.nl/users/warpenterprises/ WarpEnterprises] | [http://forum.doom9.org/forumdisplay.php?s=&forumid=33 Doom9 forum] | [http://sourceforge.net/projects/avisynth2/ Project page] | [[Feedback]]</p>
+
<div style="min-width: 700px; max-width: 1400px; margin: auto;">
 
+
<p style="clear:both; margin-top:-3px; margin-bottom: 1em; font-variant: small-caps; text-align: center; font-size: 105%;">
== What is AviSynth? ==
+
<!-- These should be fundamental categories -->  
 +
[[AviSynth FAQ]] |  
 +
[[Internal filters]] |  
 +
[[External filters]] |  
 +
[[AviSynth Syntax]] |
 +
[http://sourceforge.net/projects/avisynth2/ Sourceforge] |  
 +
[http://forum.doom9.org/forumdisplay.php?s=&forumid=33 Doom9 Forum]
 +
</p>
 +
[[File:Avisynth-logo-tray.png|center|280px|AviSynth]]
  
 +
{| role="presentation" style="border:0; margin:0;" width="90%" cellspacing="10"
 +
| colspan="2"| <!-- Row 0 -->
 +
=== {{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.
  
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 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.
 +
</p>
 +
<p>
 +
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>
  
Interested? On this site, you can read [[more about AviSynth]], search the official [[Internal filters|AviSynth manual]], and browse the [[AviSynth FAQ]]. Or you can jump straight to pages listed below for downloading Avisynth. AviSynth is free open-source software.
+
|-
 +
| style="vertical-align: top; width:50%; padding-right:2em; padding-top: 1em;" |  <!-- Row 1 Left -->
 +
=== {{ReverseHeading3|New to AviSynth – Start Here}} === __NOEDITSECTION__
 +
* '''[[first script|Your first script]]''' – A guide for total newbies.
 +
* '''[[Getting started]]''' – An introductory guide.
 +
* '''[[Grammar]]''' – An introduction to the AviSynth scripting language.
 +
* '''[[Filter introduction]]''' – An introductory guide to most common AviSynth [[Filter|filters]].
 +
* '''[[Script examples]]''' – Putting everything together in the real world.
 +
* '''[[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?)''
 +
* [[Guides]] – Guides explaining the basics, tips on specific conversion types and common tasks.
 +
* [[Troubleshooting]] your scripts and configuration.
  
=== Official builds ===
+
|style="vertical-align: top; width:50%; padding-top: 1em;" |  <!-- Row 1 Right -->
 +
=== {{ReverseHeading3|Download AviSynth}} === __NOEDITSECTION__
 +
*'''Official builds'''
 +
::[http://sourceforge.net/projects/avisynth2/ v.2.6.0 ST, 32-bit] at [[SourceForge]]
  
<blockquote style="width:50em; padding:1em; border:1px solid black; background-color:#F8F8FF">NOTE the recommended download for almost everybody is [http://sourceforge.net/projects/avisynth2/files/AviSynth_Alpha_Releases/ v.2.6.0 ST, 32-bit]. "Still in alpha stage" refers to the new 2.6.0-specific features only. Avisynth 2.6.0 is actually [http://forum.doom9.org/showthread.php?p=1629125#post1629125 ''more'' stable] than 2.5.8 in almost all cases.</blockquote>
+
*''Unofficial builds''
[http://sourceforge.net/projects/avisynth2/files/AviSynth_Alpha_Releases/ v.2.6.0 ST, 32-bit] at [[SourceForge]] (still in alpha stage)
+
::[http://forum.doom9.org/showthread.php?t=148782 v.2.6.0 MT, 32-bit, author SET] at forum.doom9.org
  
[http://sourceforge.net/projects/avisynth2/files/AviSynth%202.5/ v.2.5.8 ST, 32-bit] at [[SourceForge]]
+
*'''Forks'''
 +
::[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+]]
 +
::[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.
  
[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. Details can be found [http://www.avxsynth.org/ here].
+
*''Deprecated''
 +
::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, 64-bit, author SET, [http://forum.doom9.org/showthread.php?t=152800 compiled by JoshyD at forum.doom9.org]   
  
=== Unofficial builds ===
+
*''Bugs and issues''
 +
::[[Known Issues v2.58|Known Issues in v2.58]].
 +
::[[Known Issues|Known Issues in v2.60]].
  
[http://www.mediafire.com/?nnbngfccnj2 v.2.5.8 MT, 32-bit, author SET], [http://forum.doom9.org/showthread.php?t=148117 discussion at forum.doom9.org]
+
|-
 +
|style="vertical-align:top; width:50%; padding-right:2em; padding-top: 1em;" | <!-- Row 2 Left -->
 +
=== {{ReverseHeading3|Script Syntax}} === __NOEDITSECTION__
 +
''The official reference documentation.''
 +
* [[AviSynth Syntax|AviSynth Syntax overview]]
 +
** '''[[Script variables]]''' – How to declare and use them in scripts.
 +
** '''[[Operators]]''' – Available operators and relative precedence.
 +
** '''[[Internal functions]]''' – General purpose functions for math, logic etc.
 +
** '''[[Clip properties]]''' – Properties such as Width, Height, Framerate etc.
 +
** '''[[Control structures]]''' – Language constructs for script flow control.
 +
** '''[[User defined script functions]]''' – How to define and use them in 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.
  
[http://forum.doom9.org/showthread.php?t=152800 v.2.5.8 MT, 64-bit, author SET, compiled by JoshyD] at forum.doom9.org
+
|style="vertical-align:top; width:50%; padding-top: 1em;" | <!-- Row 2 Right -->
 +
=== {{ReverseHeading3|Filters and Utilities}} === __NOEDITSECTION__
 +
* '''[[Internal filters]]''' – Included media [[Filter|filters]], organized by category.
 +
* '''[[External filters]]''' – Hundreds of separately downloadable filters, organized by category.
 +
* User pages hosted on this site:
 +
** [http://www.avisynth.nl/users/warpenterprises/ AviSynth Filter Collection – Warpenterprises]
 +
** [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/stickboy/ stickboy’s AviSynth Stuff]
 +
* [[Shared functions]] – Commonly used script functions.
 +
* [[Utilities]] – A list of GUIs, command-line, batch and other AviSynth related utilities.
  
[http://forum.doom9.org/showthread.php?t=148782 v.2.6.0 MT, 32-bit, author SET] at forum.doom9.org
+
|-
 +
|style="vertical-align:top; width:50%; padding-right:2em; padding-top: 1em;" | <!-- Row 3 Left -->
 +
=== {{ReverseHeading3|Scripting reference}} === __NOEDITSECTION__
 +
''Beyond scripting basics''
 +
* [[Scripting reference|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.
  
[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].
+
|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]]
 +
<div style="text-align:center;">
 +
[[File:Maskhs.jpg|100px|link=MaskHS|MaskHS(startHue=105, endHue=138)]]
 +
[[File:Histogram audiolevels.jpg|120px|link=Histogram#Audiolevels_mode|Histogram(mode="audiolevels")]]
  
=== Bugs and issues ===
+
[[File:Histogram-tournesol-color2.png|center|240px|link=Histogram#Color2_mode|Histogram(mode="color2")]]
 +
</div>
  
A list of bugs which are present in v2.5.8 and 2.6a4: [[Known Issues]]. Most of the 2.5.8 issues are fixed in v2.6a4.
+
|-
 
+
|style="vertical-align:top; width:50%; padding-right:2em; padding-top: 1em;" | <!-- Row 4 Left -->
== Usage ==
+
=== {{ReverseHeading3|Advanced topics}} === __NOEDITSECTION__
 
+
* [[Advanced Scripting Tips]] – Using recursion, weaving 3 clips, and other programming tips.
=== New to AviSynth - start here ===
+
* [[Advanced topics]] – Chroma Upsampling Error, color conversions, hybrid video, motion compensation, and other advanced subjects.
 
+
* [[Aspect ratios|Aspect ratios explained]] Introduction to aspect ratios (DAR, PAR, SAR), and how to use that for resizing your clip.
* [[first script|Your first script]] - A guide for total newbies.
+
* [[High_bit-depth_Support_with_Avisynth|High bit-depth ('''Deep Color''') support with AviSynth]]
* [[Getting started]] - An introductory guide for getting started with AviSynth.
+
{|
* [[Filter introduction]] - An introductory guide to most common AviSynth filters.
+
|[[File:Downsampling_bilinear.png|center|180px|link=Resampling#Bilinear_resampler|Resampling: Bilinear upsampling]]
* [[Script examples]] - Assorted examples for putting everything together in the real world.
+
|[[File:Blackman.jpg|center|180px|link=Resampling#Blackman_resampler|Resampling: Blackman filter response]]
* Some guides explaining the basic possibilities of AviSynth:
+
|}
** [http://www.doom9.org/capture/postprocessing_avisynth.html 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.
+
** [http://www.animemusicvideos.org/guides/avtech/avisyntha.html Introduction AviSynth from AnimeMusicVideos.org]. A basic guide about deinterlacing, resizing and some other basic stuff.
+
** [http://www.animemusicvideos.org/guides/avtech/avspostqual.html Introduction basic AviSynth filters from AnimeMusicVideos.org]. A basic guide about smoothers, rainbow removal, sharpeners, color adjustment and some other basic stuff.
+
* [[Troubleshooting]] your scripts and configuration.
+
 
+
=== Filters, external plugins, script functions and utilities ===
+
 
+
* [[Internal filters]] - The official list and descriptions of included filters, organized by category.
+
* [[External filters]] - Documentation of custom script functions and AviSynth v2.5x plugins.
+
** [[External plugins old|External plugins (old)]] - Documentation of AviSynth v1.0x/v2.0x plugins (older plugins, some of them are still in general use).
+
* [http://www.avisynth.nl/users/warpenterprises/ AviSynth plugin collection] organized by WarpEnterprises.
+
* [[Shared functions]] - Commonly used script functions.
+
* [[Utilities]] - A list of GUIs, command-line, batch and other AviSynth related utilities.
+
 
+
=== AviSynth Syntax ===
+
 
+
* [[AviSynth Syntax]] - The official reference documentation.
+
** [[Grammar]] - The grammar of AviSynth script language. An introduction to AviSynth scripting.
+
** [[Script variables]] - How to declare and use them in scripts.
+
** [[Operators]] - Available operators and relative precedence.
+
** [[Clip properties]] - Functions that return a property of a clip.
+
** [[Control structures]] - Language constructs for script flow control.
+
** [[Internal functions]] - Ready-made non-clip functions to use in scripts.
+
** [[User defined script functions]] - How to define and use them in scripts.
+
** [[Plugins]] - How to load plugins (AviSynth, VirtualDub, VFAPI and C-plugins), autoloading and name-precedence.
+
** [[Runtime environment]] - Scripting on a per clip frame basis.
+
* [[Scripting reference]] - Beyond scripting basics.
+
** [[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.
+
 
+
=== AviSynth FAQ, Guides and Advanced topics ===
+
 
+
* [[AviSynth FAQ]] - Answers to many common problems.
+
* [[Aspect ratios|Aspect ratios explained]] - Introduction to aspect ratios (DAR, PAR, SAR), and how to use that for resizing your clip.
+
* [[Guides]] - Tips on specific conversion types and common tasks.
+
* [[Advanced topics]] - About topics such as the Chroma Upsampling Error, color conversions, hybrid video, motion compensation, 10-bit video and other advanced subjects.
+
* [[Advanced Scripting Tips]] - Using recursion, weaving 3 clips, and other programming tips.
+
 
+
== Development ==
+
  
 +
|style="vertical-align:top; width:50%; padding-top: 1em;" | <!-- Row 4 Right -->
 +
=== {{ReverseHeading3|Development}} === __NOEDITSECTION__
 
* Want to [[get involved]]?
 
* Want to [[get involved]]?
* The official [http://sourceforge.net/projects/avisynth2/] project.
+
* The [http://sourceforge.net/projects/avisynth2/ official project].
* Learn how to [[compile AviSynth]], [[Filter_SDK/Compiling_instructions|AviSynth plugins]] and [[Filter_SDK/Compiling_instructions|console applications that access AviSynth]]. (todo - move first to Filter_SDK)
+
* 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 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]].
* [[Filter SDK]] - AviSynth plugin programming tips.
+
* [[Filter SDK]] AviSynth plugin programming tips.
* [[Avisynth Plugin Development in C]] - A tutorial to write a plugin with C.
+
* [[Avisynth Plugin Development in C]] A tutorial to write a plugin with&nbsp;C.
 
* [http://forum.doom9.org/forumdisplay.php?s=&forumid=69 AviSynth Developer Forum]
 
* [http://forum.doom9.org/forumdisplay.php?s=&forumid=69 AviSynth Developer Forum]
 
* The ongoing [[changelist]].
 
* The ongoing [[changelist]].
 
* About the development of [[AviSynth v3]] (which will be platform independent).
 
* About the development of [[AviSynth v3]] (which will be platform independent).
* References to image processing algorithms [[Image Processing Algorithms]]
+
* References to [[Image Processing Algorithms|image processing algorithms]].
 
+
== AviSynth Wiki ==
+
  
Welcome to our MediaWiki. Feel free to pitch in and help out! We need your help to fill and improve our Wiki. Please see [http://www.mediawiki.org/wiki/Localisation Localisation] and the [http://meta.wikipedia.org/wiki/MediaWiki_User%27s_Guide User's Guide] for usage and configuration help.
+
|-
 +
| colspan="1" style="vertical-align:top; padding-top: 1em;" | <!-- Row 5 Left -->
 +
=== {{ReverseHeading3|About This Website}} === __NOEDITSECTION__
 +
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, and the documentation template [[ExampleFilter]].
  
== AviSynth documentation copyright ==
+
|style="vertical-align:top; font-size:96%; width:50%; padding-top: 1em;" | <!-- Row 5 Right -->
 +
=== {{ReverseHeading3|Documentation Copyright}} === __NOEDITSECTION__
 +
AviSynth documentation is [[Avisynth_wiki:Copyrights|Copyright (c) 2002-{{CURRENTYEAR}}]] AviSynth developers and contributors.
  
AviSynth documentation is Copyright (c) 2002-2014 AviSynth developers and contributors.
+
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)].
  
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/ CreativeCommons 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]). More information can be found [[Avisynth_wiki:Copyrights|here]].
+
|}
 +
</div>
 +
[[Category:AviSynth]]

Revision as of 15:00, 22 December 2016

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

AviSynth

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, and licensed 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 forum.doom9.org
  • Forks
AviSynth+, 32-bit and 64-bit, author ultim at forum.doom9.org. Download: avs-plus.net | 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 forum.doom9.org
v.2.5.8 MT, 64-bit, author SET, compiled by JoshyD at forum.doom9.org
  • 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-2024 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