I need help with creating an EQ for VB.

I’ve read docs but I just don’t get it :)

What do I have to do to get the EQ to work. It just won’t work as I think it does.

As far as I now, what you do is creating a DSP unit (what is FSOUND_DSPCALLBACK btw? do I have to bother?) and then you enable an FX unit using FSOUND_FX_Enable and then you use FSOUND_FX_SetParamEQ to create an EQ. Why doesn’t this work? Can anybody give me an example on how to do this? 😀

  • You must to post comments

you do not need a dsp callback
just init fmod with system channel fx, set the buffersize to 100ms

and create an array of 10 fx handles
Dim intFXEq(9) As Long

and then you use

For intEq = 0 To 9
‘Enable Equalizer
‘SetEQ(intX, 0)
Next intEq

Sub SetEQ(intIndex As Integer, intVal As Integer) ‘intval is -15 to +15 0 is normal
‘Set our FX
Dim intCenter As Integer
‘Get center frequency
Select Case intIndex
Case 0: intCenter = 80
Case 1: intCenter = 170
Case 2: intCenter = 310
Case 3: intCenter = 600
Case 4: intCenter = 1000
Case 5: intCenter = 3000
Case 6: intCenter = 6000
Case 7: intCenter = 12000
Case 8: intCenter = 14000
Case 9: intCenter = 16000
End Select
FSOUND_FX_SetParamEQ(FX_EQ(intIndex), intCenter, 18, intVal)
End Sub

Sorry if this code doesn’t compile, i grabbed it from my BCX project
and slapped in this topic :)


get XMP Developer’s edition 3.94, includes source for FMOD activeX
control, everything you need is there. The code is in VB6

Also, search the forum, there are a lot of topic for equalizers

  • You must to post comments

Thank you. You might just be my saviour :D:D

  • You must to post comments
Showing 2 results
Your Answer

Please first to submit.