Look at the values you used, compare that to the expected min max values…
0 for gain… invalid
1 for the badwidth of the slider… not much for a 2 slider eq, like your code suggest a 2 slider eq. try 5 for fun
After playing with this dsp, I noted you should add your upper ranges first, then go down the fr. Since the dsps are one after the other in the chain, this will cause less interference on regular music. It looks like dsps are chained one after the other. I could be wrong. So the output from one goes in the input of the second one. If you increase the lower fr first, then the lower mid… the lower mid hase more "sound" to affect… Where as if you go the other war, because most music has less higher fr "volume" the adverse effect is less.
I could be wrong though.
Creat a DSP
System, createDSPByType with FMOD_DSP_TYPE_PARAMEQ
the, DSP, setParameter…
You will need a dsp for each "slider" of your eq.
It would help you if you wrote a dsp browser to figure out the parameter index and the values, I do have one, here, the text to document the param is included, extracted from the dsp
param 0 is the frequency
"Frequency center. 20.0 to 22000.0. Default = 8000.0."
param1 is the range +-octave the effect will take place
"Octave range around the center frequency to filter. 0.2 to 5.0. Default = 1.0."
param 2 is the gain
"Frequency Gain. 0.05 to 3.0. Default = 1.0."
Well ok I’ve created a new dsp for each "slider", using FMOD_DSP_TYPE_PARAMEQ.
And then change the parameters with Setparameter.
The problem is that the render seems alike. Actually, if i compare my EQ (which is only choking sounds) to LOWPASS and HIGHPASS, the render is not the same at all.
I’d like to make a tri-band EQ with LOW MID and HIGH sliders though.
But by changing the frequence from 1000 to 22000 the only difference is the importance of the choking effect… seem strange.
Here is the source:
FMOD_System_CreateDSPByType(system, FMOD_DSP_TYPE_PARAMEQ, &dspeqlow);
FMOD_System_CreateDSPByType(system, FMOD_DSP_TYPE_PARAMEQ, &dspeqhigh);
FMOD_DSP_SetParameter(dspeqlow, 0, 1000);
FMOD_DSP_SetParameter(dspeqlow, 1, 1.0);
FMOD_DSP_SetParameter(dspeqlow, 2, 0);
FMOD_DSP_SetParameter(dspeqhigh, 0, 22000);
FMOD_DSP_SetParameter(dspeqhigh, 1, 1);
FMOD_DSP_SetParameter(dspeqhigh, 2, 0);[/code:d1i4j53h]
Thank you for your help
- matthoffman answered 8 years ago
Please login first to submit.