Also bei mir läuft es ohne Probleme, sogar bis zu 3 Mio. Durchläufen mit einer Puffergröße von 11 (Länge des Array 33000011, Speicherbedarf 36,3 MB, 1024 MB Hauptspeicher) . Allerdings habe ich den ersten Teil auskommentiert, da mit die aufgerufenen Funktionen (ByteToBitStr)nicht vorliegen. Vielleicht müllt dieser Teil etwas zu? Und warum übergibts Du Size als
var? Wird doch in der Funktion nicht geändert...
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
i : integer;
AudioScanner : TAudioScannerSimple;
Size : integer;
begin
AudioScanner := TAudioScannerSimple.Create;
Size := 11;
for i := 0 to 3000000 do
begin
AudioScanner.BufferFilled(pchar('ABCDEFGHIJK'), Size);
if i mod 10000 = 0 then
begin
Label1.Caption := inttostr(i)+'/'+inttostr(length(Audioscanner.Audiobuffer));
Application.ProcessMessages;
end;
end;
end;