Einzelnen Beitrag anzeigen

DIET3RIX

Registriert seit: 21. Feb 2006
Ort: Bonn
78 Beiträge
 
Delphi 2007 Professional
 
#1

[Bass.dll] CPU auslastung wegen Visualization

  Alt 5. Apr 2007, 11:28
Hey Leute,

ich hab da ma 'n Problem mit meinem Projekt und zwar mit der Visualization mit Hilfe von Bass.dll (2.3.0.2) [Spektrum].
Durch die hab ich ca. 80% CPU Auslastung, deaktiviere ich den Timer2 [Interval: 33] hab ich 10-20% der CPU Auslastung. Deaktiviere ich noch einen Timer1 [Interval: 100] habe ich eine Auslastung von max 2% (habe 2 Timer drin').

Wie kann ich die Auslastung vermeiden bzw. womit kann ich die Timer ersetzen?

Hier die Procedure von dem Timer, der für die Visualization verantwortlich ist:

Delphi-Quellcode:
procedure TMain_Form.Timer2Timer(Sender: TObject);
var
  FFTFata : TFFTData;
begin
  if BASS_ChannelIsActive(aChannel) <> BASS_ACTIVE_PLAYING then Exit;

  BASS_ChannelGetData(aChannel, @FFTFata, BASS_DATA_FFT1024);
  Spectrum.Draw(vis_img.Canvas.Handle, FFTFata, 0, 0);
  vis_img.Repaint; // lasse ich das Weg, kriege ich nichts angezeigt :/
//^-- Den Befehl hab ich nirgendswo in den Demos gefunden.
end;
Ach ja, habe P4 3GHz HT (FSB: 800 MHz) und 1,5 GB RAM (FSB: 400 MHz)
Dieter
  Mit Zitat antworten Zitat