File video del Computer
Fonte: http://mewiki.project357.com/wiki/Computer_movie_files
Un file video del computer, è un file che contiene audio e video. I file video sono composti da molti componenti, e questi componenti sono estremamente , il che significa che possono essere facilmente scambiati con altri componenti compatibili lasciando le altri parti del file intatte. Questa pagina vuole spiegare i differenti tipi di componenti accompagnando degli esempi semplici e chiarificatori.
NOTA: Questa pagina contiene dei giudizi soggettivi dell'autore basati sull'esperienza.
Il Contenitore
Il contenitore è la parte del file che tiene tutto insieme. Tu metti tutto insieme dentro il contenitore (Audio, Video, etc...), a livello logico è un po come immagazzinare file differenti in un archivio zip.
I contenitori sono usati per una serie di ragioni:
- Permettere ai player di avere una visione generale dei contenuti;
- Permettere l'aggiunta di funzioni addizionali al file, come:
- Indicizzazione dei segnali;
- Metadata (informazioni sei segnali contenuti);
- Possibilità di ripristinare un errore;
- Capitoli e altre forme di navigazione;
- Streaming
Diversi tipi di contenitore
AVI
Avi sta per: Audio Video Interleave. Questo è probabilmente il contenitore più usato, per il fatto che può essere riprodotto con quasi tutti i player e su ogni tipo di piattaforma/sistema operativo. E' stato creato dalla Microsoft nel 1992.
l'AVI è stesso descritto come la 'colonna portante' dei contenitori, questo perchè supporta le ultime funzioni ed è il più vecchio e comune contenitore. Alcuni ancora preferiscono questo contenitore rispetto agli altri, questa persona ha spiegato che l'AVI supporta molte delle funzioni che i nuovi contenitori hanno (come MKV e MP4), comunque questo supporto, nell'Avi, non è comune o addirittura scadente. Nonostante questo, se non necessiti delle ultime funzioni che i contenitori più avanzati hanno, AVI dovrebbe essere la tua scelta migliore.
Valutazione: Buono (se tutto quello che vuoi immagazzinare è un xvid+mp3, non c'è motivo per cui dovresti volere un contenitore migliore)
FLV
Flv sta per: Flash Video. E' il contenitore usato dal Flash per il segnale video. Sono in questo formato i video caricati in siti come youtube. Quasi sempre la traccia audio è codificata in MP3 e il video in h263/h263+ o VP6, può probabilmente contenere altri formati, ma non ci sono buoni motivi per farlo. Dato che questo non dovrebbe essere un formato in cui codificare i video (a meno chetu non voglia un video flash), non ci sono valutazioni su questo contenitore.
OGM
Ogm sta per: Ogg Media. Originariamente sviluppato da Tobias Waldvogel per essere usato con lo stupefacente nuovo codec audio (in quegli anni) con il tipico formato video MPEG-4 ASP. COnsiderato da molti un "hack" del contenitore Ogg per essere usto con determinati formati video. Il formato è stato estremamente popolare per un breve periodo dato che permetteva l'uso di capitoli, tracce audio multiple, e sottotitoli soft (softsubs). Lo sviluppatore originario ha lasciato lo sviluppo, che è stato continuato da Xiph Project. Tuttavia la loro posizione è ancora ambigua, e sembra che stiano ignorando il contenitore. Il contenitore perde parte della sua utilità data l'ascesa del contenitore Matroska (MKV), che eguaglia e in alcuni casi fa meglio rispetto all'Ogm ma con molto meno overhead.
Valutazione: Meno funzioni del Matroska, ma con più overhead. A meno che tu non abbia un particolare player che riproduce gli Ogm ma non Mkv o simili, pobabilmente non dovresti usare questo.
MKV
Mkv sta per: Matroska Video. Pobabilmente è il migliore contenitore per riproduzione, puoi fare quasi tutto con questo. Permette l'uso di tutti i formati video con facilità, usare qualsiasi formato audio o sottotitoli, e permette l'uso di funzioni avanzate come lencoding vfr', capitoli, e softsubs. Una comune idea sbagliata è che questo contenitore richieda maggiore uso di CPU per essere decodificato, rispetto all'Avi ad esempio. Questo è vero, ma l'uso in più di CPU è talmente minimo che sono praticamente identici. Il Matroska offre meno overhead dopo l'operazione di mux (unire audio e video), questo diminuisce la dimensione del file e permette di codificare con bitrate maggiori l'audio e il video.
L'homepage di questo contenuto è matroska.org, ma non contiene niente di interessante per principianti o utenti medi.
Valutazione: Uno dei migliori contenitori in circolazione.
MP4
MP4 sta per: MPEG-4 File Format. La prima versione di questo contenitore è stata finalizzata nel 1998 e standardizzato nel 1999. E' stato il primo file formato MP4 sviluppato da MPEG inizialmente destinato per i web video e hardware portatili (come i mobil phone). La versione 1 è stata superata dalla versione 2 subito dopo, alla fine del 1999 (standardizzata nel 2000) ed è totalmente retro compatibile dato che l'MP4 è stato esteso e costantemente sviluppato.
Oltre al supporto degli ultimi standard MPEG, è anche retro compatibile con vecchi formati. Nell'MP$ si può contenere:
- MPEG-1
- MPEG-2
- h263 (ed estensioni) (tramite .3gp che è una MPEG-4 V1 semplificata)
- MPEG-4 ASP e MPEG-4 AVC (H.264) video
Dal punto di vista dell'Audio puoi immagazzinare:
- SLS (scalable lossless extension to AAC)
- AMR (tramite .3gp)
- CELP & TwinVQ (per bassi bitrate/dialoghi)
- SAOL (MIDI)
- ALAC (formato Apple Lossless)
- ALS (formato lossless standardizzato MPEG4)
Ha anche un proprio formtato softsub, testo 3GP. Ultimo ma non per merito, Supporto immagini formato MP4 JPEG & PNG.
L'MP4 ha anche uno spazio dove immagazzinare informazioni sulla traccia, autore etc. Per uso privat odel segnale potresti anche unire (mux) Vorbis, AC3. Questo non è uno standard e non è detto che i player lo supportino. Se vuoi questo tipo di funzioni, è tempo di usare l'MKV. L'MP4 supporta anche i menù.
Alcune domande frequenti sull'MP4: doom9.
Valutazione: Supporta meno formati dell'MKV, ma supporta i più comuni, formati d'uso di massa, e standard ISO che assicurano l'interoperabilità. L'MP4 è supportato commercialmente nei player, ma stranamento il supporto in decoding è tutta un altra questione. Se vuoi una nativo MPEG-4 ASP o H.264 con MP3 o audio AAC, o vuoi effettuare un transmux in file .ts o .mpg, MP4 ti offre questo. Se vuoi qualcosa di più, usa MKV.
MOV
Mov sta per: Quicktime Movie Format. Questo formato è proprietà della Apple. Supporta molte delle cose che l'mp4 fa.
Valutazione: Non usarlo per nessun altra cose che per l'ipod.
La traccia video
Il segnale video contiene i dati per gli attuali fotogrammi che sono riprodotti ("file video" si riferisce sia all'audio che al video, ma "segnale video" si riferisce alla compnente immagini del "file video"). Fondamentalmente consiste in istruzioni su come visualizzare una sequenza di immagini.
Molti formati video hanno limitazioni riguardo a cosa può essere visualizzato. Molte codifiche video danno il meglio quando le dimensioni dei frame sono Mod16.
Encoder video
Una breve introduzione su come funziona un encoder video
- I video codec generalmente usano tre tipi di frame differenti: I, P e B-frame.
- I-frame: (I sta per intra, e significa dentra) sono i keyframe. Sono come dei jpg (anche se l'unica cosa simile è che sono immagini compresse) del particolare frame in questione, e sono fatti per suddividere il video in piccole aree, e come riferimento per altri frame. Questi frame non dipendono da altri frame per essere decodificati.
- P-frame: sono frame predetti (ecco perchè P frame). Questo vuol dire che sono composti da due parti, la prima è il contenuto originale, quindi come con gli I-frame, parte (non tutto) del frame è immagazzinata come nei jpg. Le altre parti sono da dove l'etichetta 'predetto' entra in gioco - sono prese da precedenti frame. Questa è la parte difficile. Immagina una parte in un frame, e immagina che si muova a sinistra. Bene le il primo frame era un I-frame, puoi creare il secondo come P-frame. Dunque potresti 'dire': "prendi le informazioni dal frame #01 e muovilo tutto di 4 pixel a sinistra. Dopo aggiungi questi nuovi dati a destra". Ora abbiamo un P-frame.
- B-frame: sono semplicemente un estensione logica dei P-frame, con B intendiamo Bi-direzionali. B-frame sono predetti sia dai frame passati che futuri, e possono mantenere il contenuto originale. Finché non prendi dimestichezza con queste cose prendile per vere.
Piccolo focus sulla Differenza tra Standard e Codec:
- Standard sono una serie di specifiche che servono in qualità di descrizioni su come un formato video (o simili) dovrebbe lavorare.
- Encoder (o codec) sono implementazioni di uno standard.
- Hai capito la differenza? Significa che quando uno standard, come MPEG-4 ASP è prodotto, un numero di gruppi differenti producono i loro encoder, come DivX e XviD. Si, stai leggendo bene. Una codifica DivX produrra un file che potrà essere riprodotto dalo stesso decoder che è richiesto per il XviD. La vita reale non è mai cosi bella, e differenti encoder useranno funzioni differenti dallo standard, e ne aggiungono altre di loro. Un esempio pratico:
- Quicktime h264 usa solo le funzioni base definite dall'MPEG-4 AVC. Un encoder come x264 le usa tutte. Questo significa che avrai tempi difficile se vuoi fare un file in QuickTime di qualità uguale ad un file x264.