|
La
compressione MPEG Sin dall'inizio si è capito che per ottenere immagini
di qualità bisognava in qualche modo comprimere i dati poichè
per registrare 133 minuti con lo standard PAL sarebbero stati
necessari 253Gb di spazio, un pò troppi anche per il DVD. Per questo motivo si è ricorso all'MPEG2, discendente diretto
dell'MPEG1 del VideoCD. Questo tipo di compressione si basa sul fatto che nell'evoluzione
di una scena i vari quadri che la compongono mutano molto poco e
che ogni fotogramma ha molte parti in comune con il precedente.
In parole molto povere possiamo dire che vengono registrate solo
le differenze rispetto al fotogramma precedente. Con questo sistema non si potrà mai sapere quanto si potrà
comprimere poichè possono esserci scene statiche, in cui le
variazioni sono minime (massima compressione) e sequenze molto
dinamiche in cui le variazioni sono tante ed al limite anche
tutti i pixel possono cambiare: non si potrebbe mai sapere quanto
spazio è necessario. Si è deciso allora di deteminare un flusso
massimo di bit per ogni secondo che per il DVD è di 10Mb/sec.
(audio e video) e quello medio di 3,5 Mb/sec. (solo video). Considerado il valore medio di 3.5Mb/sec., i 133min. del video
occupano 3,5Gb di dati (3,5Mb/sec.x133min.x60sec.x1/8 byte/bit),
i restanti 1,2Gb di spazio possono essere usati per l'audio
multicanale del video in almeno 3 lingue e per 32 sottotitoli in
lingue differenti contemporaneamente. Teoricamente quindi con questa compressione
"intelligente" si avrà nell'immagine una parte poco
significativa che avrà risoluzione anche inferiore alle 190
linee (ma a cui noi non faremo caso) in contemporanea ad una
altra parte dell'immagine con una definizione di oltre 500 linee,
il tutto in movimento senza che il nostro occhio si soffermi sui
particolari sorvolando quindi sulle magagne del sistema di
compressione; comunque più alto rimane il flusso e meno la
qualità finale ne risente tanto che per i films è stato
previsto anche il DVD a doppio strato più capiente.
MPEG-2 è uno standard introdotto nel 1994 da MPEG (Moving Pictures
Experts Group). MPEG-2 è un sistema di codifica digitale, definisce la codifica
di sorgente audio, video, e il formato di multiplazione e trasporto per servizi
multimediali diffusivi a qualità televisiva o superiore.
MPEG-2 è stato destinato al broadcast televisivo, fin dalla sua introduzione nel
1994. Una efficiente codifica per il video interlacciato e la scalabilità sono
state le caratteristiche che hanno permesso di digitalizzare efficacemente i
segnali televisivi. Grazie all'MPEG-2 si ottengono immagini televisive di buona
qualità con bitrate compresi tra 4 e 9 Mbit/s
MPEG-2 è costituito da "profili" e "livelli". I profili definiscono la modalità
di compressione utilizzata e stabiliscono di fatto il compromesso tra tasso di
compressione e costo del decodificatore. I livelli definiscono la risoluzione di
immagine ed il bitrate massimo da associare ad ogni profilo. Ci sono
complessivamente 4 livelli e 5 profili le cui caratteristiche sono descritte in
seguito. La combinazione attualmente utilizzata dalle trasmissioni digitali per
ricezione diretta impiega il cosiddetto "main level @ main profile" MP@ML.
Standard MPEG-2 Video
Lo standard MPEG-2 utilizza tecniche di compressione basate sulla riduzione
della ridondanza spaziale e temporale della sequenza video. La ridondanza
spaziale è ridotta tramite tecniche a trasformata (DCT, Discrete Cosine
Transform), quella temporale è ridotta tramite motocompensazione: tale
metodologia prende il nome di tecnica ibrida a trasformata.
Lo standard definisce tre tipi di quadri:
- Immagini codificate senza riferimento ad altre immagini (quadri Intra): sono
dei punti di accesso alla sequenza codificata,in corrispondenza dei quali può
iniziare la decodifica; sono caratterizzate da un modesto rapporto di
compressione.
- Immagini codificate mediante motocompensazione del movimento da immagini
precedenti (quadri P): usate come riferimento ad altre predizioni.
- Immagini codificate mediante motocompensazione bidirezionale (quadri B):
offrono il maggior livello di compressione, non sono usate come riferimento per
altre predizioni.
La codifica opera suddividendo l'immagine in blocchi 16x16, detti macroblocchi.
Tutti i macroblocchi di un quadro I sono codificati senza predizione. Ciascun
macroblocco di un quadro P può essere predetto a partire da un quadro I o P
precedente (macroblocco P), oppure può essere codificato senza predizione
(macroblocco di tipo I). Ciascun macroblocco di un quadro B può essere predetto
bidirezionalmente rispetto al quadro I o P precedente e al quadro I o P
successivo (macroblocco B), ovvero predetto rispetto al quadro I o P precedente
(macroblocco P), oppure codificato senza predizione (macroblocco I).
Per macroblocchi I, si codifica il macroblocco mediante applicazione DCT e
quantizzazione ai blocchi 8x8 componenti. Per macroblocchi P, si effettua la
motocompensazione del macroblocco 16x16; la differenza tra la predizione e il
blocco attuale, detta residuo di motocompensazione, è codificata mediante DCT e
quantizzata su blocchi 8x8 pixel. Per macroblocchi B, si effettua la
motocompensazione del macroblocco 16x16 rispetto al quadro di riferimento
precedente e al quadro di riferimento successivo; la predizione è operata
mediando i due blocchi 16x16 così ottenuti; la differenza fra il macroblocco
attuale e la predizione, detto residuo di motocompensazione è codificata
mediante DCT e quantizzata su blocchi 8x8 pixel.
Il modo di codifica di ciascun macroblocco dei quadri P o B è scelto in modo da
minimizzare il numero di bit richiesti per descriverlo. Poiché i vettori di moto
di macroblocchi adiacenti sono correlati, sono codificati in modo differenziale
rispetto al vettore di moto del precedente macroblocco adiacente. La
quantizzazione comporta una perdita irreversibile di informazione ed'è adattata
alle caratteristiche dell'apparato visivo umano, mediante la scelta di opportune
matrici di quantizzazione. Le matrici di quantizzazione possono variare da un
immaginead un'altra e sono trasmesse all'inizio di ogni immagine; inoltre la
matrice di quantizzazione può essere scalata da macroblocco a macroblocco
mediante un fattore di scala (quantizer_scale), al fine di adattare la
precisione della codifica dell'immagine al suo contenuto. Il quantizer_scale può
essere maggiore,minore o uguale a 1, e codificato con un valore a 5 bit,con
scala lineare o non.
I quadri della sequenza sono raggruppati in Group of Picture (GOP), il cui primo
quadro è di tipo I. Tale organizzazione dei dati codificati consente la
sincronizzazione del decoder con un ritardo al più pari alla durata del Gop.
Controllo di flusso nella codifica MPEG-2
L'efficienza di compressione varia in funzione delle caratteristiche locali del
segnale video, allora il bit stream all'uscita del codificatore video è a bit
rate variabile. Il canale ha invece tipicamente capacità costante, allora si usa
un buffer tra canale e codificatore. Lo stato di riempimento del buffer è
utilizzato per controllare il processo di codifica (quantizzazione,inserimento
dei quadri predetti), al fine di evitare fenomeni di buffer overflow o di buffer
underflow.
In un sistema MPEG-2 codificatore e decodificatore possiedono un buffer di
comportamento simmetrico. Il buffer del codificatore è riempito a burst quando
le immagini vengono codificate, e svuotato a velocità costante durante la
trasmissione. Il buffer del decodificatore è riempito a velocità costante quando
i dati vengono ricevuti e svuotato a burst durante il playout. Lo standard
MPEG-2 definisce un modello ideale di decodificatore (Video Buffering Verifier,
VBV), da utilizzarsi per limitare il bit rate istantaneo del codificatore, in
modo che il bit rate medio sia tale da non far incorrere nell'overflow o
nell'underflow del buffer del decoder. Il VBV è identificato a parametri del bit
rate (misurato in unità di 400 bit/s), picture-rate, vbv_buffer_size (misurato
in unità di 2048 Byte), vbv_delay (che definisce il tempo che intercorre tra la
ricezione del primo bit di dati della prima immagine nel buffer e la decodifica
dei dati stessi, misurato rispetto ad un clock a 90 KHz).
Livelli e profili dell'MPEG-2
Descriviamo sinteticamente le caratteristiche dei livelli e dei profili
dell'MPEG-2 che rappresentano la forza del sistema in quanto a flessibilità e
adattabilità a varie applicazioni. È sorprendente come MPEG-2 riesca a spaziare
tra la più bassa risoluzione di immagine SIF fino all'alta definizione HDTV
semplicemente variando le associazioni tra livelli e profili. I livelli previsti
sono:
low (basso), corrisponde alla risoluzione più bassa come la SIF utilizzata
nell'MPEG-1;
main (principale), corrisponde alla struttura 4:2:0 fino ad una risoluzione di
720 x 576 pixel;
high-1440 (alto-1440), dedicato alla tv ad alta definizione HDTV;
high (alto), ottimizzato per il formato di schermo 16/9 in alta definizione.
La descrizione dei profili è invece un po' meno semplice di quella dei livelli
in quanto implica la conoscenza delle metodologie di base con cui opera il
sistema MPEG; questa è una sintesi riferita agli effetti dell'applicazione dei
vari profili.
Il profilo "simple" permette di semplificare notevolmente sia il codificatore di
stazione che il decodificatore di utente in quanto non utilizza la predizione di
tipo B.
Il profilo "main" è quello che offre il miglior compromesso tra qualità e tasso
di compressione, impiega le immagini relative alle predizioni I, P, B a
svantaggio dei dispositivi di codifica e decodifica che sono più complessi.
Il profilo "scalable" è destinato ad applicazioni particolari dove sia
necessario ad esempio mantenere la compatibilità tra alta definizione e
definizione standard oppure, riuscire ad ottenere una qualità accettabile in
condizioni di ricezione difficile come potrebbe accadere ad esempio nella
televisione digitale terrestre.
Il profilo più elevato "high" è destinato all'alta definizione con le strutture
4:2:0 e 4:2:2.
I profili mantengono una certa compatibilità verso l'alto nel senso che, nella
fase di ricezione, i profili più alti possono decodificare i profili inferiori.
MPEG-4, presentato nel 1998, è il nome dato a un insieme di standard per
la codifica dell'audio e del video digitale sviluppati dall'ISO/IEC Moving
Picture Experts Group (MPEG). L'MPEG-4 è uno standard utilizzato principalmente
per applicazioni come la videotelefonia e la televisione digitale, per la
trasmissione di filmati via Web, e per la memorizzazione su supporti CD-ROM.
MPEG-4 supporta tutte le caratteristiche degli standard MPEG-1 e MPEG-2 oltre a
tutta una serie di nuove caratteristiche come la gestione tridimensionale degli
oggetti (tramite un estensione del VRML). I flussi audio e video vengono
trattati dallo standard MPEG-4 come oggetti che possono essere manipolati e
modificati in tempo reale. Lo standard supporta caratteristiche specificate da
terze parti come una particolare gestione dei DRM o una gestione interattiva dei
contenuti.
La maggior parte delle caratteristiche dell'MPEG-4 sono opzionali e quindi la
loro implementazione è lasciata alla discrezione dello sviluppatore. Questo
implica che la maggior parte dei lettori di file MPEG-4 non saranno in grado di
gestire tutte le caratteristiche del formato. Per permettere un'elevata
interoperabilità, nel formato sono stati inclusi i concetti di profilo e di
livello, quindi i vari lettori MPEG-4 potranno essere suddivisi a seconda dei
profili e livelli supportati.
Componenti MPEG-4
MPEG-4 è suddiviso in vari sotto standard chiamati Part (parti):
Part 1 (ISO/IEC 14496-1): Systems: Describes synchronization and multiplexing of
video and audio.
Part 2 (ISO/IEC 14496-2): Visual: A compression codec for visual data (video,
still textures, synthetic images, etc.). One of the many "profiles" in Part 2 is
the Advanced Simple Profile
Part 3 (ISO/IEC 14496-3): Audio: A set of compression codecs for perceptual
coding of audio signals.
Part 4 (ISO/IEC 14496-4): Conformance: Describes procedures for testing
conformance to other parts of the standard.
Part 5 (ISO/IEC 14496-5): Reference Software: Provides software for
demonstrating and clarifying the other parts of the standard.
Part 6 (ISO/IEC 14496-6): Delivery Multimedia Integration Framework (DMIF).
Part 7 (ISO/IEC 14496-7): Optimized Reference Software: Provides examples of how
to make improved implementations (e.g., in relation to Part 5).
Part 8 (ISO/IEC 14496-8): Carriage on IP networks: Specifies a method to carry
MPEG-4 content on IP networks.
Part 9 (ISO/IEC 14496-9): Reference Hardware: Provides hardware designs for
demonstrating how to implement the other parts of the standard.
Part 10 (ISO/IEC 14496-10): A codec for video signals which is also called AVC
(Advanced Video Coding) and is technically identical to the ITU-T H.264
standard.
Part 12 (ISO/IEC 14496-12): ISO Base Media File Format: A file format for
storing media content.
Part 13 (ISO/IEC 14496-13): Intellectual Property Management and Protection
(IPMP) Extensions
Part 14 (ISO/IEC 14496-14): MP4 File Format: The designated container file
format for MPEG-4 content MP4, which is based on Part 12.
Part 15 (ISO/IEC 14496-15): AVC File Format: For storage of Part 10 video based
on Part 12.
Part 16 (ISO/IEC 14496-16): Animation Framework eXtension (AFX)
Part 17 (ISO/IEC 14496-17): Timed Text subtitle format (not yet finished -
reached "FCD" stage in January 2005)
Part 18 (ISO/IEC 14496-18): Font Compression and Streaming (for OpenType fonts)
Part 19 (ISO/IEC 14496-19): Synthesized Texture Stream
Part 20 (ISO/IEC 14496-20): Lightweight Scene Representation (LASeR) .
Part 21 (ISO/IEC 14496-21): MPEG-J Extension for Rendering (not yet finished -
reached "CD" stage in January 2005)
I profili inoltre sono definiti all'interno di diverse Part, in modo che
un'esecuzione di alcune caratteristiche di una Part non implichi la necessità di
supportare l'intera Part.
MPEG-1, MPEG-2, MPEG-7 e MPEG-21 sono altri standard MPEG.
Il concetto alla base del codec (COdificatore-DECodificatore) MPEG4 è la
Quantizzazione. Senza scendere nello specifico, si può riassumere come quel
processo che permette, mediante un apposito algoritmo di compressione, di
trasmettere solamente la variazione dell'immagine. Allo stato dell'arte infatti
esistono due modi per eseguire questa operazione: I-frame e P-frame4: il primo
codifica l'immagine senza una referenza alla precedente (refresh puro): è più
preciso ma più pesante per le applicazioni via rete, mentre la seconda esegue
una compensazione nella variazione del movimento (motion-compensated frames)
analizzando appunto la differenza di immagine tra due frame correnti. La parte
statica non è ritrasmessa e non cambia tra un quadro e l'altro.
VOB (Video OBject)
VOB è l'acronimo di Video OBject. Un file VOB, nel file system di un DVD video,
può essere visto come un grande "raccoglitore" che contiene un po’ tutto: esso
può raggiungere la dimensione limite di 1 GB ed è formato da altri file VOB più
piccoli (che compongono le scene a cui si accede direttamente dal root menu del
disco), dall'audio in formato Dolby AC3 e in diverse lingue, dal film vero e
proprio in formato compresso MPEG-2.
I file .VOB sono gli unici che possono essere criptati e che quindi vanno
decriptati per essere visualizzati correttamente; i .VOB contengono i flussi
video MPEG-2, audio, sottotitoli e le informazioni di sincronizzazione di tali
contributi. Per l'esattezza si parla di contributi multiplexati nel file .VOB.
Inizio pagina
From Wikipedia, the free encyclopedia
|