Video AVI (.avi)
Microsoft StandardAudio Video Interleave (AVI) è un contenitore multimediale fondamentale introdotto da Microsoft nel 1992 che interlaccia flussi audio e video per una riproduzione sincronizzata.
Ispeziona e metadati
I sistemi operativi e gli analizzatori di file identificano i file AVI ispezionando la sequenza di byte binari iniziale:
Firma dell'intestazione a livello di byte (Magic Bytes)
I sistemi operativi e gli analizzatori di file identificano i file AVI ispezionando la sequenza di byte binari iniziale:
FIRMA ESADECIMALE (OFFSET 0):
52 49 46 46 00 00 00 00 41 56 49 20RAPPRESENTAZIONE ASCII: RIFF....AVI
Standardizzazione: Microsoft RIFF Specification / OpenDML Extension
Specifiche tecniche
| Architettura del container | Contenitore di chunk interlacciati Resource Interchange File Format (RIFF) |
| Compressione | Flussi interlacciati che supportano DivX, Xvid, Motion JPEG, audio raw non compresso e MP3 |
| Endianness dei byte | Little-Endian (ordine dei byte Intel x86) |
| Spazi colore | YUV 4:2:0, RGB e colori a palette |
| Canali e struttura | Flussi audio stereo e multicanale |
| Dimensioni massime | Illimitate; l'estensione OpenDML AVI supporta flussi 4K e multi-gigabyte |
| Trasparenza | Supportata tramite flussi video non compressi RGBA |
| Streaming e progressivo | Chunk di indice posizionato alla fine del file; scarsamente adatto allo streaming web progressivo |
Matrice di confronto tecnico: AVI vs Concorrenti
| Attributo tecnico | AVI (Corrente) | MP4 | MKV | MOV |
|---|---|---|---|---|
| Idoneità allo Streaming | Scarsa; richiede il download dell'intero file prima dello spostamento | Eccellente (FastStart / HLS / DASH) | Buona (EBML segmentato) | Eccellente (FastStart) |
| Riproduzione Web HTML5 | Non supportata nativamente dai browser moderni | Universale al 100% su tutti i browser | Parziale (Edge / Chrome) | Supportata su dispositivi Safari / Apple |
| Incorporamento Sottotitoli | Dipendente da escamotage (richiede file .srt esterni) | Testo temporizzato nativo (tx3g / VTT) | Pieno supporto nativo per ASS/SSA/SRT | Sottotitoli nativi Apple QuickTime |
| Frequenza Fotogrammi Variabile | Frequenza dei fotogrammi strettamente costante (CFR) | Supporto VFR nativo | Supporto VFR nativo | Supporto VFR nativo |
Modalità di corruzione comuni e guida al recupero Hex
Il lettore multimediale riproduce il video ma non riesce a effettuare ricerche o avanzamento rapido, oppure segnala 'Indice corrotto'.
Causa principale: Il chunk dell'indice finale 'idx1' è stato troncato o eliminato durante un download interrotto.
Ripristino: Ricostruire l'indice usando DivFix++, VLC ('Costruisci indice poi riproduci') o 'ffmpeg -i broken.avi -c copy fixed.avi'.
Analisi di sicurezza e vettori di attacco del parser
I file AVI contengono gerarchie di chunk complesse e supportano innumerevoli codec video legacy oscuri, rendendo i decoder privi di sandbox vulnerabili agli exploit dei parser.
Vettori di attacco noti
- Buffer overflow dello heap nell'analisi del chunk 'strh' (intestazione del flusso) nei lettori multimediali Windows legacy.
- Overflow di interi durante l'allocazione dell'array di indici per intestazioni con conteggio di fotogrammi elevato e create in modo malevolo.
- Lettura fuori dai limiti nella decompressione Motion JPEG all'interno dei filtri DirectShow legacy.
Migliori pratiche difensive: Transcodificare i file AVI non attendibili in contenitori MP4 moderni inseriti in una sandbox prima dell'acquisizione.
Origini storiche e tappe fondamentali
Vantaggi principali e pro
- Supporto desktop legacy estremamente diffuso su software multimediali Windows ed editor video.
- Supporta fotogrammi raw non compressi per la digitalizzazione di filmati d'archivio e analisi video scientifiche.
- Semplice architettura di interlacciamento dei flussi con basso overhead del contenitore.
Limiti tecnici e svantaggi
- Manca di supporto nativo per le moderne funzioni dei contenitori video come frequenze fotogrammi variabili (VFR) e capitoli.
- Scarsamente adatto allo streaming web perché il chunk dell'indice principale ('idx1') è memorizzato alla fine del file.
- Nessun supporto nativo per la riproduzione video HTML5 senza la riesecuzione della codifica in MP4 o WebM.
Curiosità tecniche interessanti
- All'inizio degli anni 2000, i file AVI DivX e Xvid erano il formato principale utilizzato dalle reti di condivisione file peer-to-peer.
- La specifica AVI originale del 1992 non poteva superare i 2 GB a causa dei puntatori di offset dei file a 32 bit.
- Il chunk 'idx1' alla fine di un file AVI elenca l'offset in byte di ogni singolo fotogramma per lo spostamento (seeking).
Domande tecniche frequenti
Perché non riesco a riprodurre i video AVI direttamente nei browser web?
I browser moderni standardizzano su MP4 (H.264/AV1) e WebM (VP9/AV1) perché i formati dei loro contenitori sono ottimizzati per lo streaming progressivo. L'AVI manca di funzioni di streaming web native e non è supportato in HTML5 <video>.
Come posso riparare un file AVI che non si sposta o non scorre?
I file AVI si affidano a una tabella di indice alla fine del file. Se incompleta, i lettori non possono effettuare ricerche. La transcodifica o la re-indicizzazione del file con File2File Video Converter ripristina lo scorrimento completo della timeline.
Qual è la differenza tra AVI e MP4?
L'AVI è un contenitore legacy del 1992 progettato per la riproduzione desktop locale. L'MP4 è uno standard moderno del 2001 che supporta streaming web, capitoli, frequenze fotogrammi variabili, sottotitoli e una compressione superiore.