nochmal danke an alle die geantwortet habe.
ich bin mir sicher dass da noch eine menge fehler drin steken
dazu muss ich sagen, ich habe auf die schnelle die Haupt struktur der Komponente zusamen geschmissen damit ich das ganze testen könnte und sehen ob ich auf dem richtigen weg bin.
und ich habe einiges der komponente von dem bass packet delphi\SampleVis kopiert
damit ich mir nicht doppelte arbeit machen muss nur um par funktionen zu testen
davon stammt auch der type THandle in BitBlt(HWND,...)
Zitat:
// Sicher, dass das hier so stimmt? Vor allem das mit dem OR macht mich sehr stutzig
BASS_Mixer_ChannelGetData(Channel, Samples, (ChannelInfo.chans * VisBuff.Width * SizeOf(Single)) or BASS_DATA_FLOAT)
Ja! Das Stimmt so.
aus der Bass hilfe
Zitat:
Perform a 1024 sample FFT on a channel and list the complex result.
float fft[2048]; // fft data buffer
BASS_ChannelGetData(channel, fft, BASS_DATA_FFT1024|BASS_DATA_FFT_COMPLEX);
und die beanstandung wegen den variablen die ich verwendet habe, das ist doch nu wirklich nebesache. sobald ich alles fertig habe was rein muss, und ich schätze die Compo wird rund ~3000 Codezeilen, dann wird alle neu und sauber programmiert! da kommen noch verschieden Mode's rein wie Oscilloscope, Spectrum, ...
@NamenLozer da bei deinem Kommentar
"magic number?"
wie gesagt das ist nur ein test
Mir ging es nur Speed optimieren!
Sampling Profiler bestätigt auch das problem liegt an LineTo
ich habe eine andere Komponente die das selbe macht ist aber um einiges schneller, siehe anhang.
so jetzt gehe ich schlafen. bei uns hier in Canada ist es schon 5:02 AM