AVI-video (.avi)
Microsoft StandardAudio Video Interleave (AVI) är en banbrytande multimediabehållare som Microsoft introducerade 1992. Den sammanflätar ljud- och videoströmmar för synkroniserad uppspelning.
Granska och metadata
Operativsystem och filanalysverktyg identifierar AVI-filer genom att granska den inledande sekvensen av binära byte:
Signatur i filhuvudet på bytenivå (magiska byte)
Operativsystem och filanalysverktyg identifierar AVI-filer genom att granska den inledande sekvensen av binära byte:
HEX-SIGNATUR (OFFSET 0):
52 49 46 46 ?? ?? ?? ?? 41 56 49 20ASCII-REPRESENTATION: RIFF????AVI
Standardisering: Microsoft RIFF Specification / OpenDML Extension
Tekniska specifikationer
| Containerarkitektur | RIFF-behållare (Resource Interchange File Format) med sammanflätade block |
| Komprimering | Sammanflätade strömmar med stöd för DivX, Xvid, Motion JPEG, okomprimerad råvideo och MP3-ljud |
| Byteordning | Little-endian (Intel x86-byteordning) |
| Färgrymder | YUV 4:2:0, RGB och palettfärger |
| Kanaler och struktur | Stereo- och flerkanaliga ljudströmmar |
| Maximala dimensioner | Obegränsat; OpenDML AVI-tillägget stöder 4K och strömmar på flera gigabyte |
| Transparens | Stöds via okomprimerade RGBA-videoströmmar |
| Strömning och progressiv visning | Indexblocket ligger i slutet av filen, vilket gör formatet dåligt lämpat för progressiv webbströmning. |
Teknisk jämförelsematris: AVI jämfört med konkurrenter
| Tekniskt attribut | AVI (Aktuell) | MP4 | MKV | MOV |
|---|---|---|---|---|
| Lämplighet för strömning | Dålig; hela filen måste laddas ner innan du kan söka i den | Utmärkt (FastStart / HLS / DASH) | Bra (Segmenterad EBML) | Utmärkt (FastStart) |
| HTML5-webbuppspelning | Stöds inte inbyggt av moderna webbläsare | Stöds i många aktuella webbläsare; tillgängligheten varierar mellan versioner och plattformar | Delvis (Edge / Chrome) | Stöds på Safari / Apple-enheter |
| Inbäddning av undertexter | Kräver speciallösning (externa .srt-filer) | Inbyggd tidsatt text (tx3g / VTT) | Fullt inbyggt stöd för ASS/SSA/SRT | Inbyggda Apple QuickTime-undertexter |
| Variabel bildfrekvens | Helt konstant bildfrekvens (CFR) | Inbyggt VFR-stöd | Inbyggt VFR-stöd | Inbyggt VFR-stöd |
Vanliga skadeorsaker och hex-återställningsguide
Mediaspelaren kan spela upp videon men inte söka eller snabbspola framåt, eller så visas felmeddelandet ”Corrupt index”.
Grundorsak: Det avslutande 'idx1'-indexblocket kapades eller raderades när nedladdningen avbröts.
Återställning: Återskapa indexet med DivFix++, VLC (”Bygg index och spela upp”) eller ”ffmpeg -i broken.avi -c copy fixed.avi”.
Säkerhetsanalys och attackvektorer för tolkar
AVI-filer har komplexa blockhierarkier och stöder mängder av ovanliga äldre videokodekar. Avkodare som inte körs i en sandlåda kan därför vara sårbara för parserattacker.
Kända attackvektorer
- Heap-buffertspill när äldre Windows-mediaspelare tolkar blocket 'strh' (strömhuvud).
- Heltalsspill vid allokering av indexmatris för manipulerade huvud med ett stort antal bildrutor.
- Läsning utanför tilldelat minne vid Motion JPEG-dekomprimering i äldre DirectShow-filter.
Rekommenderade skyddsåtgärder: Koda om opålitliga AVI-filer till moderna MP4-behållare i en sandlåda innan de importeras.
Historiskt ursprung och milstolpar
Viktiga fördelar
- Mycket brett stöd i äldre Windows-mediaspelare och videoredigeringsprogram.
- Stöder okomprimerade råbildrutor för arkivering av filmskanningar och vetenskaplig videoanalys.
- Enkel arkitektur som sammanflätar strömmar med liten overhead för behållaren.
Tekniska begränsningar
- Saknar inbyggt stöd för moderna funktioner i videobehållare, som variabel bildfrekvens (VFR) och kapitel.
- Dåligt lämpat för webbströmning eftersom huvudindexblocket ('idx1') lagras i slutet av filen.
- Saknar inbyggt stöd för uppspelning av HTML5-video i webbläsare, så filen måste kodas om till MP4 eller WebM.
Intressant teknisk kuriosa
- I början av 2000-talet använde fildelningsnätverk mellan användare (P2P) främst AVI-filer med DivX- och Xvid-kodning.
- Den ursprungliga AVI-specifikationen från 1992 kunde inte överstiga 2 GB på grund av 32-bitars filförskjutningspekare.
- 'idx1'-blocket i slutet av en AVI-fil anger bytepositionen för varje enskild bildruta, så att spelaren kan söka i filen.
Vanliga tekniska frågor
Varför kan jag inte spela upp AVI-videor direkt i webbläsare?
Moderna webbläsare använder standardformaten MP4 (H.264/AV1) och WebM (VP9/AV1), vars behållare är optimerade för progressiv strömning. AVI saknar inbyggda funktioner för webbströmning och stöds inte i HTML5 <video>.
Hur kan jag laga en AVI-fil som inte går att spola i?
AVI-filer använder en indextabell i slutet av filen. Om tabellen är ofullständig kan spelare inte söka i filen. Om du kodar om eller återskapar indexet med File2File.app Video Converter kan du åter söka längs hela tidslinjen.
Vad är skillnaden mellan AVI och MP4?
AVI är en äldre behållare från 1992, utformad för uppspelning lokalt på datorer. MP4 är en modern standard från 2001 med stöd för webbströmning, kapitel, variabel bildfrekvens, undertexter och effektivare komprimering.