# Audio Video Interleave

Audio Video Interleave (AVI) is een multimediacontainer (videobestand) geïntroduceerd door Microsoft in november 1992 als deel van de Video for Windows-technologie. AVI-bestanden bevatten zowel audio- als videodata in een standaardcontainer, die het gelijktijdige afspelen van beide toelaat. Net als dvd's ondersteunen AVI-bestanden meerdere audio- en videostromen, bijvoorbeeld voor verschillende gesproken talen, maar deze mogelijkheden worden bijna nooit benut. De meeste AVI-bestanden gebruiken een bestandsformaat dat in februari 1996 ontwikkeld werd door de Matrox OpenDML-groep. Deze bestanden worden door Microsoft ondersteund en staan onofficieel bekend onder de naam "AVI 2.0".

## Werking

Het is een speciaal soort techniek, genaamd Resource Interchange File Format oftewel (RIFF), die de data van het bestand verdeelt in blokjes of chunks. Elke chunk wordt geïdentificeerd door een FourCC-tag. Een AVI-bestand is een enkele chunk in een RIFF-geformatteerd bestand, die wanneer men het opent onderverdeeld wordt in twee "hoofdchunks" en een optionele chunk. De hele structuur van een RIFF-bestand is eigenlijk afgekeken van een ouder IFF-formaat, ontwikkeld door Electronic Arts in de jaren tachtig, met als enige verschil de endianness van de integers en het initiële gebruik van FourCC.
De eerste "sub-chunk" wordt geïdentificeerd door een "hdrl"-tag. Deze chunk bevat informatie over de video, zoals de breedte, hoogte en de hoeveelheid frames. De tweede sub-chunk wordt geïdentificeerd door een "movi"-tag. Deze chunk bevat de eigenlijke audio- en visuele data. De derde, optionele, sub-chunk wordt geïdentificeerd door een "idx1"-tag en bevat de index van de locatie van de datachunks in het bestand.
Door middel van het RIFF-formaat kunnen de audio- en visuele data in de "movi"-chunk gecodeerd en gedecodeerd worden door een software-module, de codec. De codec vertaalt de ruwe data naar het dataformaat in de chunk. Een AVI-bestand kan daarom audio- en visuele data in zijn chunks hebben in bijna elk compressieformaat, waaronder Full Frames (ongecomprimeerd), Inter Real Time Video, Indeo, Cinepak, Motion JPEG, Editable MPEG, VDOWave, Clearvideo/RealVideo, QPEG, MPEG-4 en andere.

## Veelgebruikte codecs

* DivX
* XviD
* Cinepak
* Indeo

## Toepassingen
### Players

Het afspelen van AVI-bestanden kan met de meeste bekende spelers: VLC media player (open bron), Quicktime player (Apple), RealPlayer (Real Networks), Windows Media Player (Microsoft). DivXNetworks heeft ook zijn eigen speler ontwikkeld om DivX-films af te spelen. In het begin was het zo dat sommige films niet af te spelen waren in de voornaamste spelers. Men was dan verplicht om de film te bekijken met de DivX-speler van DivXNetworks. Dat probleem werd al snel uit de wereld geholpen, omdat de grote bedrijven inzagen wat het belang van DivX-compressie is.

### Streaming

De AVI-indeling op zich is niet geschikt om te streamen. Microsoft heeft in de tijd dat de AVI-indeling ontwikkeld werd een alternatief bedacht om streaming video te kunnen aanbieden. Deze laatste indeling zag het levenslicht onder de naam ASF. Eerst stond de afkorting voor Advanced Streaming Format, wat later door Microsoft werd veranderd in Advanced Systems Format. Eigenlijk kan ASF elke codec bevatten, want de bestandsindeling beschrijft enkel hoe de gegevens gestructureerd zullen worden doorgestuurd. Men kan zo AVI-bestanden omzetten naar een streaming videobestand met de extensie ASF.
Een tweede manier om streaming video aan te bieden voor Windows' mediaspeler is het gebruik van ASX-tags.