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?
- mag666 asked 7 years ago
[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.
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?
- mag666 answered 7 years ago
[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.
Please login first to submit.