Hi Klaus
Zitat:
Und noch vielleicht ein Copy und Paste Fehler:
Richtig
Habe es von meiner Winamp Render function eingefügt
da hieß die abfrage anders. Aber gut das du mich drauf aufmerksam gemacht hast.
Zitat:
BASS_DATA_FFT512 512 sample FFT (returns 256 floating-point values)
BASS_DATA_FFT1024 1024 sample FFT (returns 512 floating-point values)
BASS_DATA_FFT2048 2048 sample FFT (returns 1024 floating-point values)
BASS_DATA_FFT4096 4096 sample FFT (returns 2048 floating-point values)
Auch richtig!
Das handhabe ich auch so.
Delphi-Quellcode:
case (FFT_WMP_SkipCount) of
1: FFTSize := BASS_DATA_FFT1024;
2: FFTSize := BASS_DATA_FFT2048;
3: FFTSize := BASS_DATA_FFT4096;
else
FFT_WMP_SkipCount := 1;
FFTSize := BASS_DATA_FFT1024;
end;
BASS_ChannelGetData(channel, Data32, FFTSize or
DWORD(IfThen(ChanInfo.chans = 2,
BASS_DATA_FFT_INDIVIDUAL)));
Durch das Flag BASS_DATA_FFT_INDIVIDUAL werden die daten unter verwendung von BASS_DATA_FFT2048
mit 2 mal 1024 samples zurückgegeben!
Was ich nicht verstehe das die gleiche Renderfunktion in winamp funktioniert
Der unterschied liegt doch nur in der übergabe der Samples welche hier 575 entsprechen.
EDIT:
Das ist die letzte Fehlermeldung!
Zitat:
Debug Output: Invalid allocation size - FFFFE810 (exceeded 7ffdefff) Process WMPTest.exe (1256)
gruss Emil