Any examples/advice on FFGL audio input for creating visualizers?

FFGL, OSC, GLSL. If you like abbreviations, this is the forum for you
Post Reply
domegod
Met Resolume in a bar the other day
Posts: 2
Joined: Mon May 18, 2020 04:25

Any examples/advice on FFGL audio input for creating visualizers?

Post by domegod »

I saw from the release notes that "The FFGL plugin standard is updated to version 2.0. Plugins can now receive Audio FFT input to create audio visualizers."

However from looking around the repo, I cannot figure out how to use it.

I was able to get a parameter here:

Code: Select all

std::shared_ptr< ffglqs::ParamFFT > audiofft;
AddParam( audiofft = ffglqs::ParamFFT::Create("AudioFFT"));
I see that I now have an FFT with 2048 samples. However, when I check the values, they are all 0. Also, the calls I make to fns like GetBass(), GetVolume() etc. also return 0. Am I accessing the data wrong? Trying some expressions like

Code: Select all

this->audioParams[ audiofft ].GetBass()
audiofft->fftData[ 50 ]
Also tried using this directly in my frag shader like

Code: Select all

uniform float AudioFFT[2048];
but no luck there either.

I see my plugin & parameter in Resolume and I'm pretty sure that part is configured right - tried with both Composition and External audio. Just feeling pretty lost with the c++ side of things and haven't found any info when I search. Any help would be appreciated!

Menno
Team Resolume
Posts: 115
Joined: Tue Mar 12, 2013 13:56

Re: Any examples/advice on FFGL audio input for creating visualizers?

Post by Menno »

I'm not sure about the ffglqs classes, but if you're able to use standard ffgl you could have a look at the particles example inside the ffgl repo. It creates an fft input and uses the values to control the number of particles that spawn for each bin. To see the effect in arena you need to play some audio in one layer and the plugin in another. Also the number of particles need to be raised, the plugin itself is kind of broken, but the information on how to use fft is there.

Post Reply