Author Topic: Audio/Music Visualizer  (Read 3947 times)

I was playing around with audio visualization in Love2D, and after several prototypes I made this sort of radial bar visualizer.

The bars represent various frequencies, starting at the leftmost point on the circle and moving clockwise as frequency increases.
The color becomes brighter as the frequency becomes more prominent, resulting in an interesting lighting effect.

(Images link to Youtube videos)



The latest version detects the "intensity" of the music using a formula I devised, and causes the logo to light up, as well as making the screen shake.




The text in the top-left of the earlier ones is for debugging purposes, and should be ignored.

This is rendered in real-time. It wouldn't have worked with a standard Fourier transform algorithm (that stuff absolutely devours the CPU), so I specialized LuaFFT's code and made it nearly 10 times faster.

I'm constantly updating the program, and you can see earlier versions and look forward to new ones on my YT channel.

If you'd like to see a particular song on here, or if you have another idea for a way to visualize the frequency histogram, let me know and I might oblige.
AfterEffects can suck my richard.
« Last Edit: November 02, 2014, 12:34:29 PM by redoctober2009 »

god damn thats cool lol. how did you even do that?
off topic: what song is that

Pretty snazzy

and that's something by Savant, right?

god damn thats cool lol. how did you even do that?
I used Love's built-in audio sampling module to get the samples, and Fourier transforms to categorize the frequencies. Rendering it was as simple as doing a large amount of highly advanced trigonometry.

that's something by Savant, right?
what song is that
The song is Ode to Joy by Savant.



https://www.youtube.com/watch?v=9BTP4pg9m0w
put this on that visualizer and I will yodel for you
« Last Edit: October 20, 2014, 08:05:13 PM by Zanaran2 »

https://www.youtube.com/watch?v=9BTP4pg9m0w
do thissssssss

that's way simpler, and can be easily done in after effects
i like his more :(

that's way simpler, and can be easily done in after effects
i like his more :(
actually I meant to have him put that in the visualizer so I can see what it looks like, should have elaborated

actually I meant to have him put that in the visualizer so I can see what it looks like, should have elaborated
Check OP; I put the request grants there. Yours has been done already, and I have to say that I will be adding that song to my mental list of favorites.

Suggestion: Lower your dynamic range a bit - while some music gets down to around 20hz regulary, few hit the really high frequencies, and so you're losing a lot of your visual potential by assigning part of the visualizer to unused frequencies.

Just a thought. ;)

Suggestion: Lower your dynamic range a bit - while some music gets down to around 20hz regulary, few hit the really high frequencies, and so you're losing a lot of your visual potential by assigning part of the visualizer to unused frequencies.

Just a thought. ;)
i was thinking this as well

The video was really cool. It is pretty neat for how simple it appears to be.

Suggestion: Lower your dynamic range a bit - while some music gets down to around 20hz regulary, few hit the really high frequencies, and so you're losing a lot of your visual potential by assigning part of the visualizer to unused frequencies.

Just a thought. ;)
To expand on this, human hearing only goes to 20KHz, and most can only hear to around 15KHz. Going above that is 100% pointless.

In the earlier videos, the problem was not that the range was too large, but that I was pulling from the array of values using an exponential function, and thereby omitting a large portion of values which should have appeared on the lower end of the circle. I have since discovered and fixed this problem.

Also: Spaghetti (Click the picture for the video, again.)


The logo was drawn by Boost.

The dynamic range between this video and the previous ones has not been decreased, and in fact it is larger since this one has more bars. You'll notice that some notes are still outside the visible spectrum. I'm currently working on a way to balance the histogram such that higher frequencies will not require more space than lower ones.
« Last Edit: October 25, 2014, 08:41:07 PM by redoctober2009 »