User:Raffriff42/Main Page sandbox

From Avisynth wiki
< User:Raffriff42(Difference between revisions)
Jump to: navigation, search
(rearrange some text elements ; tweak intro)
m ((1) tweak top box (2) en dash in place of minus (3) apostrophe in place of single-quote (4) spellcheck 'Avisynth'->'AviSynth')
Line 16: Line 16:
 
</div> <div style="background-color:inherit; width:85%; margin:0.5em 3em; text-align:left; ">
 
</div> <div style="background-color:inherit; width:85%; margin:0.5em 3em; text-align:left; ">
 
=== What is AviSynth? === __NOEDITSECTION__
 
=== What is AviSynth? === __NOEDITSECTION__
*It's a powerful tool for '''video post-production.'''  
+
*It’s a powerful tool for '''video post-production.'''  
*It's a '''[[frameserver]]''', providing instant transfer to other video applications without the need for temporary files.
+
*It’s a '''[[frameserver]]''', providing instant transfer to other video applications without the need for temporary files.
*It's a '''script system''' for '''[[NLE|non-linear editing]]''' and '''[[Filter|video filters]]''' and effects.  
+
*It’s a '''script system''' for '''[[NLE|non-linear editing]]''' and '''[[Filter|video filters]]''' and effects.  
 
<p style="margin-left:1em;">
 
<p style="margin-left:1em;">
It's called Avi''Synth'' because it ''synthesizes'' a virtual [[wikipedia:Audio_Video_Interleave|AVI]] file, "generating video and audio data according to the script and feeding it to the application as needed." (in the [[Original_AviSynth_announcement|words of its inventor]], Ben Rudiak-Gould).  
+
AviSynth itself does not provide a graphical user interface (GUI). While scripting may at first seem tedious and unintuitive, it 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'''. You have complete control of everything.
 
</p>
 
</p>
 
<p style="margin-left:1em;">
 
