Forum
Grundkurs
»Introduktion
»Snabbguide
»Komponenter
»Händelser
»Strängar
»Räkna med Delphi »Egna
typer
»Selektion
»Iteration
»Menyer
»Funktioner
»Arraystrukturer
Tips & Tricks
»Nya tips
»Blandat
»Databaser
»Filer
»Forms
»Grafik
»Internet
»Komponenter
»Matematik
»Multimedia
»Objekt/ActiveX
»Skrivare
»Strängar
»System
»Mest lästa tips
Artiklar
»Delphi och ADO
»Bygga en DLL
»Skapa en enkel rapport
»Hantera registret
»Enheter, units
»Klassen TCanvas
»Använd LookUp Controls
Nya
tips
Lägg
till tips
Delphilänkar
Gästbok
|
|
|
|
Kombinera flera wav-filer till en
|
Kategori: Multimedia
Inlagt: 2004-04-29
Läst: 1313
Inlagt av: Staffan Berg
|
Beskrivning |
Detta exempel slår ihop flera ljudfiler av typen .wav till en enda.
|
Kod |
procedure JoinWaves(FileList: TStrings; OutputFile: String); {All files must be of the same format} var I: Integer; FileSize: LongInt; InStream, OutStream: TFileStream; begin OutStream := TFileStream.Create(OutputFile, fmCreate); try for I := 0 to FileList.Count - 1 do if FileExists(FileList[I]) then begin InStream := TFileStream.Create(FileList[I], fmOpenRead); try if I = 0 then OutStream.CopyFrom(InStream, InStream.Size) else if InStream.Size > 44 then begin InStream.Position := 44; OutStream.CopyFrom(InStream, InStream.Size - 44); end; finally InStream.Free; end; end; OutStream.Position := 4; FileSize := OutStream.Size - 8; OutStream.WriteBuffer(FileSize, SizeOf(FileSize)); OutStream.Position := 40; FileSize := OutStream.Size - 44; OutStream.WriteBuffer(FileSize, SizeOf(FileSize)); finally OutStream.Free; end; end;
|
|
|