0
0

Hi, I try to make DSP plugin that will be use a music spectrum. How i can get that spectrum from plugin body?

FMOD_RESULT F_CALLBACK dspread(FMOD_DSP_STATE *dsp, float *inbuffer, float *outbuffer, unsigned int length, int inchannels, int outchannels)

I base on example dsp_gain plugin but i think that data i have there (in/out buffer) its only a volume lvl or somthing like that. Please tell me how to get a spectrum array like in function:

gSystem->getSpectrum(spectrum[count2], 512, count2, FMOD_DSP_FFT_WINDOW_TRIANGLE);

from dll plugin body?

  • You must to post comments
0
0

[quote:1d3yxk4x]its only a volume lvl or somthing like that[/quote:1d3yxk4x]
Digital sound is exactly that, a bunch of volume levels over time. In digital signal processing this is called time domain data, to get the frequency spectrum you need the data in the frequency domain. To covert time domain data to frequency domain you need to perform a Fourier Transform. Generally, in software one would use a Fast Fourier Trasform.

http://en.wikipedia.org/wiki/Fourier_transform
http://en.wikipedia.org/wiki/Fast_Fourier_transform

  • You must to post comments
0
0

i know that but fmod can make FFT i am looking for some functions that do it on plugin body like System::getSpectrum but i dont know how to use it in plugin body cose i dont have a system handle like in main program. Is there any way to do it by using FMOD or i need to use another library that make this FFT for me from buffer varibles?

  • You must to post comments
0
0

[quote:3wkpy7dc]Is there any way to do it by using FMOD or i need to use another library that make this FFT for me from buffer varibles?[/quote:3wkpy7dc]
FMOD doesn’t expose it’s FFT functionality, so you will have to use another library for that.

  • You must to post comments
Showing 3 results
Your Answer

Please first to submit.