IMPORTANT: For the sake of this tutorial I will be simplifying many terms and may not at some parts use the proper terminology in accordance with the official AviSynth syntax guides. The goal of this guide is to simplify things so that it is easier for those not used to programming to understand how the software functions. If you are interested in learning more I would recommend reading through the AviSynth syntax section on the official site to get a better understanding of how the software works.
AviSynth is a scripting software that allows for advanced editing and processing of videos. While it does not have a graphical user interface, other software can be used to preview or encode the video result of a script. The advantage of this is that altered video information can be directly used or encoded without the need for temporary files.
HELPFUL TIP: Not all software supports AviSynth scripts, so when editing video in professional programs such as Adobe Premiere or Sony Vegas it is necessary to save your AviSynth output as a video file such as AVI to work with.
In AviSynth video clips are treated as variables which functions can then use. Once the variable is processed through a function, the result will be an altered version of the input video. For the sake of this tutorial I recommend that you use either AvsPMod or VirtualDub to preview any sample scripts that you may create.