Hallo allerseits!
Es "geht sich um folgendes" *G* :
Ich haber hier also zwei WAV Audio-Puffer, einer wird mit Daten von einer WAV-Datei befüllt, der andere
dient der Modifikation (in diesem Fall das hin- und herkopieren):
WavEnd := High(Wavbuffer) div 2;
Delphi-Quellcode:
begin
WavAdd := High(Wavbuffer);
setlength(TempWavbuffer, WavAdd+WavEnd);
// copy the whole main buffer into temp buffer
for i := Low(TempWavbuffer) to WavAdd do
begin
TempWavbuffer[i] := Wavbuffer[i];
end;
// append 50% of main buffer at end
for i := Low(TempWavbuffer) to WavEnd do
begin
TempWavbuffer[WavAdd+i] := Wavbuffer[WavEnd+i];
end;
end
Ich versuche also , 50% Prozent (Offset ebenfalls 50%) vom Wavbuffer am Ende des
Temp-Buffers anzufügen. Erst kopiere ich den Inhalt vom eigentlichen Wavbuffer komplett in den
TempWavBuffer. Zuvor habe ich die Größe so gesetzt das er den gesamten Wavbuffer + 50% von sich selbst extra
speichern kann.
Nur habe ich das dumpfe Gefühl das dies so noch nicht ganz richtig ist. Das kopieren SCHEINT zu
funktionieren, aber dazwischen gibts Knackser und Lücken, oder es crashed.
Nun bin ich mir auch nicht sicher, ob das nicht evtl.mit dem WAV-Header zusammenhängt, bei dem
ich anschließend die Größe der DataBytes verändert habe:
(Damits auch korrekt ausgelesen wird)
Header.DataBytes := Header.DataBytes + Header.DataBytes div 2;
Könnte es sein das ich hier irgendwie auf dem Holzweg bin?