Resource Interchange File Format

Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 10. Mai 2005 um 14:13 Uhr durch Don.haraldo (Diskussion | Beiträge) (Kategorie). Sie kann sich erheblich von der aktuellen Version unterscheiden.

RIFF (Resource Interchange File Format) ist ein Containerformat zur Speicherung von Multimedia-Daten, das 1991 von Microsoft und IBM entwickelt und mit den Multimediaerweiterungen für Windows 3.1 eingeführt wurde. RIFF-Dateien können beliebige Multimedia-Ressourcen in einer Datei abspeichern (z.B. Bitmaps, Audio- und Videodaten oder RTF-Texte).

Die einfachste Form z.B. einer AVI Datei wäre ein einziger Videostream, meistens werden aber dazu noch Audio-Informationen gespeichert. Allgemein ist es möglich, auch spezielle Multimedia-Sequenzen wie etwa einen MIDI-Track als zusätzlichen Datenstream in einer AVI-Datei aufzunehmen. Um Audioinformationen in Stereoton zu sichern, benötigt man dazu nur einen Stream, genauso als würde nur Mono gespeichert werden. Weiterhin sind Control-Tracks möglich, etwa um externe Geräte zu steuern.

Aufbau am Beispiel “Wave

Der RIFF-Chunk (auch RIFF-Header) identifiziert die Datei als WAV-Datei.

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

Der FORMAT-Chunk hat einige Parameter wie z. B. die Sample-Rate gespeichert.

  • 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 DATA-Chunk enthält die tatsächlichen Audiodaten

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

Wave Videodaten