<p style="margin-left:1em;">
AviSynth itself does not provide a graphical user interface (GUI). While scripting may at first seem tedious and unintuitive, it 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'''. You have complete control of everything.
+
The scripting language is '''simple yet powerful''' – basic [[Filter|filters]] can be combined to create useful and unique effects. It is easy to [[Script_examples|create a quick script]] to solve some video problem. It can do '''much more''' than that, though: to get an idea, take a quick glance at all the [[External_filters|third-party plugins]] available, or [http://forum.doom9.org/forumdisplay.php?s=&forumid=33 browse the doom9 forum] to see what AviSynth users and developers are getting up to lately!
 
</p>
 
</p>
 
<p style="margin-left:1em;">
 
<p style="margin-left:1em;">
The scripting language is '''simple yet powerful''' - basic [[Filter|filters]] can be combined to create useful and unique effects. It is easy to [[Script_examples|create a quick script]] to solve some video problem. It can do '''much more''' than that, though: to get an idea, take a quick glance at all the [[External_filters|third-party plugins]] available, or [http://forum.doom9.org/forumdisplay.php?s=&forumid=33 browse the doom9 forum] to see what Avisynth users are getting up to lately!
+
AviSynth takes its name from [[wikipedia:Audio_Video_Interleave|''AVI'']], a digital media format, and ''Synthesis'', because it creates [http://en.wikipedia.org/wiki/Synthesizer (synthesizes)] a ''virtual'' (in memory, not on disk) media file – “generating video and audio data according to the script and feeding it to the application as needed.” (in the [[Original_AviSynth_announcement|words of its inventor]], Ben Rudiak-Gould). It ''could'' be used as a [http://en.wikipedia.org/wiki/Video_synthesizer Video Synthesizer], but this is not its usual function.
 
</p>
 
</p>
 
AviSynth is '''free open-source software''', under the [http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License GPLv2]; see [[Avisynth_wiki:Copyrights|Copyrights]].
 
AviSynth is '''free open-source software''', under the [http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License GPLv2]; see [[Avisynth_wiki:Copyrights|Copyrights]].
Line 32: Line 32:
 
{| role="presentation" style="border:0; margin:0;" width="90%" cellspacing="10"
 
{| role="presentation" style="border:0; margin:0;" width="90%" cellspacing="10"
 
| style="vertical-align: top; width:60%; padding-right:2em; padding-top: 1em;" |
 
| style="vertical-align: top; width:60%; padding-right:2em; padding-top: 1em;" |
=== {{ReverseHeading3|New to AviSynth - Start Here}} === __NOEDITSECTION__
+
=== {{ReverseHeading3|New to AviSynth Start Here}} === __NOEDITSECTION__
* '''[[first script|Your first script]]''' - A guide for total newbies.
+
* '''[[first script|Your first script]]''' A guide for total newbies.
* '''[[Getting started]]''' - An introductory guide.
+
* '''[[Getting started]]''' An introductory guide.
* '''[[Grammar]]''' - An introduction to the AviSynth scripting language.
+
* '''[[Grammar]]''' An introduction to the AviSynth scripting language.
* [[Filter introduction]] - An introductory guide to most common AviSynth [[Filter|filters]].
+
* [[Filter introduction]] An introductory guide to most common AviSynth [[Filter|filters]].
* '''[[Script examples]]''' - Putting everything together in the real world.
+
* '''[[Script examples]]''' Putting everything together in the real world.
* [[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?)''
 
* Some guides explaining the basic possibilities of AviSynth:
 
* 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.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.l33tmeatwad.com/avisynth101 AviSynth 101] [http://web.archive.org/web/20141018100556/http://www.l33tmeatwad.com/avisynth101 mirror] - A guide by l33tmeatwad, it includes mostly current information on software setup, video basics, importing videos, handling audio, using filters and other useful information.
+
** [http://www.l33tmeatwad.com/avisynth101 AviSynth 101] [http://web.archive.org/web/20141018100556/http://www.l33tmeatwad.com/avisynth101 mirror] A guide by l33tmeatwad, it includes mostly current information on software setup, video basics, importing videos, handling audio, using filters and other useful information.
** [http://salp.wikia.com/wiki/AviSynth_Basics AviSynth Basics] - another guide for beginners.
+
** [http://salp.wikia.com/wiki/AviSynth_Basics AviSynth Basics] another guide for beginners.
 
** [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/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.
 
** [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.
Line 72: Line 72:
 
''The official reference documentation.''
 
''The official reference documentation.''
 
* [[AviSynth Syntax|AviSynth Syntax overview]]
 
* [[AviSynth Syntax|AviSynth Syntax overview]]
* [[Script variables]] - How to declare and use them in scripts.
+
* [[Script variables]] How to declare and use them in scripts.
* [[Operators]] - Available operators and relative precedence.
+
* [[Operators]] Available operators and relative precedence.
* [[Internal functions]] - General purpose functions for math, logic etc.
+
* [[Internal functions]] General purpose functions for math, logic etc.
* [[Clip properties]] - Properties such as Width, Height, Framerate etc.
+
* [[Clip properties]] Properties such as Width, Height, Framerate etc.
* [[Control structures]] - Language constructs for script flow control.
+
* [[Control structures]] Language constructs for script flow control.
* [[User defined script functions]] - How to define and use them 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.
+
* [[Plugins]] How to load plugins (AviSynth, VirtualDub, VFAPI and C-plugins), autoloading and name-precedence.
* [[Runtime environment]] - Scripting on a per clip frame basis.
+
* [[Runtime environment]] Scripting on a per clip frame basis.
  
 
{|
 
{|
Line 92: Line 92:
 
|style="vertical-align:top; width:40%; padding-top: 1em;" |
 
|style="vertical-align:top; width:40%; padding-top: 1em;" |
 
=== {{ReverseHeading3|Filters and Utilities}} === __NOEDITSECTION__
 
=== {{ReverseHeading3|Filters and Utilities}} === __NOEDITSECTION__
* '''[[Internal filters]]''' - Included media [[Filter|filters]], organized by category.
+
* '''[[Internal filters]]''' Included media [[Filter|filters]], organized by category.
* '''[[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]
** [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]
** [http://www.avisynth.nl/users/stickboy/ stickboy's AviSynth Stuff]
+
** [http://www.avisynth.nl/users/stickboy/ stickboy’s AviSynth Stuff]
* [[Shared functions]] - Commonly used script functions.
+
* [[Shared functions]] Commonly used script functions.
* [[Utilities]] - A list of GUIs, command-line, batch and other AviSynth related utilities.
+
* [[Utilities]] A list of GUIs, command-line, batch and other AviSynth related utilities.
  
  
Line 111: Line 111:
 
|style="vertical-align:top; width:60%; padding-right:2em; padding-top: 1em;" |
 
|style="vertical-align:top; width:60%; padding-right:2em; padding-top: 1em;" |
 
=== {{ReverseHeading3|Guides and Advanced topics}} === __NOEDITSECTION__
 
=== {{ReverseHeading3|Guides and Advanced topics}} === __NOEDITSECTION__
* [[Guides]] - Tips on specific conversion types and common tasks.
+
* [[Guides]] Tips on specific conversion types and common tasks.
 
* [[Troubleshooting]] your scripts and configuration.
 
* [[Troubleshooting]] your scripts and configuration.
* [[Advanced Scripting Tips]] - Using recursion, weaving 3 clips, and other programming tips.
+
* [[Advanced Scripting Tips]] Using recursion, weaving 3 clips, and other programming tips.
* [[Advanced topics]] - Chroma Upsampling Error, color conversions, hybrid video, motion compensation, and other advanced subjects.
+
* [[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.
+
* [[Aspect ratios|Aspect ratios explained]] Introduction to aspect ratios (DAR, PAR, SAR), and how to use that for resizing your clip.
 
* [[High_bit-depth_Support_with_Avisynth|High bit-depth (Deep Color) support with AviSynth]]
 
* [[High_bit-depth_Support_with_Avisynth|High bit-depth (Deep Color) support with AviSynth]]
  
Line 124: Line 124:
 
* 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]].
* [[Filter SDK]] - AviSynth plugin programming tips.
+
* [[Filter SDK]] AviSynth plugin programming tips.
* [[Avisynth Plugin Development in C]] - A tutorial to write a plugin with&nbsp;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]].
Line 136: Line 136:
 
''Beyond scripting basics.''
 
''Beyond scripting basics.''
 
* [[Scripting reference|Scripting reference overview]]
 
* [[Scripting reference|Scripting reference overview]]
* [[The full AviSynth grammar]] - The AviSynth grammar revisited and explained in detail.
+
* [[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.
+
* [[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.
+
* [[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.
+
* [[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.
+
* [[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.
+
* [[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.
  
 
|style="vertical-align:top; width:40%; padding-top: 1em;" |
 
|style="vertical-align:top; width:40%; padding-top: 1em;" |
Line 160: Line 160:
 
*'''Editing''' is easy! Please see [http://www.mediawiki.org/wiki/Help:Editing_pages Editing pages] and [http://www.mediawiki.org/wiki/Help:Formatting Formatting].
 
*'''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.]   
 
*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.
+
*'''Filter and script authors''' please see [http://forum.doom9.org/showthread.php?t=171356 Submit your Documentation] on doom9.org.
  
 
|style="vertical-align:top; font-size:96%; width:40%; padding-top: 1.5em;" |
 
|style="vertical-align:top; font-size:96%; width:40%; padding-top: 1.5em;" |

Revision as of 01:12, 27 October 2015

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

AviSynth

What is AviSynth?

  • It’s a powerful tool for video post-production.
  • It’s a frameserver, providing instant transfer to other video applications without the need for temporary files.
  • It’s a script system for non-linear editing and video filters and effects.

AviSynth itself does not provide a graphical user interface (GUI). While scripting may at first seem tedious and unintuitive, it 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. You have complete control of everything.

The scripting language is simple yet powerful – basic filters can be combined to create useful and unique effects. It is easy to create a quick script to solve some video problem. It can do much more than that, though: to get an idea, take a quick glance at all the third-party plugins available, or browse the doom9 forum to see what AviSynth users and developers are getting up to lately!

AviSynth takes its name from AVI, a digital media format, and Synthesis, because it creates (synthesizes) a virtual (in memory, not on disk) media file – “generating video and audio data according to the script and feeding it to the application as needed.” (in the words of its inventor, Ben Rudiak-Gould). It could be used as a Video Synthesizer, but this is not its usual function.

AviSynth is free open-source software, under the GNU General Public License GPLv2; see Copyrights.

New to AviSynth – Start Here

  • 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 filters.
  • Script examples – Putting everything together in the real world.
  • AviSynth FAQ – Answers to many common problems.
  • More information (How does it work? When is it useful? Why no GUI? What applications work well with AviSynth?)
  • 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 101 mirror – A guide by l33tmeatwad, it includes mostly current information on software setup, video basics, importing videos, handling audio, using filters and other useful information.
    • AviSynth Basics – another guide for beginners.
    • Introduction AviSynth from AnimeMusicVideos.org. A basic guide about deinterlacing, resizing and some other basic stuff.
    • Introduction basic AviSynth filters from AnimeMusicVideos.org. A basic guide about smoothers, rainbow removal, sharpeners, color adjustment and some other basic stuff.

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.

Resampling: Bilinear upsampling
Resampling: Blackman filter response
Filter chain
Placement of chroma samples
Audio Spectrogram

Filters and Utilities


ChannelMixer before and after

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

Guides and Advanced topics

Coders

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.


Subtitle


Histogram(mode="color2")


Histogram(mode="levels")

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).

AviSynth icon
Personal tools