AVS Frequently Asked Questions
Frequently Asked Questions
Advanced Visualisation Studio


Before checking this list, make sure you have the latest AVS version (at the moment: v2.8.1, check the plug-ins list or AVS about box to see which one you have). You can get it by downloading the latest Winamp (either Standard or Full version).


Question #1a: What is AVS?
Question #1b: I downloaded a bunch of AVS plug-ins/presets, but they don't show up in the Winamp plug-ins list!

AVS is a visualisation plug-in that isn't limited to predefined effects: the user can combine the library of built-in effects in endless ways to create so-called presets. There are tons of presets available for download on the web, most of which are a lot better than the default presets (they're a bit outdated).
To view these presets, start AVS like any other plug-in and right-click the display. You can then choose from all the presets installed.



Question #2: How can I configure AVS?

First of all, you need to be in Windowed or Docked mode (not Fullscreen). Then, right-click the AVS display and choose 'AVS Editor': the configuration dialog should open up. From the menus available, you can access all the options that AVS provides. These are mostly self-explanatory, but the difficult ones are covered in specific questions.



Question #3: AVS opens every time I start a new song. How can I turn this off?

You can disable/enable this setting by going to Winamp's 'Options' > 'Preferences' (Ctrl+P) menu.
Select Plug-ins (not Visualization) and disable/enable the option "Auto execute visualization plug-in on playback". (first checkbox)



Question #4a: AVS keeps changing the visuals every X seconds. How can I turn this off?
Question #4b: AVS keeps showing the same visual. How can I make it change presets regularly?

