0
0

In first, sorry for my english. Haw I can make equalizer? as in WinAmp?
Please print code. I use delphi 7.

  • You must to post comments
0
0

So, here are n steps that will bring you to working EQ:

1) BEFORE [code:39nt4no3]FSOUND_INIT(...,...,FSOUND_INIT_ENABLESYSTEMCHANNELFX)[/code:39nt4no3] put this:
[code:39nt4no3]FSOUND_SETBUFFERSIZE(100)[/code:39nt4no3]

2) Be sure that output is FSOUND_OUTPUT_DSOUND; I.E.
[code:39nt4no3]FSOUND_SetOutput(FSOUND_OUTPUT_DSOUND)[/code:39nt4no3]

3) After initialization, use following code:

[code:39nt4no3] if FSOUND_GetOutput() = FSOUND_OUTPUT_DSOUND then begin
FSOUND_SetPaused(FSOUND_SYSTEMCHANNEL, TRUE);
FXHeq60 := FSOUND_FX_Enable(FSOUND_SYSTEMCHANNEL,FSOUND_FX_PARAMEQ);
FXHeq180 := FSOUND_FX_Enable(FSOUND_SYSTEMCHANNEL,FSOUND_FX_PARAMEQ);
FXHeq310 := FSOUND_FX_Enable(FSOUND_SYSTEMCHANNEL,FSOUND_FX_PARAMEQ);
FXHeq600 := FSOUND_FX_Enable(FSOUND_SYSTEMCHANNEL,FSOUND_FX_PARAMEQ);
FXHeq1k := FSOUND_FX_Enable(FSOUND_SYSTEMCHANNEL,FSOUND_FX_PARAMEQ);
FXHeq3k := FSOUND_FX_Enable(FSOUND_SYSTEMCHANNEL,FSOUND_FX_PARAMEQ);
FXHeq6k := FSOUND_FX_Enable(FSOUND_SYSTEMCHANNEL,FSOUND_FX_PARAMEQ);
FXHeq12k := FSOUND_FX_Enable(FSOUND_SYSTEMCHANNEL,FSOUND_FX_PARAMEQ);
FXHeq14k := FSOUND_FX_Enable(FSOUND_SYSTEMCHANNEL,FSOUND_FX_PARAMEQ);
FXHeq16k := FSOUND_FX_Enable(FSOUND_SYSTEMCHANNEL,FSOUND_FX_PARAMEQ);
FSOUND_SetPaused(FSOUND_SYSTEMCHANNEL, FALSE);
end;[/code:39nt4no3]

where FXHeq… will be your “link” to EQ band.

4) Let’s say you have a slider that regulates gain, named SLID1, MaxValue=24, MinValue=0, DefaultPosition=12, so its OnChangeEvent is like this: (word in [] brackets dont count as code!)
[code:39nt4no3]FSOUND_FX_SetParamEQ(["link" to EQ band, i.e. FXeq80],[Frequency],[Width, default 16],-(SLID1.Position-12));[/code:39nt4no3]

Hope it helps.

Always your’s, Black Phoenix

  • You must to post comments
Showing 1 result
Your Answer

Please first to submit.