Overview of AvsP

About AviSynth

Before talking about AvsP, we have to first discuss a bit about AviSynth. AviSynth is a tool for editing video through the use of simple text documents (referred to as "scripts"). If you've never used AviSynth before, here's a quick example of how it works. Let's say you have an avi file on your hard drive, "C:\test.avi". Put the following text in a new text document:


Save the text document as "C:\test.avs" (note the file extension!), then open the document with your media player of choice (windows media player, media player classic, mplayer, etc). If AviSynth is intalled on your computer, you should see the original video with a blurred image. Cool! AviSynth gives you a very quick and easy way to perform all sorts of complex video operations, such as cropping, resizing, fade in/out, etc, without the need for a clunky and hard-to-learn graphical user interface, and best of all, it's free. If you do any sort of video editing on your computer, or ever even intend on doing any video editing in the future, you have no excuse, go and install AviSynth right now.

About AvsP

Now that you know something about AviSynth, let's get back to the issue at hand and talk about AvsP. AvsP is essentially a text editor designed to help create AviSynth scripts. The question which naturally comes up is "An AviSynth script is just a text file, I already have a great text editor, why should I use something else to make scripts?" Ah, that's a valid question, glad you brought it up. Here are a couple of things to consider.

Comparing video

The first thing to note is that by using a simple text editor like Notepad to create AviSynth scripts, you end up having to do a lot of juggling between multiple programs. You create a script in Notepad, in order to see the resulting video you need to open the script in a media player or video editing program (many people use VirtualDub to preview their AviSynth scripts). If you made a typo in the script or if you don't like the final result, you go back to Notepad and repeat the process. That's really not so bad, but it gets much worse if you want to compare the output of one script to another. Let's say you were using Notepad as your text editor and VirtualDub as your external video program, and you wanted to compare the video of two different scripts at a specific position in the video, say frame 50. Here's a list of the necessary steps:

  • Create and save a script in Notepad
  • Create and save a second script in Notepad
  • Open VirtualDub, load the first script
  • Go to frame 50 in VirtualDub (keyboard shortcut Ctrl-G works well)
  • Open another instance of VirtualDub, load the second script
  • Go to frame 50 in this instance of VirtualDub
  • Try and align the two instances of VirtualDub (easiest by maximizing both windows)
  • Compare videos by quickly switching between the two windows (keyboard shortcut Alt-Tab works best)

Them's a lot of steps! What's worse is when you want to compare the video at a different frame, you have to go to the appropriate frame number twice, once for each instance of VirtualDub. AvsP avoids this ugly mess by having a video preview built right in, no need to deal with juggling windows. And since it's a tabbed text editor, comparing multiple scripts becomes remarkably easy, no running and lining up multiple programs, no jumping to a position multiple times. Furthermore, AvsP offers a unique feature called user sliders, which allows for instant comparison of varying filter strengths, something that is impossible to accomplish with a simple text editor.

Inserting filenames

Another thing that tends to be difficult when making AviSynth scripts with a simple text editor is typing in filenames. AviSynth scripts often contain quite a few filenames, whether they are video sources, AviSynth plugins you want to load, or even other AviSynth scripts you wish to import. Typing in "C:\test.avi" like in the earlier example is easy enough, but unless you keep all your files on "C:\", you'll more likely have to type something like:

"C:\Documents and Settings\John Doe\My Documents\My Videos\Trip to Hawaii\New Folder\test.avi"

This of course can get pretty annoying if you have a bunch of video files, all in different folders on your computer. AvsP solves this problem by offering a slew of different methods to add filenames to your script, from selecting video sources from a file open dialog box using custom templates to dragging-and-dropping any number of files from windows explorer.

AviSynth "awareness"

One final issue I'll mention about using a simple text editor to create AviSynth scripts is that a simple text editor isn't "Avisynth aware". AviSynth is in essence a programming language (albeit a simple and easy to use programming language). If you've ever used a programmed in a language such as C/C++, Java, Python, etc, then you know most programmers demand advanced language-specific text features in their editors, such as syntax highlighting, autocompletion, and calltips. These features are a requirement for any modern programming editor, as they improve overall efficiency and reduce user error when working with a specific programming language. AviSynth as a language benefits from having such features as well, it can be a handy way to remember specific filters or even learn about new ones. AvsP provides such facilities in its text editing components, and even offers easy-to-use ways for the user to edit or add new entries to the language database.


This overview has just scratched the surface in terms of the number of features AvsP has to offer. Hopefully some of you are convinced by now to give it a shot. Even still, somewhere in my head I can still hear some people saying "Well, my text editor allows you to open the text file with an external program with a simple keyboard shortcut" or "My text editor can syntax highlight ANY language by creating a definition file", etc. This is all true, and if you're satisfied with your text editor for making AviSynth scripts, I'm not trying to convince you that yours is bad and you shouldn't use it. But I will say that I don't think any text editor has all the AviSynth-specific features that AvsP has in one place - so while I won't claim that AvsP is a better text editor than fill-in-the-blank for editing arbitrary text files, I will go ahead and say that in my opinion it is a better AviSynth script editor. 'Nuff said.