Einzelnen Beitrag anzeigen

schwa226

Registriert seit: 4. Apr 2008
400 Beiträge
 
#1

Datei Binär schreiben/updaten

  Alt 17. Jun 2011, 10:01
Hallo!

Ich komme irgendwie nicht drauf. Ich möchte Stückchenweise eine WAV Datei abspeichern.
Der Header bleibt ja fast gleich (bis halt auf SampleSize usw.). Nach dem Header kommen die Daten und da möchte ich halt immer neue Daten anhängen.

Somit bei jedem Datenblock muss der Header überschrieben werden und der neue Datenblock hinten angehängt werden. Ich möchte nicht jedesmal das ganze File in einen MemoryStream laden sondern nur den Header updaten und die neuen Daten anhängen.

Geht das irgendwie?

Den Header der Wav Datei habe ich im Internet gefunden:
Delphi-Quellcode:
type
  { WAV file header data }
  TWAVRecord = record
    { RIFF file header }
    RIFFHeader: array [0..3] of AnsiChar; { Must be "RIFF" }
    FileSize: Integer; { Must be "RealFileSize - 8" }
    WAVEHeader: array [0..3] of AnsiChar; { Must be "WAVE" }
    { Format information }
    FormatHeader: array [0..3] of AnsiChar; { Must be "fmt " }
    FormatSize: Integer; { Format size }
    FormatID: Word; { Format type code }
    ChannelNumber: Word; { Number of channels }
    SampleRate: Integer; { Sample rate (hz) }
    BytesPerSecond: Integer; { Bytes/second }
    BlockAlign: Word; { Block alignment }
    BitsPerSample: Word; { Bits/sample }
    DataHeader: array [0..3] of AnsiChar; { Can be "data" }
    SampleNumber: Integer; { Number of samples (optional) }
  end;
Delphi 2010, Update 4 & 5
  Mit Zitat antworten Zitat