Thema: Delphi WAV-Dateien verschmelzen

Einzelnen Beitrag anzeigen

Benutzerbild von LDericher
LDericher

Registriert seit: 29. Jan 2007
Ort: Erkelenz
224 Beiträge
 
Delphi 7 Enterprise
 
#13

Re: WAV-Dateien verschmelzen

  Alt 31. Mär 2009, 18:16
Jetzt hab ich elend lang an dieser procedure geschreibselt und finde den Fehler nicht...
Kann sich das mal jemand angucken?

Delphi-Quellcode:
procedure TVoiceSynth.Speak;
var
  Mixer : Cardinal;
  Sources,
  Lengths:array of Cardinal;
  ZwErg:TStringList;
  I:integer;
  function LengthSum(Index:integer):Cardinal;
  var
    I:integer;
  begin
  Result:=0;
  if(Index>0)
    then for I:=0 to Index
      do Result:=Result+Lengths[I];
  end;
begin
ZwErg:=TStringList.Create;
ZwErg.Text:=StringReplace(ProcessedString, ' ', #13#10, [rfReplaceAll]);
SetLength(Sources, ZwErg.Count);
SetLength(Lengths, ZwErg.Count);
for I:=0 to(ZwErg.Count-1)do
  begin
  Sources[I]:=BASS_StreamCreateFile(false, PChar(format('speakbase\%s.wav', [ZwErg[I]])), 0, 0, BASS_STREAM_DECODE);
  Lengths[I]:=BASS_ChannelGetLength(Sources[I], BASS_POS_BYTE);
  end;
Mixer:= BASS_Mixer_StreamCreate(44100, 2, 0);
for I:=0 to(ZwErg.Count-1)
  do BASS_Mixer_StreamAddChannelEx(mixer, Sources[I], 0, LengthSum(I-1), LengthSum(I));
BASS_ChannelPlay(Mixer, false);
end;
Frage noch mal geöffnet...
Gruß vom LDer
  Mit Zitat antworten Zitat