To turn this on/off, you have to open the configuration dialog first (see Question #2). Then, go to the 'Settings' menu at the top, click 'Presets/Hotkeys'. Now, turn on/off the checkbox marked 'Randomly switch presets'.
Note that AVS will never cycle presets while the configuration dialog is open, even when this is turned on. Make sure that this is turned off anyway when creating presets, because you could easily lose an unsaved preset this way.



Question #5: I saw someone who had AVS running as his animated desktop background! How is this possible?

First, start AVS and open up the configuration dialog (see Q#2). Now, click the 'Settings' menu, and then 'Display'. On the right-hand side, a box labeled 'Overlay mode' should appear. Enable this, and check 'set desktop to color', you should now have an AVS desktop background.

If you don't see anything, try removing any desktop wallpaper you may have and turning off Active Desktop. Both can be done through the Display panel in the Windows Control Panel.

If you do see AVS, but it's covered in a bunch of dots, you're probably running in 16-bit colour mode (High Colour). The overlay-colour that is used can't be properly displayed in 16-bit, and so Windows draws dots of the nearest colours to give you the impression of the right colour. Try a different (slightly brighter or darker) overlay colour, or switch to 24-bit/32-bit (True Colour).



Question #6: How can I make my own presets?

Open the configuration dialog (see Q#2). In the configuration dialog, you should see a tree-view on the left hand side. This is an overview of the currently loaded preset: AVS will apply each effect from top to bottom, and then display the result. The result is fed back into the top for the next frame.
There are 3 buttons (+, -, x2): these are for adding an effect, removing an effect and duplicating the currently selected effect. See Q#5 for details about the effects.



Question #7: I don't understand what a particular effect does! Where can I find an explanation?

Every AVS effect is quite different. Most are fairly straightforward, but others aren't. Some even allow you to program your own mathematical equations for movement, colour or shape.

Beginners should read the excellent AVS tutorial by pIR. It contains a detailed explanation of every AVS effect:
http://perso.club-internet.fr/pcharp...vs2_tut_en.pdf

Here are some guides on various topics that should help you as well. Learning how to use AVS to its fullest is a time consuming hobby, and you shouldn't expect to know all of it in one day.

What math is required?
http://forums.winamp.com/showthread.php?threadid=77433

The Superscope
http://forums.winamp.com/showthread.php?threadid=61119

The Dynamic Movement
http://forums.winamp.com/showthread.php?threadid=64660

Variables in AVS code (Superscopes, Dynamic Movements, etc.)
http://forums.winamp.com/showthread.php?threadid=68527

Explanation of some concepts of 3D SuperScopes, and the relationship between AVS code and mathematical equations
http://forums.winamp.com/showthread.php?threadid=66395

Short refresher of trigonometry
http://forums.winamp.com/showthread.php?threadid=61847

How to comment inside AVS code
http://forums.winamp.com/showthread.php?threadid=74143

Huge thread containing lots of code and some beginner tutorials:
http://forums.winamp.com/showthread.php?threadid=87661

Code that approximates the built-in movements (useful for learning to code):
http://forums.winamp.com/showthread.php?threadid=70899



Question #8: What is an APE?

APE stands for 'AVS Plug-in Effect'. As the name suggests, they are extra effects for AVS, made by other programmers. There is no official collection of APEs, but you can find a list of most APE's here. Check the last page of this thread for the most recent versions:

http://forums.winamp.com/showthread.php?threadid=90097



Question #9: AVS is incredibly slow on my computer! How can I speed it up?

The answer is simple: you can't. AVS only uses your CPU, so having a fast 3D graphics card won't help much. Here are some tips in speeding it up:

- Run in 32-bit mode. This might sound weird, but 32-bit color depth is a lot faster than 16-bit in AVS. This is because everything is calculated at 32-bit internally, so any other mode requires the image to be converted each frame.

- Run in a low resolution. If your video-card doesn't support resolutions like 320x240 or 400x300 at 32-bit, you can use pixel-doubling. This effectively halves the actual resolution (e.g. 640x480 pixel-doubled is the same as 320x240).

- Turn off any other programs or background processes that are running.



Question #10: This is stupid. Why doesn't AVS use my videocard? It's a graphics program, isn't it?

Short answer: Hardware accelerated AVS isn't going to happen. Not now, and not anytime soon.

Long answer:
It's not that simple... video-card manufacturers would like you to believe that your shiny new card can do anything, but the truth is that it is still a 'dumb' machine designed for specific purposes. There are many graphics-tasks that graphics cards can't do, for example raytracing or voxel rendering.
On top of that, AVS's component model (where every component can do anything it wants) is not suited for graphics cards. Hardware accelerated applications require specific streamlining in the programs that use them: otherwise the program runs just as slowly as software graphics.

It is not possible to simply add hardware acceleration to AVS: several portions would need to be rewritten and rethought. The result would not be compatible with the old AVS anymore. And it would be a major project requiring lots of skill, time and dedication.

For more in-depth discussions on the hardware acceleration issue, check the following topics:

http://forums.winamp.com/showthread.php?threadid=159933
http://forums.winamp.com/showthread.php?threadid=87279
http://forums.winamp.com/showthread.php?threadid=70823
http://forums.winamp.com/showthread.php?threadid=77753
http://forums.winamp.com/showthread.php?threadid=66004



Question #11: AVS looks very pixelized. Is there any way to fix this?

Pixel-doubling might be enabled. Open the configuration dialog (see Q#2), click the Settings menu and then Display. Uncheck the pixel-doubling box if it's enabled.



Question #12: How can I capture the output of AVS as a video/movie file?

AVS doesn't have this function built-in, but there are currently 2 APEs (AVS plug-in effects, see Question #5) that can capture the video of AVS to an .AVI file. After inserting one them at the end of the preset you want to capture, you can configure and control it through the component's configuration dialog (on the right hand side).
Note that these will only allow you to capture one preset at a time and will not capture transitions. If you have a problem with one of these, you should probably contact the author of the APE rather than posting your question in these forums.

AVSGrabber.ape: http://avs.acko.net/ by Steven Wittens (UnConeD)
Saver.ape: http://www.dmc.dit.ie/pixelcorps/ by times2



Question #13: I want to use AVS for live performances. How do I do this?

You can use AVS or any other visualization for that matter for live sets. All the info you need for this is here:

http://forums.winamp.com/showthread.php?threadid=64973



Question #14: I'd like to distribute my presets as a downloadable pack. How can I create a self-installing EXE?

The easiest way to do this is to use PimpBot, by Yathosho (Jan T. Sott). This program will package your presets automatically:

http://forums.winamp.com/showthread.php?threadid=156861

Note: if you are a beginning artist, it's best to post your work in the AVS Presets forum as a regular zipped package first. The people there are also AVS artists and can give you useful tips on how to improve your presets.



Question #15: I'd like to develop my own APEs. How can I get started?

Making an APE is not easy, so you have to be a good programmer first. APEs are written in C++ and are Windows DLL files. First of all, you'll need the APE SDK, which you can download here

This is an example of a very basic APE. Load up the code in your development program (probably Visual Studio), create a DLL project and compile it. Rename your DLL file to a .APE file and copy it into the AVS directory.

If you want a more complicated example, you can download the source code of the Render / Picture II APE here. It contains some optimizations to the SDK (such as configuration handling) and fast MMX assembly code for all the AVS blend modes.

And finally, remember that the power of AVS lies in its ability to plug stuff together. Try not to make an APE that is only suited to one particular effect, but rather make something that is useful in a lot of situations and/or is customizable in many ways.



Question #16: How does the getkbmouse() function work? What does the parameter mean?

From the AVS function reference:
getkbmouse(which_parm)
= returns information about the location and state of the keyboard or mouse
which_parm = 1: mouse X position (-1..1 is onscreen)
which_parm = 2: mouse Y position (-1..1 is onscreen)
which_parm = 3: mouse left button state (0 up, 1 down)
which_parm = 4: mouse right button state (0 up, 1 down)
which_parm = 5: mouse middle button state (0 up, 1 down)
which_parm > 5: (GetAsyncKeyState(which_parm)&0x8000)?1:0

The last part is probably unclear. To use it you need to look up the virtual key code for a particular key. The return value will be 0 for 'key is up' and 1 for 'key is down'.
You can download a list of all key codes here. Note that this list uses hexadecimal values, so you will need to convert them to decimal (in your head, or using Windows's calculator).



Question #...: My question is not answered here! What do I do?

First, try using the 'Search the Forums' link at the top. Your question might have been asked before. If you can't locate a previous answer, feel free to ask it here (in the appropriate sub-forum).



(This list is maintained by Steven Wittens / UnConeD. If you feel a question should be added, send the question and answer to him.)
(Most of these answers have accumulated over time: credit goes to everyone who's helped out here)
Last Update: July 15, 2004