Thema: Delphi fmod equalizer

Einzelnen Beitrag anzeigen

Flips

Registriert seit: 17. Feb 2005
Ort: Sankt Wendel
491 Beiträge
 
Delphi 7 Professional
 
#1

fmod equalizer

  Alt 27. Dez 2005, 13:53
Hi.

Bin gerade dabei meinen Player zu verbessern/neu zu coden.
Jetzt wollte ich einen Equalizer drin haben.
Mit folgendem Code habe ich es versucht zu testen.

Delphi-Quellcode:
var EQBands : array [0..10] of integer;

...

Procedure Test_EQ;
var i : integer;
begin
  FSOUND_SetPaused(FSOUND_ALL,true);
  for i := 0 to 10 do
  EQBands[i] := FSOUND_FX_Enable(FSOUND_ALL,FSOUND_FX_PARAMEQ);
    
  FSOUND_FX_SetParamEQ(EQBands[0], 80, 12, 15);
  FSOUND_FX_SetParamEQ(EQBands[1], 170, 12, 15);
  FSOUND_FX_SetParamEQ(EQBands[2], 310, 12, 15);
  FSOUND_FX_SetParamEQ(EQBands[3], 600, 12, 15);
  FSOUND_FX_SetParamEQ(EQBands[4], 1000, 12, 15);
  FSOUND_FX_SetParamEQ(EQBands[5], 3000, 12, 15);
  FSOUND_FX_SetParamEQ(EQBands[6], 6000, 12, 15);
  FSOUND_FX_SetParamEQ(EQBands[7], 12000, 12, 15);
  FSOUND_FX_SetParamEQ(EQBands[8], 14000, 12, 15);
  FSOUND_FX_SetParamEQ(EQBands[9], 16000, 12, 15);

  fmod.FSOUND_SetPaused(FSOUND_ALL,false);
end;
Erklärung der Parameter:
Laut der Fmod hilfe gibt der erste Parameter der Funktion FSOUND_FX_SetParamEQ die Id des Effekts an, welche vorher in dem Array gespeichert wurde.
Der 2. Parameter gibt den Center Wert an (?), mögliche Werte von 80 bis 16000, habe die benutzen Werte aus diesem Thread hier.
Der 3. Parameter gibt irgendeine Bandweite an (?), standard ist 12.
Der 4. Parameter gibt den Gain Wert an, im bereich -15 bis 15, damit man merkt wenn was passiert habe ich 15 eingestellt.

Wisst ihr warum es trotzdem nicht geht?

MfG
Flips
Philipp F.
  Mit Zitat antworten Zitat