Zum Inhalt springen

RIFF WAVE

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 24. September 2003 um 11:24 Uhr durch Belz (Diskussion | Beiträge) (rechtschreibung: fehlende Bindeestriche). Sie kann sich erheblich von der aktuellen Version unterscheiden.


Das WAV-Format ist ein Dateiformat für digitale Audiodateien. Anders als MP3 und andere Dateiformate mit Datenkompression werden die Audiodaten im Wave-Format als Rohdaten gespeichert, d. h. in der Regel nicht komprimiert. Es gibt aber auch die Möglichkeit komprimierte Daten unter dem Format zu speichern.

Das WAV-Format (eigentlich RIFF WAVE) hält sich an das von Microsoft für das Betriebssystem Windows definierte "Resource Interchange Format" (RIFF).

Eine Wav Datei enthält drei Datenblöcke, so genannte Chunks, mit Daten:

  • Der RIFF-Chunk identifiziert die Datei als WAV-Datei.
  • Der FORMAT-Chunk hat einige Parameter wie z. B. die Sample-Rate gespeichert.
  • Der DATA-Chunk enthält die tatsächlichen Audiodaten.

Was ist eine Audio-Datei?

Audio-Dateien enthalten die digitalisierte Form eines Klangs, also eine diskrete Darstellung des zeitlichen Verlaufs einer Schwingung.

Es wird zu bestimmten Zeitpunkten die Amplitude einer Schwingung festgehalten.

Die Qualität des aufgezeichneten Klangs hängt vor allem von zwei Werten ab:

  • Der Sample-Rate (Wie oft wird der Klang abgetastet?)
  • Der Anzahl der Bits pro Sample (das ist der Wertebereich, den die Amplitude annehmen kann)


Beispiel eines allgmein lesbaren WAVE-Dateiformates

Es beginnt mit dem RIFF-Header:

  • Offset Länge Inhalt
  • 0 4 bytes 'RIFF'
  • 4 4 bytes <file length - 8>
  • 8 4 bytes 'WAVE'


Der fmt-chunk beschreibt das Sample-Format:

  • 12 4 bytes 'fmt '
  • 16 4 bytes 0x00000010 // Länge der fmt-Daten (16 Bytes)
  • 20 2 bytes 0x0001 // Format-Tag: 1 = PCM
  • 22 2 bytes <channels> // Kanäle: 1 = mono, 2 = stereo
  • 24 4 bytes <sample rate> // Abtastrate pro Sekunde: z.B., 44100
  • 28 4 bytes <bytes/second> // Sample-Rate * Block-Align
  • 32 2 bytes <block align> // Kanäle * Bits/Sample / 8
  • 34 2 bytes <bits/sample> // 8 oder 16

Der Daten-Chunk enthält die Sample-Daten:

  • 36 4 bytes 'data'
  • 40 4 bytes <Länge des Datenblocks>
  • 44 bytes <sample data>

Literatur

Born, Gunter: File Formats Handbook. 1995, ITP Boston

]