Archive: What are the most advanced visualizations?


10th April 2005 01:14 UTC

What are the most advanced visualizations?
I have been out of touch with winamp for the last few years. I wanted to know what are the most advanced winamp plugins out there right now. What are they capable of?

The most important thing im interested in is how the plug in deals with the audio to make it visual. For example I have seen some plugs (along time ago) that no matter what song is playing you can’t tell too much of a visual difference. Can plug ins tell things like tempo, volume, and type of instrument (drugs, string and wind?)

How many of then are open source?


10th April 2005 03:09 UTC

nope they cant
finding out instrument types, especially if multiple instruments are played at the same time, would require a huge amount of processing power, which is just not available if you want to have your visualizations in real-time
all you can do is find out if there was a beat and the volume for each frequency (winamp passes an array with 576 bands to vis plugins)


10th April 2005 07:25 UTC

What do you mean by "bands" ? Can it scan for anything besides beat and volume?


10th April 2005 10:01 UTC

He means 576 seperate samples of data from the audio file.

Since AVS is programmable the limit of the 'information' you can get about the music is only limited by processing power. AVS tells you if there is a beat but you can code your own beat detection. AVS gives you a frequency spectrum of the current samples, but if you want you can program your own time->frequency domain conversion (I made a preset that does a continuous wavelet transform of the music data for example.)

You can code AVS to interpret the sound data in pretty much any way you want, provided you know how.


10th April 2005 17:34 UTC

What are some of these 576 seperate data samples what do they look for?


10th April 2005 19:40 UTC

there are two functions getosc and getspec for getting the oscilloscope or spectrum data. they take in floating point values. however the sample data is limited to a resolution of 576 samples.

this can be seen in both the plugin sdk and the ape sdk.
There are a few threads around the forums about this.

http://forums.winamp.com/showthread....ht=576+samples
http://forums.winamp.com/showthread....ht=576+samples
http://forums.winamp.com/showthread....ht=576+samples

the reason for this is that winamp passes 'visdata' as an array (pointer) to a three dimensional array with left and right channels, spectrum and oscilloscope data, and the 576 samples. in the ape sdk this comes as char visdata[2][2][576] passed to a 'render' function every frame.

i havent worked with the plugin sdk for ages so i cant remember if it deals with it in exactly the same way but I remember being the same or similar at least.


10th April 2005 19:44 UTC

So what are you capable of doing with these 576 samples? What are you not capable. What can be done extremely well and what only works ok?


10th April 2005 19:51 UTC

thats a vague question. it would help if we knew exactly what you wanted to do.

its good enough to write your own basic beat detection and it comes with its own which is sufficient for most peoples needs.

it comes with its own spectrum data but again the osc data is good enough that you could work your own from that if you wanted (although i'm not sure if there would be a heavy performance/quality loss).

the other issue is speed. if you sacrifice custom routines for the default winamp ones it will naturally be faster since these are already being evaluated regardless.

i've never made anything particularly complex and dont have a very deep understanding of the 'mechanics' of sound. if you search the forums you may be able to find some better answers.


11th April 2005 04:40 UTC

erm; write in the beat section & read pak-9's tutorial(s)


11th April 2005 08:02 UTC

MaTT: Read first, post dumb posts later


11th April 2005 12:51 UTC

note that this is only the avs forum and there are other visualization plugins for winamp :)


11th April 2005 13:54 UTC

Judging by your questions saintstudios I'm not sure your really familiar with the mechanics of signal processing. You are given a series of samples to with what you wish, the processing you program in is whatever you like. If you can find the theory in a signal processing book you can do it... in other words, I think maybe you should read some signal processing books and then re-ask your question.