Wideo AVI (.avi)
Microsoft StandardAudio Video Interleave (AVI) je mejnik med večpredstavnostnimi vsebniki, ki ga je Microsoft predstavil leta 1992 in prepleta zvočne ter video posnetke za sinhronizirano predvajanje.
Pregled in metapodatki
Operacijski sistemi in analizatorji datotek identificirajo datoteke AVI s pregledom vodilnega binarnega zaporedja bajtov:
Podpis glave na ravni bajtov (Čarobni bajti)
Operacijski sistemi in analizatorji datotek identificirajo datoteke AVI s pregledom vodilnega binarnega zaporedja bajtov:
PODPIS HEX (ZAMIK 0):
52 49 46 46 00 00 00 00 41 56 49 20REPREZENTACIJA ASCII: RIFF....AVI
Standardizacija: Microsoft RIFF Specification / OpenDML Extension
Tehnične specifikacije
| Arhitektura vsebnika | Resource Interchange File Format (RIFF) interleaved chunk container |
| Stiskanje | Interleaved streams supporting DivX, Xvid, Motion JPEG, raw uncompressed, and MP3 audio |
| Vrstni red bajtov | Little-Endian (Intel x86 byte order) |
| Barvni prostori | YUV 4:2:0, RGB, and palette colors |
| Kanali in struktura | Stereo and multichannel audio streams |
| Največje dimenzije | Unrestricted; OpenDML AVI extension supports 4K and multi-gigabyte streams |
| Prosojnost | Supported via RGBA uncompressed video streams |
| Pretočno in progresivno predvajanje | Index chunk placed at end of file; poorly suited for progressive web streaming |
Tehnična primerjalna matrika: AVI proti konkurenci
| Tehnični atribut | AVI (Trenutno) | MP4 | MKV | MOV |
|---|---|---|---|---|
| Primernost za pretakanje | Slaba; zahteva prenos celotne datoteke pred iskanjem | Odlična (FastStart / HLS / DASH) | Dobra (segmentiran EBML) | Odlična (FastStart) |
| Spletno predvajanje HTML5 | Sodobni brskalniki ga izvorno ne podpirajo | 100 % univerzalno v vseh brskalnikih | Delno (Edge / Chrome) | Podprto v napravah Safari / Apple |
| Vdelava podnapisov | Odvisno od trikov (zahteva zunanje datoteke .srt) | Izvorno časovno usklajeno besedilo (tx3g / VTT) | Polna izvorna podpora za ASS/SSA/SRT | Izvorni podnapisi Apple QuickTime |
| Spremenljiva hitrost sličic | Izrecno stalna hitrost sličic (CFR) | Izvorna podpora za VFR | Izvorna podpora za VFR | Izvorna podpora za VFR |
Pogosti načini okvar in vodič za heksadecimalno obnovo
Medijski predvajalnik lahko predvaja video, vendar ne more iskati ali hitro previjati naprej, ali pa javi napako 'Poškodovan indeks'.
Glavni vzrok: Končni indeksni kos 'idx1' je bil med prekinjenim prenosom okrnjen ali izbrisan.
Sanacija: Obnovite indeks z uporabo programov DivFix++, VLC ('Build index then play') ali ukazom 'ffmpeg -i broken.avi -c copy fixed.avi'.
Varnostna analiza in napadalni vektorji razčlenjevalnika
Datoteke AVI vsebujejo zapletene hierarhije kosov in podpirajo nešteto nejasnih starejših video kodekov, zaradi česar so dekodirniki brez varnostnega peskovnika dovzetni za izkoriščanje ranljivosti v razčlenjevalnikih.
Znani vektorji napada
- Prekoračitev pomnilnika (heap buffer overflow) pri razčlenjevanju kosa 'strh' (glava toka) v starejših predvajalnikih Windows.
- Prekoračitev celega števila med dodeljevanjem indeksnega polja za zlonamerno ustvarjene glave z velikim številom sličic.
- Branje zunaj meja pri dekompresiji Motion JPEG znotraj starejših filtrov DirectShow.
Obrambne najboljše prakse:
Zgodovinski izvor in mejniki
Ključne prednosti
- Izjemno široka podpora za starejše namizne sisteme v programski opremi Windows in urejevalnikih videa.
- Podpira nestisnjene surove okvirje za arhivsko skeniranje filmov in znanstveno analizo videa.
- Preprosta arhitektura prepletanja tokov z nizko režijsko porabo vsebnika.
Tehnične omejitve in slabosti
- Nima izvornih funkcij sodobnih video vsebnikov, kot so spremenljive hitrosti sličic (VFR) in poglavja.
- Slabo primerno za spletno pretakanje, ker je glavni indeksni kos ('idx1') shranjen na koncu datoteke.
- Brez ponovnega kodiranja v MP4 ali WebM ni izvornotne podpore za video v brskalnikih HTML5.
Zanimive tehnične malenkosti
- V zgodnjih 2000-ih so bile datoteke DivX in Xvid AVI primarni format, ki so ga uporabljala omrežja za deljenje datotek med enakovrednimi računalniki (P2P).
- Prvotna specifikacija AVI iz leta 1992 zaradi 32-bitnih kazalcev zamika datotek ni mogla preseči 2 GB.
- Kos 'idx1' na koncu datoteke AVI navaja bajtni zamik vsake posamezne sličice za iskanje.
Pogosta tehnična vprašanja
Zakaj ne morem predvajati videoposnetkov AVI neposredno v spletnih brskalnikih?
Sodobni brskalniki standardizirajo MP4 (H.264/AV1) in WebM (VP9/AV1), ker so njihovi formati vsebnikov optimizirani za postopno pretakanje. AVI nima funkcij za izvorno spletno pretakanje in ni podprt v oznaki HTML5 <video>.
Kako lahko popravim datoteko AVI, ki se ne želi premikati ali iskati?
Datoteke AVI se zanašajo na indeksno tabelo na koncu datoteke. Če je nepopolna, predvajalniki ne morejo iskati. Prekodiranje ali ponovno indeksiranje datoteke z video pretvornikom File2File obnovi celotno premikanje po časovni osi.
Kakšna je razlika med AVI in MP4?
AVI je starejši vsebnik iz leta 1992, zasnovan za lokalno predvajanje na namizju. MP4 je sodoben standard iz leta 2001, ki podpira spletno pretakanje, poglavja, spremenljive hitrosti sličic, podnapise in vrhunsko stiskanje.