Wenn ich mir mit der BASS UDF einen Equalizer zurecht baue, dann kommen bei zu hohen Boosts Störgeräusche. Mein Handy-EQ meidet diese allerdings mit Hilfe von Filtern, und boostet dennoch sehr stark. Wie kann ich folgenden Code verändern, um Störgeräusche zu entfernen, aber dennoch die Frequenzen zu verstärken?:
Spoiler anzeigen
#include <BASSFX.au3>
$sFile = @DesktopDir&"\test.mp3"
Local $aSets[4] = [3, 4, 5, 6]
Local $aFreqs[4] = [30, 60, 120, 250]
ConsoleWrite("Setup ran"&@CRLF)
_BASS_STARTUP("bin\bass.dll")
_BASS_FX_Startup("bin\bass_fx.dll")
_BASS_Init(0, -1, 100000, 0, "")
ConsoleWrite("BASS started"&@CRLF)
$hMusic = _BASS_StreamCreateFile(0, $sFile, 0, 0, 0)
_BASS_ChannelPlay($hMusic, True)
ConsoleWrite("Channel started"&@CRLF)
sleep(10000)
_BASS_SetEQ($hMusic, $aSets, $aFreqs)
ConsoleWrite("EQ started"&@CRLF)
sleep(10000)
ConsoleWrite("End"&@CRLF)
Func _Bass_SetEQ($hStream, $aSets, $aFreqs)
Local $hFX, $sParamStd
$hFX = _BASS_ChannelSetFX($hStream,$BASS_FX_BFX_PEAKEQ, 0)
$sParamStd = "%i|2.5|0|%s|%s|5"
for $i = 0 to UBound($aFreqs)-1 step +1
_BASS_FXSetParameters($hFX, StringFormat($sParamStd, $i, $aFreqs[$i], $aSets[$i]))
Next
Return $hFX
EndFunc
~~ Die Funktion _BASS_SetEQ() stammt im Kern von chesstiger , und wurde von mir nur Array-tauglich gemacht, und leicht verändert ~~
Danke für hoffentlich kommende Antworten