Amiga audio equalizers
category: code [glöplog]
Hello,
many Amiga demos of the Commodore years used to real time display some sort of audio data shaped like equalizers / bars for each of the 4 audio channels.
I wonder which audio data were actually rendered (note, volume, ...)?
I guess it is something that needs little computation time to be able to run at full frame rate (50 Hz).
Thanks, regards
many Amiga demos of the Commodore years used to real time display some sort of audio data shaped like equalizers / bars for each of the 4 audio channels.
I wonder which audio data were actually rendered (note, volume, ...)?
I guess it is something that needs little computation time to be able to run at full frame rate (50 Hz).
Thanks, regards
Pretty sure most were just triggered on a note and set to the note volume, then would fall-off at a predetermined rate. I don't think any actual audio analysis was typically done.
Yeah you've got the usual 4channel VU meter, and also Anaylzers too, but some of the more interesting ones showed you the notes being played too, the most memorable one for me is
Phenomenas - Music Dream.
Phenomenas - Music Dream.
also Music Dream II, http://www.pouet.net/prod.php?which=3418
Music Dream II is one of the best musicdisks ever made.
Argh. Equalizer modify audio. Equalizer are not used to display audio visualizations.
The things that display audio are VU meters and spectrum analyzers. VU meters would usually simply be set to some value when a note-on event is encountered and then decay (as Insectecutor describes), and "spectrum analyzers" usually do the same but distribute but have more than just one volume bar - they have one bar for every note, which looks vaguely like what a spectrum analyzer does under the assumption that lower notes also contain lower frequencies (and vice versa).
The things that display audio are VU meters and spectrum analyzers. VU meters would usually simply be set to some value when a note-on event is encountered and then decay (as Insectecutor describes), and "spectrum analyzers" usually do the same but distribute but have more than just one volume bar - they have one bar for every note, which looks vaguely like what a spectrum analyzer does under the assumption that lower notes also contain lower frequencies (and vice versa).
Add some interpolation and you have some sort of sine-ish look!
Have a list of points, offsetted for octaves*12 (12 notes per octave obviously!) /octavesUsed spread over the Resolution, connect em with lines (use blitter in case of amiga) to get a spiky look!
In case of PC and having just a WaveTable it´s different, but you should have got the concept after Saga Musix´s post...only thing you need is knowing the BPM of the soundtrack you want to use, rest is simple math!
Have a list of points, offsetted for octaves*12 (12 notes per octave obviously!) /octavesUsed spread over the Resolution, connect em with lines (use blitter in case of amiga) to get a spiky look!
In case of PC and having just a WaveTable it´s different, but you should have got the concept after Saga Musix´s post...only thing you need is knowing the BPM of the soundtrack you want to use, rest is simple math!
while we are at it, this one could be my favourite music visualisation on amiga!
@All
Thanks.
"VU meter" is the keyword here and it is a visualization effect based on volume changes for each note being played.
"Equalizers" is certainly not appropriate because there is no audio modification going on.
Any other notable examples?
Thanks.
"VU meter" is the keyword here and it is a visualization effect based on volume changes for each note being played.
"Equalizers" is certainly not appropriate because there is no audio modification going on.
Any other notable examples?
Not Amiga, but for both of the musicdisks I coded, I used individual waveform play positions for the vu-meters because it was much more realistic than just triggering on a note with a constant delay. I also included note displays (crude staff with treble and bass clefs).
:) I coded PT-01 this weekend to make use of the "oscillo" mode of the P61 playroutine. Styled a bit differently from the oscilloscope visualizers in Protracker, since they're vertical and have high precision. In fact I scale down the precision because a 256px wide wave would not look very good! They scale with instrument volume and master volume. I paired the channels to put the two left channel waves on the left and vice versa. If it helps I could post the function that pokes the amplitude values from the oscillo memory window to the sprite x positions.
(The 4 bars behind the scrolltext use another built-in way of getting trigger data out, namely channel trigger. P61 playroutine also provides the instrument number triggered when a channel is triggered, so that you can make up to 31 instrument trigger visualizers if you want.)
(The 4 bars behind the scrolltext use another built-in way of getting trigger data out, namely channel trigger. P61 playroutine also provides the instrument number triggered when a channel is triggered, so that you can make up to 31 instrument trigger visualizers if you want.)
@trixter
Thanks
@Photon
Tackar and congrats for the cool demo and music visualization!
See what I can implement by myself :)
Thanks
@Photon
Tackar and congrats for the cool demo and music visualization!
See what I can implement by myself :)