AVI (Abk. für Audio Video Interleaved) ist ein von Microsoft definiertes Containerformat für Videos, das von dem für Windows 3.1 eingeführten RIFF (Resource Interchange File Format) abgeleitet ist. In einer AVI-Datei können mehrere Video-, Audio-, MIDI- und Textdatenströme vorhanden sein. Diese können mit verschiedenen Verfahren kodiert sein (daher auch Containerformat). Der Typ des jeweiligen Streams wird über so genannte FourCCs (Four Character Code) gespeichert. Zum Kodieren oder Dekodieren wird für jeden Stream ein entsprechender Codec benötigt.
Das AVI-Format ist weit verbreitet und wird von den meisten Multimedia-Programmen unterstützt.
Die meisten AVI-Dateien nutzen die Erweiterungen, welche von der Matrox OpenDML-Gruppe im Februar 1996 vorgestellt wurden. Diese Dateien werden von Microsoft in begrenztem Umfang unterstützt und sind inoffiziell als AVI 2.0 bekannt.
Nachteile von AVI:
- nicht für jedes Audio-Format geeignet (z.B. musste ffmpeg eine Verbiegung der Spezifikation einführen, um Ogg Vorbis-Audio in AVI-Dateien zuzulassen)
- schlechte Unterstützung für Untertitel (Untertitel als Bilder, wie auf DVDs, sind bisher nicht möglich)
- keine Unterstützung von Menüs oder Kapiteln
Diese Nachteile führten zur Entwicklung anderer Containerformate wie Matroska, Ogg Media oder auch dem DivX Containerformat.
Aufbau
Eine AVI 1.0-Datei besteht aus einer RIFF-Datei mit einer einzelnen AVI-List, eine AVI 2.0-Datei enthält weitere AVIX-Lists. Jede AVI- und AVIX-Liste ist nicht größer als 4 GB. Die AVI-LIST enthält eine LIST mit den Headern, ein LIST mit den eigentlichen Daten und einen optionalen Chunk für Index-Einträge.
Da das AVI Format auf der x86-Architektur seinen Ursprung nahm, sind die darin enthaltenen Zahlen im Little Endian-Format gehalten.