Dispense del corso di Comunicazioni Multimediali II...

141
Dispense del corso di Comunicazioni Multimediali II Stefania Colonnese Anno Accademico 2008/2009

Transcript of Dispense del corso di Comunicazioni Multimediali II...

Page 1: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Dispense del corso di

Comunicazioni Multimediali II

Stefania Colonnese

Anno Accademico 2008/2009

Page 2: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Indice

1 Introduzione 51.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2 Codifica del segnale vocale 72.1 Rappresentazione del segnale vocale in forma numerica . . . . . . . . . . . . . . . . . . . . . . . . . 72.2 Quantizzatore di Lloyd-Max, codifica PCM e ADPCM . . . . . . . . . . . . . . . . . . . . . . . . . . 82.3 Codifica basata su modelli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.3.1 Regular Pulse Excitation- Long Term Prediction - Linear Prediction Coding . . . . . . . . . . 182.3.2 Adaptive Multirate Narrowband Codec . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2.4 Trasmissione del segnale vocale su canali affetti da errori . . . . . . . . . . . . . . . . . . . . . . . . 21

3 Codifica del segnale audio 243.1 Principi di codifica del segnale audio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

3.1.1 Rappresentazione in frequenza del segnale audio e fenomeni di mascheramento . . . . . . . . 243.2 Lo standard MPEG-1 Audio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.2.1 Layer I e II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273.2.2 Layer III . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3.3 Lo standard MPEG-2 Audio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293.4 Lo standard MPEG-4 Audio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

4 Codifica di Immagini 334.1 Principi di codifica di immagini fisse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334.2 Rappresentazione dell’immagine nel dominio DCT . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

4.2.1 Riduzione di ridondanza psicovisuale mediante quantizzazione . . . . . . . . . . . . . . . . . 384.3 Lo standard JPEG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384.4 Lo standard JPEG 2000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434.5 Trasmissione di immagini su canali affetti da errori . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

5 La compensazione di moto 515.1 Principi di motocompensazione per la codifica di sequenze video . . . . . . . . . . . . . . . . . . . . 515.2 Trasformazioni geometriche per motocompensazione di sequenze video . . . . . . . . . . . . . . . . . 525.3 Algoritmi di motocompensazione per la codifica di sequenze video . . . . . . . . . . . . . . . . . . . 55

2

Page 3: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

INDICE 3

6 Servizi di diffusione televisiva: lo standard MPEG-2 e il Digital Video Broadcasting 606.1 Lo standard MPEG-2 per servizi multimediali diffusivi . . . . . . . . . . . . . . . . . . . . . . . . . . 606.2 Lo standard MPEG-2 Video . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

6.2.1 Il controllo di flusso nella codifica MPEG-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . 636.2.2 Profili e livelli di un decodificatore MPEG-2 video . . . . . . . . . . . . . . . . . . . . . . . 64

6.3 Lo standard MPEG-2 system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 656.3.1 Il Program Stream MPEG-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 656.3.2 Il Transport Stream MPEG-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 666.3.3 Il trasferimento di dati nel Transport Stream MPEG-2 . . . . . . . . . . . . . . . . . . . . . . 67

6.4 Distribuzione del Transport Stream MPEG-2 mediante piattaforma DVB . . . . . . . . . . . . . . . . 686.4.1 I sistemi DVB-S, DVB-C, DVB-T . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 686.4.2 Il sistemi DVB-H . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

7 Servizi di videotelefonia e videoconferenza: le Raccomandazioni ITU-T 767.1 Principi della codifica video H.263 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 777.2 Le opzioni avanzate del codec H.263 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

7.2.1 La motocompensazione avanzata in H.263 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 797.3 La sintassi H.263 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 807.4 Versioni, profili e livelli del codec H.263 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 827.5 Raccomandazioni ITU-T per videotelefonia e videoconferenza su rete fissa . . . . . . . . . . . . . . . 83

7.5.1 I formati di multiplazione a pacchetto H.223 e H.225 (RTP) per i flussi di dati multimediali . 857.5.2 Il formato RTP per il flusso binario H.263 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

8 Lo standard ISO MPEG-4 928.1 Principi dello standard MPEG-4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 928.2 La codifica video di oggetti di forma arbitraria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

8.2.1 Gli strumenti per la codifica dell’informazione di forma . . . . . . . . . . . . . . . . . . . . . 968.2.2 Gli strumenti per la codifica di movimento e tessitura di oggetti di forma arbitraria . . . . . . 978.2.3 La sintassi MPEG-4 Visual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

8.3 La codifica video in ambienti di trasporto soggetti ad errore . . . . . . . . . . . . . . . . . . . . . . . 1008.3.1 Le funzionalità di robustezza all’errore dello standard MPEG-4 . . . . . . . . . . . . . . . . 101

8.4 Multiplazione e trasporto di dati MPEG-4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1028.4.1 Il formato di trasporto MPEG-4: il Delivery Multimedia Integration Framework . . . . . . . . 1028.4.2 Il formato di memorizzazione MPEG-4: il file MP4 . . . . . . . . . . . . . . . . . . . . . . . 105

8.5 La comunicazione video su reti a pacchetto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1068.5.1 Il formato RTP per il flusso binario MPEG-4 Visual . . . . . . . . . . . . . . . . . . . . . . . 108

9 La Raccomandazione JVT H.264/AVC 1119.1 Principi dello standard H.264 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1119.2 Il Video Coding Layer H.264 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

9.2.1 La predizione spaziale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1129.2.2 Trasformazione e quantizzazione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

Page 4: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

4 INDICE

9.2.3 La motocompensazione ed il controllo di codifica . . . . . . . . . . . . . . . . . . . . . . . . 1159.2.4 Algoritmi di codifica entropica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1169.2.5 Flessibilità di accesso ed efficienza di compressione: i quadri di Switching . . . . . . . . . 117

9.3 Funzionalita di robustezza agli errori di H.264 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1189.4 La sintassi del VCL H.264 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1199.5 Profili e livelli del codificatore H.264 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1219.6 Il Network Adaptation Layer H.264 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

10 Comunicazioni multimediali su reti radiomobili 2.5 e 3 G 12610.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12610.2 Il General Packet Radio Service (GPRS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

10.2.1 Qualita di servizio GPRS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12710.3 L’Universal Mobile Telecommunication System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128

10.3.1 Qualita di servizio UMTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12810.4 Architettura protocollare della rete d’accesso UTRAN e GERAN . . . . . . . . . . . . . . . . . . . . 13010.5 Servizi multimediali conversazionali in ambito 3GPP . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

10.5.1 Servizi conversazionali a commutazione di circuito . . . . . . . . . . . . . . . . . . . . . . . 13310.5.2 Servizi conversazionali a commutazione di pacchetto . . . . . . . . . . . . . . . . . . . . . . 135

10.6 Servizi multimediali di streaming in ambito 3GPP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13610.6.1 Architettura protocollare per servizi di streaming a commutazione di pacchetto . . . . . . . . 13610.6.2 Codec per servizi di streaming a commutazione di pacchetto . . . . . . . . . . . . . . . . . . 136

10.7 Servizi multimediali in ambito 3GPP: la messaggistica multimediale . . . . . . . . . . . . . . . . . . 13810.8 Il formato file .3gp. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138

11 Conclusioni 14011.1 Conclusioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140

Page 5: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Capitolo 1

Introduzione

1.1 Introduzione

La maturazione della tecnologia dell’elaborazione del segnale e delle telecomunicazioni consente oggi la trasmissionee la comunicazione interpersonale di informazioni di differente natura, riconducibile a voce, audio, immagini, video,dati. Inoltre tali informazioni sono trasmesse nel contesto di servizi differenti fra cui citiamo le comunicazioniinterpersonali, i servizi interattivi, i servizi diffusivi, la messaggistica e la trasmissione dati. Infine, i canali fisiciutilizzati per la trasmissione sono differenti, e coinvolgono canali radio fissi ad elevata capacita, reti fisse a capacitamedio bassa, reti fisse a capacita medio alta e canali radio mobili.

Nel progetto di una comunicazione multimediale e pertanto richiesta l’applicazione, in contesti estremamentedifferenziati, di principi generali di rappresentazione efficiente, protezione, e assemblamento dell’informazione. L’o-biettivo di questo testo e illustrare tanto alcuni principi generali quanto alcune pecularita applicative che si riscontranonell’ambito delle comunicazioni multimediali, facendo laddove possibile riferimento agli standard internazionali esi-stenti e in via di definizione. Tali standard costituiscono un’importante premessa per l’interoperabilita di sistemi realied in definitiva per l’affermazione di servizi basati sulle comunicazioni multimediali.

Con riferimento allo schema a blocchi di un generico sistema di comunicazione, si analizzeranno le principalimetodologie di codifica di sorgente dell’informazione di tipo voce, audio e video esponendo i relativi standard1.1. Sidiscuteranno le modalita di codifica di canale messe in atto nei differenti contesti applicativi, evidenziando come lamodalita di protezione dati dipenda sia dal tipo di dati di ingresso sia dalle specifiche del servizio. Si discuterannoinfine i principi e gli standard di multiplazione dati, che rivestono un’importanza fondamentale nella gestione dellerisorse di telecomunicazione, con particolare riferimento all’efficienza e alla qualita del servizio risultante.

1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno: l’ITU (1865), che e un’agenzia delle Nazioni Unite e vedeuna cooperazione di enti governativi ed enti privati, e sara citato con particolare riferimento alla Raccomandazioni della serie H per sistemi divideotelefonia e videoconferenza; l’organizzazione non governativa degli enti di stantardizzazione nazionale ISO (1946), citata in riferimento adimportantissimi standard di memorizzazione e diffusione di dati multimediali, quali il JPEG, l’MPEG-2, l’MPEG-4; l’ETSI (1988), organizzazionenon governativa di manufatturiere, operatori, amministrazioni pubbliche, enti di ricerca, citata con riferimento al GSM e alle specifiche tecnichedella televisione digitale, terrestre, satellitare e via cavo e il DVB (1991), consorzio di natura prevalentemente industriale per la definizione dispecifiche di servizi televisivi; il 3GPP (1998), nato da un accordo di collaborazione fra enti di standardizzazione nelle ICT, citato in riferimentoai servizi multimediali su reti radio mobili 2.5g e 3g.

5

Page 6: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

6 CAPITOLO 1. INTRODUZIONE

Figura 1.1: Schema a blocchi di un generico sistema di comunicazione.

Page 7: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Capitolo 2

Codifica del segnale vocale

2.1 Rappresentazione del segnale vocale in forma numerica

Il segnale vocale e il segnale analogico convogliato dalla variazione temporale della pressione acustica generata da unparlatore. Si assume che le principali caratteristiche del segnale vocale siano note al lettore, cosi’ come le principalitecniche di codifica. Tuttavia, tali aspetti saranno qui richiamati per completezza.

Il segnale vocale, come altri segnali di interesse nelle comunicazioni, è originariamente definito in un dominioe codominio continui. Supponendo che il segnale vocale x(t) presenti caratteristiche di limitazione in banda nellabanda [−w,w], esso è perfettamente ricostruibile a partire dalla conoscenza dei suoi campioni estratti a passo dicampionamento 1/2w. La discretizzazione del dominio del segnale pertanto non comporta perdita di informazione.

Ciascun campione xn rappresenta un’istanza di una variabile aleatoria analogica X, e può essere rappresentatoutilizzando un codominio discreto X unicamente a patto di tollerare una perdita di informazione irreversibile sulsegnale originario. In altre parole, una volta rappresentata la variabile aleatoria continua originale in un dominioquantizzato, essa sarà ricostruibile con una distorsione residua. Per una fissata misura di distorsione d(x, x), sidice Rate-Distortion function R(D) il minimo numero di bit di informazione necessari per rappresentare la variabilealeatoria X con una distorsione media inferiore o al piu uguale a D, ovvero E {d(x, x)} ≤ D. E interessanteosservare che, per funzione di distorsione quadratica d(x, x) = (x− x)2, a parita di varianza σ2

x la variabile aleatoria

piu costosa da codificare e la variabile aleatoria Gaussiana, per la quale si ha Rg(D) =12

log2(σ2

x

D) per D ≤ σ2

x eRg(D) = 0 per D ≥ σ2

x . Si supponga dunque di tollerare una perdita di informazione dovuta alla quantizzazionedei valori di ampiezza del segnale da rappresentare. Lo schema completo di campionamento e ricostruzione2.1delsegnale vocale e rappresentato in Fig.2.5.

2.1Si osservi che, laddove il teorema del campionamento richiederebbe una ricostruzione mediante un filtro passabasso ideale, uno schemaoperativo tipicamente realizza la ricostruzione mediante la cascata di un convertitore digitale analogico a tenuta, approssimante un filtro conrisposta impulsiva rettangolare, seguito da un filtro passabasso con enfasi alle alte frequenze.

7

Page 8: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

8 CAPITOLO 2. CODIFICA DEL SEGNALE VOCALE

Rate Distortion functionNel contesto della Teoria dell’informazione, la Rate distortion function si definisce come la minima informazionemutua media fra X e la sua rappresentazione X = Q(X), sotto il vincolo che la distorsione media sia inferiore oal piu uguale a D, ovvero

R(D) def= minQ, E{d(x,x)}≤D

I(X, X) = H(X) −H(X|X)

dove H(X) ha il significato di entropia nel caso di variabile aleatoria X discreta e di entropia differenziale nelcaso di variabile aleatoria X continua. Per funzione di distorsione quadratica d(x, x) = (x− x)2, la rate distortionfunction di una variabile aleatoria Gaussiana di varianza σ2e data da:

Rg(D) =

⎧⎪⎨⎪⎩12

log2(σ2

x

D) D ≤ σ2

x

0 D ≥ σ2x

La Rg(D) rappresenta un upper-bound per la R(D) di una v.a. di varianza σ2. D’altro canto, e possibile derivareanche lo Shannon Lower Bound

R(D) ≥ H(X) − 12

log2(2πeD)

Lo studio puo essere esteso al caso di N v.a. Gaussiane indipendenti di varianza σ2n, n = 0, . . .N − 1. In tal caso,

la R(D) congiunta assume la forma:

Rg(θ) =∑

n=0,N−1

max{

0,12

log2(σ2

n

θ)}

Dg(θ) =∑

n=0,N−1

min{σ2

n, θ)}

Analoghe argomentazioni possono essere applicate a processi aleatori Gaussiani. Infatti, per il Teorema di Rap-presentazione spettrale, un processo aleatorio stazionario Gaussiano a valor medio nullo e di densita spettrale dipotenza Px(ejω) puo essere rappresentato come sovrapposizione di processi Gausssiani indipendenti nelle diversebande di frequenza, e si ha

Rg(θ) =∫

max{

0,12

log2

Px(ejω)θ

}dω

Dg(θ) =∫

min{Px(ejω), θ

}dω

2.2 Quantizzatore di Lloyd-Max, codifica PCM e ADPCM

La quantizzazione dei valori di ampiezza del segnale introduce una distorsione media che dipende non solo dal numerodi bit per campione ma anche dalla modalita di assegnazione del valore di ampiezza ai livelli discreti ammissibili,ovvero alla scelta degli intervalli di quantizzazione del segnale.

Supponiamo che la distorsione sia misurata da una funzione quadratica, e che ciascun campione sia rappresentatoda b = log2L bits. Siano qk, k = 0, · · ·L− 1 i valori di ampiezza assumibili dalla variabile quantizzata x e θk, k =

0, · · ·L gli estremi dei corrispondenti L intervalli di decisione del quantizzatore. Il quantizzatore ottimo secondo il

Page 9: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

2.2. QUANTIZZATORE DI LLOYD-MAX, CODIFICA PCM E ADPCM 9

Rate Distortion function: esempio di calcolo

Figura 2.1: Calcolo della rate distortion di 4 variabili Gaussiane indipendenti di assegnata varianza.

Figura 2.2: Schema completo di campionamento e ricostruzione.

criterio dell’errore quadratico medio, cioe quello per cui e minima la distorsione quadratica D = E{(x− x)2

}e

Page 10: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

10 CAPITOLO 2. CODIFICA DEL SEGNALE VOCALE

individuato dalla soluzione congiunta, rispetto alle incognite θk e qk, delle equazioni2.2⎧⎨⎩ θk+1 = (qk + qk+1)/2

qk = E {x|θk ≤ x ≤ θk+1}(2.2.1)

dove

E {x|θk ≤ x ≤ θk+1} =

∫ θk+1

θkx · pX(x)dx∫ θk+1

θkpX(ξ)dξ

Tale quantizzatore prende il nome di quantizatore di Lloyd-Max.A titolo di esempio consideriamo il caso che la variabile d’aleatoria di ingresso sia uniforme nell’intervallo

[−A,A] e che sia quantizzata a L = 2b livelli mediante quantizzazione uniforme. In tal caso la distorsione quadraticamisurata e

D =(2A/2b)2

12=A2

32−2b

e diminuisce di 6 dB per ogni bit per campione aggiuntivo2.3.Nel caso di codifica del segnale vocale gli standard internazionali di rappresentazione del segnale in termini di

campionamento e quantizzazione adottano metodologie di quantizzazione subottima. In particolare, nella definizionedegli standard sono stati considerati alcuni aspetti operativi. In primo luogo, il segnale può presentare una dinamicaelevata, dell’ordine di 60dB; per riprodurre tanto i livelli piu alti che quelli piu bassi di segnale con un livellocomparabile di rapporto segnale rumore di quantizzazione sarebbe necessario avvicinare i livelli di quantizzazionedei valori piu bassi distanziandoli per i valori piu elevati. In secondo luogo, la realizzazione di un quantizzatore nonuniforme è più complessa rispetto a quella di un quantizzatore uniforme. Tali aspetti sono tenuti in conto operandouna trasformazione non lineare x = η(x) dei valori x in ingresso ad un quantizzatore uniforme; la trasformazioneespande i valori piu bassi e comprime i valori piu elevati ed e invertita all’uscita del quantizzatore. Un quantizzatoreuniforme, preceduto e seguito da trasformazioni nonlineari prende il nome di compandor (compressor-expander)

2.2Infatti, la distorsione puo essere scritta come D =PL−1

k=0

R θk+1θk

(x−qk)2px(x) . Derivando tale espressione rispetto a θk e qk e uguagliandoa zero tali derivate, i.e. ∂D/∂θk = 0, ∂D/∂qk = 0, k = 0, · · ·L − 1, si ricavano le espressioni sopra riportate.

2.3La diminuzione di distorsione di circa 6 dB per bit si osserva anche nella R(D) di una v.a. Gaussiana, in cui D = σ2/22R. A titoloindicativo, la formula “6 dB per bit” puo essere applicata nella grande generalita dei casi.

Page 11: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

2.2. QUANTIZZATORE DI LLOYD-MAX, CODIFICA PCM E ADPCM 11

Figura 2.3: Azione del compandor: quantizzazione uniforme di η(x) e risultante quantizzazione non uniforme di x.

La codifica Pulse Code Modulation del segnale vocale, adottata nella Raccomandazione ITU-T G.711, si basasul filtraggio del segnale nella banda [−4KHz, 4KHz], sul suo campionamento alla frequenza di 8KHz, e sullaquantizzazione a 8 bit di ciascun campione. La quantizzazione e operata a valle della espansione non lineare delsegnale (legge A)

ηA(x) =

⎧⎪⎪⎨⎪⎪⎩Ax

1 + lnA0 ≤ x ≤ 1/A

1 + lnAx1 + lnA

1/A ≤ x ≤ 1(2.2.2)

con valore tipico A = 87.6.Analogamente, lo standard PCM americano2.4 adotta l’espansione non lineare (legge μ)

ημ(x) =ln(1 + μx)ln(1 + μ)

0 ≤ x ≤ 1 (2.2.3)

In tal modo, una rappresentazione a livelli uniformi sull’asse ηA(x) (ημ(x)) equivale a una rappresentazione alivelli non uniformi sull’asse x. Tali rappresentazioni richiedono 64Kb/s e presentano rapporto segnale rumore diquantizzazione comparabile a quello ottenibile con una quantizzazione uniforme a 13 bit per campione.

2.4Laddove necessario, il transcoding fra A-law e μ-law e a carico della rete μ.

Page 12: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

12 CAPITOLO 2. CODIFICA DEL SEGNALE VOCALE

Figura 2.4: Legge A: ηA(x) vs x.

I campioni adiacenti estratti dal segnale vocale a 8KHz presentano un certo livello di correlazione, ovvero unapredicibilita. Supponendo che al decodificatore siano presenti, all’istante n, un certo numero di campioni quantizzatixn−1, xn−2, · · ·, e possibile

• effettuare una predizione φ(xn) del campione attuale xn a partire dai campioni gia noti al decodificatore

xn = φ(xn−1, xn−2, · · ·)

mediante regole note tanto al lato del codificatore che al lato del decodificatore,

• valutare l’errore di predizione residuo en

en = xn − xn

• trasmetterne una versione quantizzata en.

• calcolare il campione quantizzato xn

xn = xn + en

Laddove il predittore φ sia in grado di spiegare la correlazione residua fra i campioni, in modo che l’errore dipredizione residuo en presenti una varianza σ2

e inferiore alla varianza σ2x dei campioni del segnale di ingresso, esso

può essere rappresentato con un numero inferiore di bit, a parita di distorsione introdotta sul segnale ricostruito. Talecodifica, di tipo differenziale, puo essere ulteriormente raffinata rendendo i parametri del filtro e/o del quantizzatoreadattativi alle caratteristiche della sequenza di ingresso.

Page 13: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

2.2. QUANTIZZATORE DI LLOYD-MAX, CODIFICA PCM E ADPCM 13

Figura 2.5: Schema di principio del DPCM.

Un caso di rilevante interesse teorico ed applicativo e quello in cui la predizione φ e lineare ed effettuata su unnumero finito di campioni

xn = −P∑

i=1

aixn−i

secondo il criterio del minimo errore quadratico medio, ovvero

minai,i=1,···P

E{(xn − xn)2

}

Per il principio di ortogonalita la precedente equazione si traduce nella condizione di ortogonalita dell’errore allospazio delle osservazioni E {(xn − xn)xn−i} = 0, i = 1, · · ·P , ovvero (vedi Fig. 2.6)

Rx[i] = −P∑

k=1

akRx[i− k], i = 1, · · ·P

dove si e posto Rx[i] def= E {xnxn−i}. La potenza dell’errore di predizione PE = E {(xn − xn)xn} puo essereespressa come

PE = Rx[0] +P∑

i=1

aiRx[−i]

Pertanto i coefficienti dello stimatore lineare ottimo e la potenza del residuo di predizione possono essere congiunta-

Page 14: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

14 CAPITOLO 2. CODIFICA DEL SEGNALE VOCALE

Figura 2.6: Principio di ortogonalita.

mente calcolati risolvendo il sistema⎡⎢⎢⎢⎢⎢⎣Rx[0] Rx[−1] · · · Rx[−P ]

Rx[1] Rx[0] · · · Rx[1− P ]. . . . . .

Rx[P ] Rx[P − 1] · · · Rx[0]

⎤⎥⎥⎥⎥⎥⎦

⎡⎢⎢⎢⎢⎢⎣1

a1

...aP

⎤⎥⎥⎥⎥⎥⎦ =

⎡⎢⎢⎢⎢⎢⎣PE

0...0

⎤⎥⎥⎥⎥⎥⎦ (2.2.4)

La soluzione delle equazioni (2.2.4), dette di Yule-Walker, conduce alla determinazione del predittore lineare ottimonel senso dell’errore quadratico medio2.5. Osserviamo che la particolare struttura della matrice di autocorrelazione,che risulta di Toeplitz ed Hermitiana, consente l’adozione di algoritmi veloci per la soluzione del sistema, e rendetale approccio utilizzabile anche in applicazioni in tempo reale.

Nello schema DPCM, la potenza dell’errore risultante su xn eguaglia la potenza dell’errore di quantizzazioneosservato sulla variabile en

2.6. D’altro canto l’errore di predizione en, pur avendo dinamica nominalmente maggioredi quella di xn, ha tipicamente potenza minore di quella di xn, e puo essere quantizzato con tecnica PCM utilizzando,a parita di distorsione, un minor numero di bit.

Tale approccio e seguito nella codifica Adaptive Differential PCM descritta nella Raccomandazione ITU-T G.726.In tale Raccomandazione, i coefficienti del predittore sono ricavati in modo adattativo a partire dalla sequenza deivalori ricostruiti xn. Il quantizzatore utilizza una rappresentazione a 4 bit. Inoltre esso presenta livelli di quantiz-zazione distribuiti in modo non uniforme; gli intervalli di quantizzazione sono variabili in funzione della velocita

2.5A titolo di esempio si osservi che per il predittore ottimo di ordine 1 risulta a1 = −Rx[1]/Rx[0], ovvero xn = Rx[1]/Rx[0] ∗ xn.2.6Infatti, en − en = xn − xn − en = xn − (xn + en) = xn − xn

Page 15: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

2.3. CODIFICA BASATA SU MODELLI 15

di variazione del segnale di errore en. Si osservi che le regole per l’adattamento del predittore e del quantizzatoredipendono da quantita note al decodificatore e non necessitano della trasmissione di ulteriore informazione. Il bit-raterisultante per questo tipo di codifica e di 32Kb/s.

Predizione e Stima OttimaIl problema della predizione lineare si inquadra nel problema piu generale della stima lineare di un segnale yn apartire da un insieme di osservazioni xn secondo il criterio del minimo errore quadratico medio. In tale scenario, lastima lineare e realizzata mediante filtraggio ottimo, nel senso che i coefficienti fn del filtro che realizza la stimasono ricavati in modo che la distanza quadratica media fra la stima yn =

∑i fixn−i disponibile all’uscita del filtro

e il segnale yn che si vuole ricostruire sia minima. Sia S il supporto (finito o infinito numerabile) su cui e diversoda zero il filtro che realizza la stima. I coefficienti del filtro ottimo sono quelli che minimizzano

C def= E{(yn − yn)2

}= E

{(yn −

∑i∈S

fixn−i)2}

= E

{y2

n +∑i∈S

∑k∈S

fifkxn−ixn−k − 2∑i∈S

fiynxn−i

}

ovvero quelli che annullano

∂C∂fm

= 0 = E

⎧⎨⎩2∑

k∈S,k �=m

fkxn−mxn−k + 2fmxn−mxn−m − 2ynxn−m

⎫⎬⎭In altre parole il filtro ottimo verifica la relazione∑

k∈S

fkRx[m− k] = Ryx[m]

Per questa scelta del filtro, l’errore (yn − yn) e ortogonale in senso statistico, ovvero incorrelato, alle osservazioni:

E {(yn − yn)xn−m} = E

{ynxn−m −

∑k∈S

fkxn−kxn−m

}= Ryx[m] −

∑k∈S

fkRx[m− k] = 0

Cio si puo interpretare geometricamente osservando che la stima lineare (appartenente, cioe, al sottospazio delleosservazioni) ottima nel senso dell’errore quadratico medio, e quella per cui l’errore e ortogonale al sottospaziodelle osservazioni (Principio di Ortogonalita).Tale criterio di stima ottima e di rilevante interesse in diverse applicazioni, quali l’equalizzazione di segnale, ilrestauro di immagini sfocate, l’interpolazione o estrapolazione di serie aleatorie. Un caso particolare di stima ottimalineare e quello in cui lo spazio delle osservazioni e costituito da P campioni di una serie aleatoria xn−1, · · · , xn−P

ed il segnale che si desidera stimare e il campione attuale della serie, xn. In tal caso, il problema di stima prende ilnome di predizione lineare; infatti, ponendo S = {1, 2 . . .P }, Ryx[m] = Rxx[m] e aggiungendo l’equazione peril calcolo della potenza dell’errore di predizione, le equazioni normali coincidono con le sopra esposte equazioni diYule Walker.

2.3 Codifica basata su modelli

La codifica basata su modelli scaturisce da due ordini di considerazioni.

Page 16: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

16 CAPITOLO 2. CODIFICA DEL SEGNALE VOCALE

In primo luogo il segnale vocale presenta, su intervalli temporali del’ordine di 10, 20, 30 ms, caratteristichespettrali quasi stazionarie e prevalente concentrazione dell’energia intorno ad un numero limitato di frequenze. Infatti,il segnale e formato nelle cavita risonanti del cavo orale e nasale a partire dal flusso d’aria proveniente dai polmoniattraverso le corde vocali. Nell’osservazione di una finestra temporale di segnale di circa 20 ms, l’andamento spettraleosservato presenta un insieme di picchi, modellabili come l’uscita di un filtro, opportunamente eccitato da un segnaledi ingresso. Per questioni di natura computazionale, il filtro e di solito descritto come un filtro a soli poli.

In secondo luogo, l’orecchio umano puo percepire come intellegibile, accettabile o anche soddisfacente unarappresentazione del segnale vocale che, mimando il modello di formazione del segnale stesso, ne riproduca lecaratteristiche spettrali a breve termine. Pertanto, nella rappresentazione del segnale come uscita di un filtro, ilsegnale di ingresso attuale puo essere rappresentato in forma variamente approssimata, dando luogo a diversi livelli diqualita. Adottando tali principi per la codifica del segnale, i parametri codificati saranno costituiti dalla descrizionedei parametri del filtro e della versione approssimata del segnale di ingresso. In linea di principio, l’informazionepiu sensibile e costituita dai parametri che descrivono il filtro, che influiscono maggiormente sulla resa del segnalericostruito.

Dati i campioni xn del segnale da codificare, essi sono rappresentati tramite il seguente modello di generazione

xn = −P∑

i=1

aixn−i + vn (2.3.5)

dove i coefficienti ai sono scelti in modo da riprodurre i picchi spettrali del segnale xn, e si calcolano in funzionedei valori dell’autocorrelazione della sequenza xn Rx[i] = E {xnxn−i}. Il termine vn rappresenta il segnale dieccitazione del filtro che genera xn.

Ai fini del calcolo dei coefficienti ai, si ipotizza in primo luogo che il segnale di generazione vn sia costituito dauna serie bianca, ovvero E {vnvn−k} = σ2

vδk; il modello in (2.3.6) prende il nome di modello Autoregressivo, e lasequenza di campioni xn e detta serie aleatoria autoregressiva (AR)

Serie aleatoria autoregressivaSi dice serie aleatoria autoregressiva (AR) una serie aleatoria osservata all’uscita di un filtro a soli poli quaandoall’ingresso e applicato un rumore bianco. Una serie aleatoria AR xn e pertanto descritta da una equazione alledifferenze finite

xn = −P∑

i=1

aixn−i + vn (2.3.6)

con E {vnvn−k} = σ2vδk . La autocorrelazione di una serie AR soddisfa un’equazione analoga a quella di generazione

della serie AR. Lo spettro di densita di potenza di una serie AR e esprimibile come

Px(ejω) =σ2

v

|1 +∑P

k=1 akejωk|2

I parametri ak, k = 1, · · ·P governano la posizione dei P picchi di Px(ejω) in [−π, π)]. In definitiva, la seriealeatoria AR costituisce un modello matematico potente e compatto, governato cioe da un numero di parametrilimitato, ovvero i coefficienti ai, i = 1, · · ·P e la varianza σ2

v.

Tale modello consente di valutare analiticamente i coefficienti ai, che influenzano direttamente i picchi spettralidel filtro, in funzione della autocorrelazione della sequenza xn. Una volta ricavati i valori ai, sotto questa ipotesi

Page 17: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

2.3. CODIFICA BASATA SU MODELLI 17

semplificativa, la codifica basata su modelli opera una rappresentazione piu appropriata del segnale vn. I diversialgoritmi di codifica basata su modelli adottano rappresentazioni differenti di tale segnale.

L’equazione di generazione del modello AR consente di esprimere i coefficienti di autocorrelazione della sequenzaxn in funzione dei coefficienti ai, i = 1, · · ·P

E {xnxn−k} = −P∑

i=1

aiE {xn−ixn−k} + E {vnxn−k}

ovvero

Rx[k] = −P∑

i=1

aiRx[k− i] + σ2vδ[k], k ≥ 0

Rx[k] = Rx[−k], k < 0

(2.3.7)

I parametri del modello, ovvero i coefficienti ai, i = 1, · · ·P e la varianza σ2v , possono essere ricavati a partire dai

campioni di autocorrelazione di xn risolvendo il sistema di equazioni di Yule-Walker

⎡⎢⎢⎢⎢⎢⎣Rx[0] Rx[−1] · · · Rx[−P ]

Rx[1] Rx[0] · · · Rx[1− P ]. . . . . .

Rx[P ] Rx[P − 1] · · · Rx[0]

⎤⎥⎥⎥⎥⎥⎦

⎡⎢⎢⎢⎢⎢⎣1

a1

...aP

⎤⎥⎥⎥⎥⎥⎦ =

⎡⎢⎢⎢⎢⎢⎣σ2

v

0...0

⎤⎥⎥⎥⎥⎥⎦ (2.3.8)

In presenza di un numero di misure finito, i parametri del modello sono ottenuti sostituendo ai campioni diautocorrelazione di xn i campioni Rx[k] stimati2.7 a partire da un numero finito di campioni. Come precedentementeanticipato, nelle applicazioni di codifica del segnale vocale il segnale di eccitazione vn e caratterizzato in mododifferente nei diversi algoritmi di codifica. Per citare alcuni casi di interesse applicativo, osserviamo che esso puoessere descritto come

• sequenza aleatoria emessa da una sorgente riducibile a due sottosorgenti, che generano rispettivamente unrumore Gaussiano bianco (suoni sordi) o una sinusoide la cui frequenza fondamentale e detta di pitch.

• treno di impulsi di posizione e ampiezza variabili

• sequenza estratta da un insieme di possibili sequenze (codebook), eventualmente aggiornato in modo adattativoin funzione delle caratteristiche del segnale da codificare

Nel presente paragrafo si descriveranno sinteticamente i metodi di codifica basata su modelli adottati nelle retiradiomobili GSM e UMTS.

2.7La stima polarizzata della funzione di autocorelazione conduce ad una matrice di autocorrelazione stimata definita positiva ed assicura lastabilita della Serie AR (Zeri di 1 +

PPk=1 akejωk interni al cerchio unitario).

Page 18: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

18 CAPITOLO 2. CODIFICA DEL SEGNALE VOCALE

Algoritmo di Levinson-DurbinUn efficiente algoritmo ricorsivo per il calcolo dei coefficienti ap e della varianza σ2

v e l’algoritmo di Levinson-Durbin, qui di seguito schematicamente riportato. L’algoritmo si basa sul calcolo dei coefficienti di modelli diordine crescente

• Inizializzazione

σ2v0 = Rx(0)

a11 = −Rx(1)/Rx(0)

σ2v1 = σ2

v0(1 − a211)

(2.3.9)

• Modello di ordine i

aii = −Rx(i) +

∑k=1,i−1 ai−1 kRx(i− k)

σ2vi−1

aik = ai−1 k − aii ai−1 i−k, k = 1, · · · i− 1

σ2vi = σ2

vi−1(1 − a2ii)

(2.3.10)

dove con Rx(n) si sono indicati i valori stimati dell’autocorrelazione del segnale a partire dai campioni disponibili.I coefficienti aii sono anche detti coefficienti di riflessione. Un algoritmo alternativo e rappresentato dall’algoritmodi Schur, che valuta direttamente i coefficienti di riflessione aii e si presta alla realizzazione in parallelo.

2.3.1 Regular Pulse Excitation- Long Term Prediction - Linear Prediction Coding

La codifica RPE-LTP-LPC e adottata nel GSM e conduce ad un bit-rate di sorgente di 13Kb/s. La codifica eapplicata su trame di 20 ms, corripondenti a 160 campioni estratti a 8KHz. Il filtro LPC e un filtro a soli polidell’ottavo ordine, ed e determinato in modo da minimizzare l’energia del segnale di eccitazione mediante l’algoritmodi calcolo detto di Shur. Il segnale di eccitazione e calcolato mediante filtraggio (Short Term Filtering). Il segnalecos´ ottenuto presenta una ridondanza dovuta ad una pseudoperiodicita. Tale ridondanza e rimossa suddividendo latrama di 160 campioni in quattro blocchi (ciascuno di 40 campioni). Per ogni blocco, si individua una predizione,identificata in termini di ritardo e fattore di scala, a partire dai blocchi precedenti. Il residuo di predizione e quindifiltrato passabasso e sottocampionato di un fattore 1/3. Si sceglie una delle tre sequenze sottocampionate; poiche lafase scelta puo variare da blocco a blocco, essa e trasmessa insieme al valore di picco del residuo. Infine, le ampiezzedegli impulsi residui sono codificate con tecnica ADPCM. L’allocazione dei bit fra le diversi componenti codificatee sintetizzata in Tabella 2.1. E interessante osservare che i parametri aii che descrivono il filtro LPC sono trasmessi

codificando i relativi Log Area Ratio definiti come LARiidef= log10

(1 + aii

1 − aii

).

2.3.2 Adaptive Multirate Narrowband Codec

Il codec AMR e adottato nel sistema UMTS2.8 e possiede la proprieta di consentire l’adattamento del bit-rate alladisponibilita delle risorse di rete con un intervallo temporale di 20 ms. Il bit-rate puo variare da un massimo di

2.8Al codec AMR Narrowband si affianca il codec AMR wideband, adottato per servizi di streaming e di messaggistica multimediale, cheestende la banda a 507000Hz, ed opera a 9 differenti bit-rate fra i 6.6 e i 23.85 kbit/s, su campioni estratti a 16 KHz in un intervallo di 20ms.

Page 19: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

2.3. CODIFICA BASATA SU MODELLI 19

InformazioneParametri LPC (8) 36

Ritardo LTP 28

Guadagno LTP 8

Fase di sottocampionamento 8

Ampiezza massima 24

Ampiezze campioni (13) 156

Totale 260

Tabella 2.1: Bit codificati per ogni trama di 20 ms nel GSM RPE-LTP-LPC.

Figura 2.7: Schema del vocoder LPC-LTP-RPE adottato nel GSM.

12.2Kb/s fino ad un minimo di 4.75Kb/s. La codifica si basa su un modello LPC descritto da un filtro a soli polidi ordine 10. Nella modalita a 12.2Kb/s il filtro e calcolato su un intervallo di 10 ms 2.9. I parametri dei filtri sonocodificati quantizzando e trasmettendo delle funzioni ad esse correlate, dette Linear Spectral Pairs, che presentanocaratteristiche piu favorevoli rispeto alla quantizzazione. 2.10 Il segnale di eccitazione del filtro LPC è suddiviso in

Esso si basa sui principi di Linear Prediction Coding, e per motivi di complessita computazionale codifica separatamente i contenuti al di sotto eal di sopra di 6400 Hz.

2.9Ogni 120 ms, sono calcolati due filtri, a partire da due stime della funzione di autocorrelazione ottenute estraendo i campioni mediante duedistinte finestre, relative principalmente al secondo e al quarto sottoblocco dei 160 campioni. I parametri dei due filtri cos´ ottenuti sono utilizzatiper generare, mediante interpolazione temporale, i parametri relativi al primo e al terzo sottoblocco.

2.10Le Linear Spectral Pairs sono definite come LSPi = cosωi, dove ωi sono le radici dei polinomi P (z) = A(z)+z−(P+1)A(z−1), Q(z) =

A(z) − z−(P+1)A(z−1), con A(z) = 1 − Pi=1,P−1 aiz

−i .

Page 20: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

20 CAPITOLO 2. CODIFICA DEL SEGNALE VOCALE

quattro blocchi e rappresentato come la somma di due sequenze estratte rispettivamente da un codebook adattativo eduno di innovazione. Il codebook adattativo e costituito dai precedenti campioni del segnale di ingresso stesso; nellaricerca della parola di codice adattativo si utilizzano anche ritardi non interi, corrispondenti a sequenze interpolate, esi privilegiano le sequenze di campioni piu prossime. Il codebook fisso e costituito da sequenze di impulsi sparsi divalore ±1, diversamente allocati. I campioni relativi al sottoblocco attuale sono descritti come una somma pesata diuna versione interpolata temporalmente dei campioni al sottoblocco precedente e di un segnale di eccitazione estrattodal codebook fisso. In dipendenza del rate, cambia la rappresentazione dei pesi utilizzati nella somma, che possonoessere ulteriormente predetti temporalmente e compressi. In decodifica sono inoltre esplicitamente previste alcuneoperazioni di post-processing finalizzate a ridurre gli artefatti introdotti dalla codifica.

Il codec AMR presenta ulteriori caratteristiche di flessibilita, consentendo di codificare trame che non contenganovoce ad un bit-rate inferiore rispetto alle trame che contengono segnale vocale. Questa funzionalita e realizzataricorrendo ad un modulo di rivelazione di attivita vocale (Voice Activity Detector, VAD) al trasmettitore, che decideper ogni trama di 20 ms se il segnale e presente o no. Inoltre, vengono stimati, codificati e trasmessi alcuni parametri(Silence Descriptor, SID) che descrivano le caratteristiche del rumore di fondo. Al decodificatore tali parametrisono utilizzati per generare un rumore sintetico (confort noise) che dia la percezione di comunicazione attiva. Laflessibilita del codec puo essere sfruttata al livello radio per ridurre le risorse trasmissive impiegate, riducendo ilconsumo di potenza del terminale e di conseguenza aumentando la durata della batteria e diminuendo il livello diinterferenza sugli altri utenti.

Figura 2.8: Schema del vocoder AMR adottato nell’UMTS.

Page 21: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

2.4. TRASMISSIONE DEL SEGNALE VOCALE SU CANALI AFFETTI DA ERRORI 21

2.4 Trasmissione del segnale vocale su canali affetti da errori

Nelle precedenti sezioni sono state esaminati i principi di codifica del segnale vocale e i principali standard2.11 ad essirelativi. Su canali di comunicazione affetti da errori, l’informazione trasmessa deve essere opportunamente protetta.Da un punto di vista teorico, la codifica di sorgente e di canale ottima potrebbero essere derivate separatamente.Tuttavia le tecnica di codifica di sorgente e di canale in uso sono ben lungi dal massimo teorico e traggono beneficiodall’essere progettate congiuntamente.

Per cio che riguarda le codifiche come la PCM e la ADPCM, che mirano a riprodurre la forma d’onda del segnalenel tempo, l’informazione compressa da trasmettere non e a priori differenziabile in termini di una maggiore o minoreimportanza ai fini della qualita percettiva del segnale ricostruito. Pertanto la codifica di canale e operata in modoindifferenziato sui dati di sorgente, secondo modalita che dipendono dal mezzo trasmissivo.

Per cio che riguarda invece la codifica dei dati compressi mediante codifica basata su modelli, i parametri codificatirivestono importanza differente ai fini della riproduzione del segnale. I parametri piu sensibili sono quelli relativi aicoefficienti del filtro LPC, che determinano la posizione dei picchi in frequenza del segnale ricostruito.

Il sistema GSM distingue, nell’ambito dei 260 bit relativi ad una trama, fra 182 bit che necessitano di protezionee 78 bit che non necessitano di protezione. Inoltre, nel sottoinsieme dei bit da proteggere sono individuati i 50bit piu importanti. Pertanto, a questi ultimi e preliminarmente applicata una codifica a blocco mediante l’aggiuntadi 3 bit di parita 2.12. Tutti i bit della prima classe vengono poi codificati mediante un codice convoluzionale dirapporto di codice Rc = 1/2. Essi vengono poi trasmessi insieme ai bit della seconda classe, per un totale di(50 + 3 + 132 + 4) × 2 + 78 = 456 bit, corrispondenti ad un bit-rate dopo codifica di canale pari a 456/20ms =

22.8Kb/s. In trasmissione e effettuato un interleaving su 8 Normal Burst GSM, a loro volta inseriti in 8 trame, inun assegnato time slot; nei primi quattro Time Slot, i dati sono multiplati insieme ai dati della trama precedente;nei rimanenti quattro Time Slot, i dati sono multiplati insieme ai dati della trama successiva2.13. Complessivamente,l’interleaving si estende su un intervallo temporale di 4ms × 8 = 32ms. Osserviamo l’effetto di un errore ditrasmissione. Esso e con elevata probabilita rivelato se compare fra i bit piu significativi; puo o meno essere rivelatose compare fra i bit meno significativi. In presenza di errori rivelati sui 50 bit piu importanti, la trama ricevutae scartata, e possono essere messe in atto strategie di mascheramento basate su tecniche predittive. In ogni caso,essendo noto e prefissato il numero di bit della trama vocale, la decodifica puo riprendere dalla trama immediatamentesuccessiva a quella errata.

Nella trasmissione sul sistema UMTS, si osserva la differenza sostanziale che lo strato di Radio Resource Ma-nagement puo pienamente fruire della flessibilita di adattamento del bit-rate trasmissivo della sorgente, grazie allapossibilita di allocare codici CDMA di differente Spreading Factor. Per altro, questo consente di sfruttare tecnichedi Voice Activity Detection e di codifica di parametri di Confort Noise in modo piu sistematico ed efficiente diquanto possibile nel caso GSM. Tutti i bit della trama vocale sono trasmessi utilizzando un codice convoluzionalecon rapporto di codice variabile fra 1/2 e 1/5, come rappresentato in Tab.2.2; un certo numero di bit, variabile in

2.11I sistemi GSM e UMTS colloquiano fra di loro e con la rete GSTN mediante opportune operazioni di Transcoding, realizzate rispettivamentedalla TRAnscoding Unit nella GERAN e dal Media Gateway nella UMTS Core Network. La TRAU supporta la transcodifica fra il Full Rate a13 Kb/s e Half Rate a 5.6 Kb/s, basato su tecnica CELP, Enhanced Full Rate a 12.2 Kb/s, AMR NB e PCM. Il Media Gateway supporta tutte lemodalita di transcoding del TRAU piu quelle fra IP, ATM, PCM.

2.12Ai rimanenti 132 bit della prima classe sono applicati 4 tail bit al fine di chiudere il successivo codificatore convoluzionale su uno stato noto.2.13Ciascun Normal Burst convoglia 456/8=57 bit codificati relativi alla trama attuale, che occupano alternativamente i bit pari e i bit dispari dei

Normal Burst appartenenti a TS successivi; i rimanenti 57 bit, costituiti rispettivamente dai bit dispari e dai bit pari, sono occupati dai bit delletrame temporalmente adiacenti.

Page 22: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

22 CAPITOLO 2. CODIFICA DEL SEGNALE VOCALE

Figura 2.9: Normal Burst del GSM.

funzione del bit-rate selezionato, e codificato preliminarmente con dei bit di parita. I parametri di Confort Noisesono trasmessi utilizzando un codice convoluzionale di Rc = 1/4. Alternativamente, puo essere utilizzata la modalitacosiddetta half rate, in cui i rapporti di codice variano fra 1/2 e 1/3.

Bit Rate Code Rate12.2 1/2

10.2 1/3

7.95 1/3

7.4 1/3

6.7 1/4

5.9 1/4

5.15 1/5

4.75 1/5

Tabella 2.2: Esempi di rapporti di codice per codifica di segnale vocale nel sistema UMTS.

Page 23: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Bibliografia

[1] M.G. Di Benedetto, P. Mandarini, “Comunicazioni Elettriche”, Edizioni Ingegneria 2000.

[2] G. Scarano, “Dispense di elaborazione delle immagini”, infocom.uniroma1.it/gaetano.

[3] 3GPP Technical Specification TS 06.10, “Full rate speech; Transcoding”, www.3gpp.org.

[4] 3GPP Technical Specification TS 05.03, “Channel coding”, www.3gpp.org.

[5] 3GPP Technical Specification TS 26.090, “Adaptive Multi-Rate speech codec: Transcoding functions”, www.3gpp.org.

[6] 3GPP Technical Specification TS 25.212, “Multiplexing and Channel Coding (FDD)”, www.3gpp.org.

[7] 3GPP Technical Specification TS 25.222, “Multiplexing and Channel Coding (TDD)”, www.3gpp.org.

[8] 3GPP Technical Specification TS 25.944, “ Channel Coding and Multiplexing Examples”, www.3gpp.org.

23

Page 24: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Capitolo 3

Codifica del segnale audio

3.1 Principi di codifica del segnale audio

La compressione del segnale audio e di interesse in numerose applicazioni, quali la memorizzazione, la diffusione, lostreaming su reti fisse e mobili. La rappresentazione PCM del segnale audio tipicamente adottata nelle applicazionidi memorizzazione ad alta qualita (CD audio) prevede il campionamento del segnale stereo a 44.1KHz, quantizzatoa 16 bit per campione, e conduce ad un bit-rate netto 3.1 di 1.4Mb/s. A partire dalla fine degli anni ’80 sono statedefinite tecniche di codifica in grado di rappresentare il segnale con circa un bit per campione senza degradarne laqualita soggettiva. Tali tecniche possono tradursi in algoritmi molto complessi, ma sono riconducibili al principio dibase della riduzione della ridondanza percettiva dal segnale audio.

La rappresentazione delle diverse componenti del segnale puo essere tanto piu parsimoniosa quanto piu esse sonopercettivamente trascurabili. A tal fine, il segnale audio e rappresentato in un dominio in cui le componenti abbianodiversa importanza percettiva. Poiche la risposta psicoacustica ad uno stimolo presenta una sensibilita variabile conla frequenza dello stimolo stesso, il segnale e tipicamente rappresentato come sovrapposizione di componenti allocatein diverse sottobande di frequenza.

La risposta psicoacustica, oltre che funzione della frequenza dello stimolo, e funzione della presenza concomitantedi piu stimoli. Infatti, la presenza di uno stimolo di significativa potenza causa fenomeni di mascheramento percettivodi altri stimoli vicini nel tempo e in frequenza.

Richiameremo qui i principi della codifica percettiva, discutendo la rappresentazione in frequenza del segnaleaudio e i fenomeni di mascheramento percettivo in frequenza e nel tempo. Nelle sezioni successive descriveremole caratteristiche fondamentali dello standard MPEG-1 Layer I e II e Layer III, e dei suoi successori MPEG-2 eMPEG-4.

3.1.1 Rappresentazione in frequenza del segnale audio e fenomeni di mascheramento

Consideriamo un segnale audio x(t). Lo spettro del segnale, osservato su intervalli sufficientemente brevi da potersiritenere stazionario, occupa una banda che puo estendersi fino a piu di 20KHz. Il sistema uditivo umano non ha

3.1Si osservi che a valle della codifica di linea necessaria per funzionalita di sincronizzazione e correzione d’errore, ogni campione a 16 bit e indefinitiva rappresentato da 49 bit, per un bit rate complessivo di 4.32 Mb/s.

24

Page 25: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

3.1. PRINCIPI DI CODIFICA DEL SEGNALE AUDIO 25

uguale sensibilita su tutte le frequenze occupate dal segnale; ad esempio, l’intensita percepita e maggiore in corri-spondenza delle frequenze tipiche della voce umana. Esso puo essere modellato come un banco di filtri passabanda,parzialmente sovrapposti, di banda passante piu piccola (dell’ordine di 50 − 100Hz) per segnali alle frequenze piubasse, destinate ad un analisi piu fine, e di banda passante via via crescente (fino a qualche KHz).

In condizioni statiche, per ogni tono sinusoidale ad una frequenza assegnata, e possibile individuare una soglia diintensita al di sotto della quale il tono non e percepito (static threshold ). Quando sono presenti piu toni, si verificaun fenomeno che prende il nome di mascheramento in frequenza. In particolare, la presenza di un tono piu forte(masker) aumenta la soglia minima di percepibilita nelle frequenze adiacenti. Pertanto, toni di potenza piu piccoladi frequenza sufficientemente vicina divengono non percepibili (maskee). L’effetto di mascheramento si estendemaggiormente verso le frequenze piu elevate di quella del (masker) e in misura minore verso le frequenze piu basse;la banda su cui si estende il mascheramento cresce al crescere della frequenza del masker. Inoltre, il rumore ha unmigliore effetto di mascheramento di un tono sinusoidale. Fissato un assegnato spettro a breve termine del segnale,il fenomeno di mascheramento e tipicamente descritto analiticamente mediante una soglia M variabile in frequenzache rappresenta la minima potenza percepita. Il rapporto fra la potenza Ps del segnale e la soglia M e anch’essofunzione della frequenza e prende il nome di Signal to Mask Ratio:

SMRdef=

Ps

M

Supponiamo che sia presente, oltre al segnale, una componente di rumore di potenza Pn, ad esempio dovuta ad erroredi quantizzazione. Fintantoche la potenza di rumore e al di sotto della soglia di udibilita:

Pn < M

ovvero fintantocheSNR =

Ps

Pn>Ps

M= SMR

tale rumore non sara percepito da un ascoltatore. Il SMR rappresenta pertanto il minimo rapporto segnale rumoreche deve essere garantito nella rappresentazione codificata della componente di segnale affinche il disturbo non siapercepibile. Analogamente, si definisce Noise to Mask Ratio il rapporto fra la potenza del rumore e la soglia ad unaassegnata frequenza (NMR), e la condizione di non percepibilita richiede NMR < 1.

Un altro fenomeno di mascheramento ha luogo nel tempo. L’occorrenza di un suono piu potente puo mascherareuno piu debole che occorra in un intervallo di tempo successivo di durata variabile fra i 50ms e i 200ms. Ilmascheramento puo avvenire anche quando il suono piu debole precede il masker, ma l’estensione temporale delfenomeno di mascheramento e di pochi millisecondi.

Consideriamo dunque un segnale audio x(t) rappresentato dalla sequenza dei suoi campioni xn estratti soddisfa-cendo le condizioni del teorema del campionamento, e rappresentati numericamente mediante un numero di bit percampione tale da ritenere trascurabile la potenza dell’errore di quantizzazione nel successivo trattamento del segnale.Il segnale presenta caratteristiche di non stazionarieta. Supponiamo quindi di considerare un frammento del segnaleoriginario di lunghezza finita xn, n = 0, · · ·N − 1. I piu importanti sistemi di codifica del segnale audio si basanosu alcuni principi basilari, qui brevemente riportati.

Rappresentazione del segnale nel dominio della frequenza.

Sub-band coding

Page 26: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

26 CAPITOLO 3. CODIFICA DEL SEGNALE AUDIO

Nella codifica a sottobande la rappresentazione e realizzata applicando il segnale all’ingresso di un banco difiltri passabanda (filtri di analisi), e codificando separatamente le componenti spettrali ottenute. Tali componenti,opportunamente compresse, sono applicate in fase di decodifica ad un banco di filtri che ricostruiscono il segnale(filtri di sintesi).

Transform codingIn alternativa, alla rappresentazione a sottobande, il segnale puo essere rappresentato operando sui suoi campioni

una trasformata lineare discreta, i cui coefficienti sono successivamente quantizzati e trasmessi. Eventualmente, laporzione di segnale da analizzare puo essere rappresentato applicando l’operazione di trasformata a blocchi par-zialmente sovrapposti, in modo da ridurre eventuali artefatti ai confini fra blocchi trasformati compressi in modoindipendente.

Hybrid codingLa rappresentazione a sottobande puo essere integrata con la rappresentazione basata su trasformata. In tale ap-

proccio, tipicamente, il segnale e preliminarmente rappresentato in sottobande e successivamente ciascuna sottobandae trasformata e compressa. Come vedremo nel seguito, questo tipo di rappresentazione e adottata nello standardMPEG-1 Layer III, Also Known As (AKA) MP3.

Qualsiasi sia il tipo di rappresentazione adotata, la codifica opera una analisi spettrale a breve termine del segnalefinalizzata ad identificare l’andamento spettrale del SMR. Per un fissato andamento del SMR, e possibile ridurrel’informazione trasmessa in modo impercepibile se l’errore introdotto presenta una potenza inferiore alla soglia sututto la banda del segnale. Pertanto l’analisi consente di individuare, frequenza per frequenza, la massima potenzaper l’errore dovuto alla compressione. Ad esempio, supponendo di rappresentare la componente di frequenza inquestione mediante una codifica PCM, la determinazione della soglia conduce alla determinazione della massimapotenza dell’errore di quantizzazione tollerabile, ed, in definitiva, al numero di bit che devono essere allocati per larappresentazione della componente.

Inoltre, la codifica puo trarre vantaggio dall’operare un’adattamento della finestra di analisi temporale per limitarealcuni fenomeni di distorsione, detti fenomeni di pre-eco, che hanno luogo quando all’interno della finestra temporaleda comprimere e presente un segnale di tipo a gradino, con una netta discontinuita piano-forte. Infatti in tali casil’analisi spettrale della finestra conduce a determinare la soglia di mascheramento tenendo conto della presenza ditale segnale che funge da masker, e a effettuare la compressione di conseguenza. Tuttavia, data la non stazionarietadel segnale in questione, il fenomeno di mascheramento percettivo non opera se non pochi millisecondi prima che ilsegnale appaia. Quindi, l’errore di quantizzazione non percepibile dopo che e presente il masker, e invece percepibileprima. Pertanto, nella decodifica del blocco tale errore si manifesta come un artefatto percepibile che precede ilmasker, e che prende il nome di pre-eco. La lunghezza delle sezioni di segnale analizzate e codificate deve pertantoadattarsi, in modo che in presenza di una transizione, la lunghezza della finestra sia piccola. In tal modo il numero dicampioni su cui e presente il preeco sia ridotto; quando tale numero e molto piccolo, il preeco diviene impercepibilegrazie al mascheramento temporale (vedi Fig.3.1).

3.2 Lo standard MPEG-1 Audio

Lo standard MPEG-1, formalizzato in ambito ISO all’inizio degli anni ’90, si e rapidamente diffuso grazie ad alcunecircostanze favorevoli. In primo luogo e uno standard aperto, realizzabile da chiunque a partire dal documentodi definizione dello standard, acquistabile dall’ISO. In secondo luogo esso e largamente documentato grazie alla

Page 27: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

3.2. LO STANDARD MPEG-1 AUDIO 27

Figura 3.1: Esempio di generazione di un fenomeno di preeco e del suo superamento mediante adattamento della finestratemporale per l’analisi in frequenza.

disponibilita di software pubblico sviluppato durante i lavori di standardizzazione al fine di verificare e esplicitarele funzionalita della codifica e decodifica. In terzo luogo, esso prevede uno sbilanciamento della complessita acarico del codificatore, mentre il decodificatore e quanto possibile semplificato, cos´ da abilitare la produzione diriproduttori (player) a basso costo. Infine, la standardizzazione e intervenuta tempestivamente rispetto all’avventodella digitalizzazione dei contenuti multimediali, anticipando e scoraggiando il proliferare di soluzione proprietariedi interoperabilita necessariamente limitata.

Lo standard di codifica audio consta di tre schemi di codifica (Layers) di complessita ed efficienza di compressionecrescente, che sono qui di seguito sinteticamente descritti. In tutti i casi, i dati codificati sono organizzati in trame(frame ) decodificabili indipendentemente le une dalle altre, costituite rispettivamente dalla rappresentazione codificatadi 384 campioni per il Layer-I e di 1152 per i Layer-II e III. Osserviamo che tali trame sono di lunghezza in bitvariabile con il bit-rate. Ad esempio, per audio Layer-III MPEG audio campionato a 44.1KHz ogni trama rappresentaun intervallo di 38.28msec. Per un bit-rate 384 kbits/sec la trama corrisponde a 1.8 KBytes. Il bit-rate dell’audiocodificato con MPEG-1 varia da un minimo di 32 Kb/s per segnale mono ad un massimo che dipende dalla complessitadella codifica adottata e dalla qualita desiderata. In Tabella sono riportati i bit-rate medi tipicamente richiesti daidiversi Layer per la codifica percettivamente trasparente, ovvero caratterizzata da artefatti di compressione nonpercepibili, di segnale audio stereo; la qualita del segnale decodificato e pertanto quella di un CD audio.

3.2.1 Layer I e II

Gli schemi di codifica MPEG-1 Layer I e II operano una codifica a sottobande. Entrambi gli schemi si basano sulladecomposizione del segnale di ingresso in sequenze di lunghezza assegnata pari a 384 o 3 × 384 = 1152 campioni,corrispondenti ad intervalli temporali di analisi di durata differente in funzione della frequenza di campionamentodel segnale all’ingresso. Fissiamo l’attenzione sulla modalita operativa per frequenza di campionamento del segnaledi ingresso a 48KHz, ovvero segnale limitato in banda a 24KHz.

La sequenza oggetto della codifica e applicata all’ingresso di un banco di 32 filtri che effettuano la decomposizionedel segnale in 32 sottobande di larghezza uniforme; la larghezza di ciascuna sottobanda e pari ad 1/32 della banda

Page 28: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

28 CAPITOLO 3. CODIFICA DEL SEGNALE AUDIO

iniziale, ovvero 24KHz/32 = 750Hz. L’operazione di filtraggio e realizzata ricorrendo ad una struttura di calcolomolto efficiente, realizzata da un banco di filtri passabanda, denominati polifase, di lunghezza 512 coefficienti e dilarghezza di banda a 3 dB di 750 Hz; i filtri sono pertanto parzialmente sovrapposti in frequenza. Ciascuna delle 32sequenze in uscita al banco di filtri polifase e sottocampionata nel tempo di un fattore 32, e pertanto e costituita da384/32 = 12 campioni nel caso del Layer I o da 3×12 campioni nei Layer II e III. I filtri di analisi al codificatore edi filtri di sintesi al decodificatore sono progettati in modo tale che, in assenza di compressione, il segnale ricostruitoall’uscita del banco di filtri di sintesi in decodifica sia uguale all’originale.

Per ciascuna sottobanda si valuta il massimo valore assunto all’interno del blocco di 12 campioni; tale valorerappresenta il fattore di scala relativo al blocco. Nel Layer I e trasmesso il fattore di scala, nel Layer II e trasmessala tripletta di fattori di scala relativi a blocchi di 12 campioni adiacenti; in questo secondo caso la codifica sfrutta lacorrelazione fra fattori di scala con un risparmio in bit di circa il 50% rispetto al Layer I.

I blocchi di campioni in uscita alle diverse sottobande sono quindi quantizzati, ricorrendo a quantizzatori uniformi.I livelli di quantizzazione variano a seconda della sottobanda interessata. In tal modo, la fase di quantizzazione sfruttail mascheramento percettivo allocando meno bit per la quantizzazione dei campioni relativi alle sottobande in cui lasoglia di mascheramento dinamico e piu elevata. L’allocazione dei bit parte da un numero di bit pari a zero su tuttele sottobande, e aumenta selettivamente fintantoche il livello della potenza dell’errore di quantizzazione non scendeal di sotto della soglia in ogni sottobanda.

Osserviamo che la soglia di mascheramento dinamico puo essere calcolata mediante un’analisi FFT della sequenzada comprimere; il calcolo della soglia di mascheramento non e definito dallo standard -che tuttavia contiene due sezioniinformative che identificano due metodi di calcolo- e puo essere realizzato in modo piu o meno sofisticato, tenendoeventualmente in conto la natura tonale o rumorosa del mascherante. In definitiva, la determinazione della soglia el’allocazione ottima dei bit dal punto di vista della qualita percepita costituisce un elemento critico della codifica edistingue le diverse soluzioni sviluppate.

3.2.2 Layer III

Il Layer III e uno schema di codifica ibrido, che coniuga cioe la rappresentazione a sottobande con l’utilizzo ditrasformate, a bit-rate costante o variabile, che opera su blocchi di 1152 campioni del segnale di ingresso. Essoprevede la divisione in sottobande, realizzata mediante lo stesso banco di filtri polifase descritti per il Layer I eII, e la decimazione delle componnti di segnale cos´ ottenute. Le sequenze relative alle diverse sottobande sonoquindi costituite da 3× 12 = 36 campioni. Per ciascuna sequenza di 36 campioni, tre differenti fattori di scala sonoindividuati e codificati come nel Layer II.

La sequenza in uscita a ciascuna sottobanda e quindi sottoposta ad una rappresentazione del segnale in frequenzamediante una trasformazione lineare che prende il nome di Modified Discrete Cosine Transform3.2. Tale trasformazio-

3.2Indichiamo con xn, n = 0, · · ·N − 1 una sequenza di lunghezza finita N . La trasformata MDCT di tale sequenza e definita come:

XMDCTk =

N−1Xn=0

xn cos

„2π(n + 1/2 + N/4)(2k + 1)

2N

«, k = 0, · · ·N/2 − 1

Osserviamo che la MDCT associa ad N campioni nel tempo N/2 campioni trasformati. La sua trasformata inversa Inverse MDCT e definitacome

xIMDCTn =

2

N

N/2−1Xn=0

xn cos

„2π(n + 1/2 + N/4)(2k + 1)

2N

«n = 0, · · ·N − 1

La IMDCT non ricostruisce gli N campioni nel dominio originale, dal momento che non dispone di N coefficienti reali. Tuttavia, applicando

Page 29: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

3.3. LO STANDARD MPEG-2 AUDIO 29

ne consente di calcolare, a partire dai 36 campioni del segnale relativo alla singola sottobanda, fino ad un massimo di18 componenti frequenziali diverse per ciascuna delle 32 sottobande. I coefficienti trasformati sono quindi quantizzaticon allocazione dei bit e dei livelli differenziata non solo fra le diverse sottobande, ma anche, per ciascuna sottobanda,fra le diverse componenti MDCT3.3 . Cio consente di differenziare la qualita della codifica all’interno di ciascunasottobanda, tenendo conto in modo piu fine dei fenomeni di mascheramento. La quantizzazione e non uniforme, ed ecaratterizzata da livelli piu fitti in corrispondenza dei valori piu piccoli3.4. Quando il segnale presenta caratteristichedi stazionarieta, la MDCT opera su blocchi di 36 campioni calcolando 18 componenti frequenziali distinte. Quandoil segnale presenta una brusca discontinuita ,la lunghezza della sequenza su cui opera la MDCT viene ridotta, al finedi limitare i fenomeni di preeco. In tal caso, la trasformazione opera su blocchi di 12 campioni e consente il calcolodi 6 componenti frequenziali distinte. Tali componenti sono a loro volta quantizzate in modo differenziato e nonuniforme. I coefficienti MDCT quantizzati sono ulteriormente codificati mediante codice di Huffmann.

Come gia descritto per i Layer I e II, l’allocazione e effettuata sulla base di un’analisi spettrale del segnaleche consenta di calcolare la soglia di mascheramento percettivo. La potenza del rumore di quantizzazione e quindimantenuta al di sotto di tale soglia, per cercare di ottimizzare la qualita finale dell’audio ricostruito.

MPEG-1 Bit-rateLayer I 384Kb/s

Layer II 192Kb/s

Layer III 128Kb/s

Tabella 3.1: Bit-rate richiesto per la codifica trasparente di segnale audio stereo.

Osserviamo che la codifica MPEG-1 di segnale stereo puo avvalersi di una codifica congiunta dei due canaliaudio, che sfrutti la correlazione fra i due segnali e le caratteristiche dell’apparato psicoacustico umano. In particolare,per segnali a frequenze superiori ai 2-3 KHz, l’apparato psicoacustico e sensibile all’intensita del segnale e albilanciamento di potenza fra i canali destro e sinistro. Pertanto, e possibile approssimare la coppia dei segnali checostituiscono il segnale stereo codificando un unico segnale di intensita, generato come somma dei segnali destro esinistro, e trasmettendo indipendentemente i fattori di scala relativi ai due canali.

I dati relativi a 384 o 1152 campioni sono organizzati in trame audio di lunghezza variabile, dotate di informazioniaggiuntive di sincronizzazione, protezione (CRC) e descrizione del contenuto (titolo, autore, copyright, etc.).

3.3 Lo standard MPEG-2 Audio

Lo standard MPEG-2 Audio prevede tanto algoritmi di codifica compatibili con quelli definiti da MPEG-1 (MPEG-2Forward/Backward Compatible), quanto algoritmi di codifica avanzati (MPEG-2 Advanced Audio Coding). Talialgoritmi sono analoghi a quelli definiti in MPEG-1, ma con alcuni raffinamenti, principalmente riferibili a:

la MDCT a sequenze sovrapposte del 50 % e calcolando le relative IMDCT, e possibile ricostruire la sequenza xn mediante tecniche di Overlapand Add.

3.3I coefficienti MDCT di ciascuna sottobanda sono divisi in gruppi, ciascuno dei quali corrisponde approssimativamente ad una banda critica; aidiversi gruppi sono quindi applicati passi di quantizzazione differenti, cosi’ da controllare il rapporto segnale rumore in funzione dell’andamentodella masking threshold.

3.4La quantizzazione non uniforme e realizzata ricorrendo a un compandor (η(x) = x3/4).

Page 30: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

30 CAPITOLO 3. CODIFICA DEL SEGNALE AUDIO

• aumento della risoluzione in frequenza: MPEG-2 AAC opera una codifica a trasformata MDCT che conducead una risoluzione massima in frequenza di 1024 componenti spettrali, che sono raggruppate tipicamente in 43bande cui vengono assegnati passi di quantizzazione (scale factors) differenti;

• maggiore flessibilita di adattamento della finestra temporale alle caratteristiche del segnale, che puo variare da2048 a 256 campioni, con conseguente riduzione dei fenomeni di preeco;

• introduzione di tecniche predittive nel dominio del tempo e della frequenza; in particolare MPEG-2 AACintroduce una tecnica di adattativita temporale della quantizzazione che prende il nome di Temporal NoiseShaping3.5.

Lo standard MPEG-2 Backward Compatible offre compatibilita all’indietro, nel senso che consente ad un co-dificatore MPEG-2 di generare un bit-stream decodificabile da un decodificatore MPEG-1, e lo standard ForwardCompatible offre compatibilita in avanti, nel senso che consente ad un decodificatore MPEG-2 la decodifica di unbit-stream MPEG-1.

Un aspetto importante dello standard MPEG-2 Audio e che esso consente una efficiente rappresentazione di audiodi tipo multicanale. Tale audio puo essere codificato per una decodifica simultanea, al fine di generare un contestoaudio multisorgente, o per consentire il trasporto di piu traccie audio alternative, per esempio relative a diverse linguedi riproduzione. Il contesto multicanale tipico di applicazioni di cinema e HDTV e stato standardizzato in ambitoITU-R, e e prevede un formato p/q basato su p canali frontali e q canali posteriori. Il formato piu diffuso e’ ilformato 3/2 stereo, con un ulteriore canale opzionale, detto di Low Frequency Enhancement (LFE o subwoofer), cheestende il contenuto di frequenze e innalza il livello dei segnali nella banda dai 15 Hz ai 120 Hz.

Nel caso multicanale i canali non sono codificati indipendentemente, ma in modo combinato, anche al fine digarantire la compatibilita all’indietro verso la decodifica MPEG-1 di segnali stereo. Pertanto, in fase di codifica icanali sono mixati al fine di ottenere i due canali destro e sinistro di un sistema stereo tradizionale (2/0). Questiultimi sono codificati in modo da consentire la decodifica da parte di un deocodificatore MPEG-1. I rimanentitre canali sono poi codificati in modo tale che un decodificatore MPEG-2 possa ricostruire i 5 canali del sistema3/2. E’ interessante osservare che quando si opera la compressione su canali miscelati, si sfruttano i fenomeni dimascheramento presenti in tali canali. Quando poi, a partire da questi, sono ricostruiti i 5 segnali del sistema 3/2, epossibile che nel segnale ricostruito all’uno o all’altro dei canali tali mascheramenti non siano piu presenti, e quindisul segnale decodificato sia presente una sensibile distorsione. Il mixaggio dei canali a monte della codifica devetenere conto di tali fenomeni di unmasking.

3.4 Lo standard MPEG-4 Audio

Lo standard MPEG-4 Audio prevede alcuni aspetti innovativi rispetto agli standard di codifica audio precedenti, cheriflettono i principi che hanno ispirato l’attivita di standardizzazione ISO-MPEG-4. Li richiamiamo qui brevemente.

Integrazione di audio sintetico e naturale

3.5La tecnica di Temporal Noise Shaping consente di rappresentare in modo compatto picchi transitori nel dominio del tempo utilizzando formedi predizione nel dominio della frequenza, in modo duale a cio che avviene nel LPC.

Page 31: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

3.4. LO STANDARD MPEG-4 AUDIO 31

Lo standard prevede strumenti di codifica estremamente differenziati, finalizzati a premettere la codifica sia di voce,sia di audio, sia di suoni sintetici. In altre parole la sintassi consente una estrema di flessibilita di rappresentazione,e il decodificatore puo in linea di principio essere costituito anche da un sistema MIDI o da un sistema Text-to-Speech. La sintassi consente di rappresentare suoni e musiche mediante un linguaggio simbolico detto StructuredAudio Orchestra Language, che viene interpretato al decodificatore consentendo la sintesi dei suoni codificati.

Gli strumenti effettivamente usati nella singola istanza di codifica dipendono dal contesto, e possono essere fissatida appropriate raccomandazioni, ovvero contrattati all’inizio della sessione di comunicazioni, ovvero codificati in unappropriato formato per applicazioni di memorizzazione.

Supporto di codifica di suoni naturali per bit-rate variabile fra 2 Kb/s e 64 Kb/sLo standard consente di selezionare i codificatori di suoni naturali in funzione delle applicazioni, e offre diverse

sintassi di codifica. Puo quindi offrire tanto una sintassi per codifica vocale a basso bit-rate basata su codec CELPquanto una sintassi per codifica audio compatibile con lo standard MPEG-2 AAC. Come vedremo lo standard MPEG-4 AAC che rappresenta il profilo di codifica per l’audio ad alta qualita e suggerito dal 3GPP per servizi di streamingnell’UMTS.

Supporto di codifica robusta rispetto agli errori di trasmissionePer motivi storici, lo standard MPEG-4 audio e stato il primo sviluppato tenendo conto delle possibilita di diffusione diaudio su canali affetti da errori di trasmissione quali quelli radiomobili. Esso prevede che il bit-stream goda di proprietadi Resilience, ovvero sia quanto possibile robusto rispetto ad errori sui singoli bit, quando essi siano localizzati. Inoltrelo standard diverse funzionalita di protezione mediante codici a correzione o rivelazione d’errore, eventualmenteapplicabili in modo mirato a diverse componenti del bit-stream. Rispetto ai casi di protezione dell’informazionediscussi per il segnale vocale, si presenta l’importante differenza che il carico della protezione e affidato alla coppiacodificatore/decodificatore di sorgente.

Page 32: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Bibliografia

[1] P. Noll, “MPEG Digital Audio Coding”, IEEE Signal Processing Magazine, September 1997, pp.59-81.

[2] D. Pan, “A tutorial on MPEG/Audio Compression”, IEEE Transactions on Multimedia, Vol. 12, no. 2, 1995, pp.60-74.

[3] K. Brandenburg, “MP3 and AAC explained”, AES 17-th International Conference on High Quality Audio Coding.

[4] D. Thom, H. Purnhagen, “MPEG Audio FAQ Version 9 MPEG-4”, Documento ISO/IEC JTC1/SC29/WG11 N2431, N2431.doc.

32

Page 33: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Capitolo 4

Codifica di Immagini

4.1 Principi di codifica di immagini fisse

Questo capitolo richiama brevemente alcuni concetti esposti in dettaglio in [1], qui riportati per facilitare l’accessoal lettore.

Un’immagine digitale e una particolare sequenza bidimensionale x[n1, n2] definita su un supporto finito n1 =

0, · · ·N − 1, n2 = 0, · · ·N − 1. Poiche un colore puoessere percettivamente riprodotto miscelando opportunamentetre sorgenti, e usuale rappresentare un’immagine a colori mediante tre sequenze bidimensionali, che in ogni puntorappresentano il peso relativo di ciascuna delle tre sorgenti ”primarie“. Una terna di sorgenti di riferimento nelleapplicazioni di elaborazione, codifica e trasmissione delle immagini corrispondenti tipicamente alle componenti rossaverde e blu e quella definita dal Comitee International de l’Eclairage (CIE) (1920), RCIE = 700 nm,GCIE =

746.1 nm,BCIE = 435.8 nm4.1. Una terna alternativa, comunemente utilizzata nella rappresentazione di immaginiin forma digitale e costituita dalla luminanza (Y ), rappresentativa del livello di luminosita espresso in scala di grigio,e da due componenti di crominanza che rappresentative di differenze di colore (CR, CB), definite come:

Ydef= αRR+ αGG+ αBB, αR + αG + αB = 1; αG > αR, αG > αB

CB(U) ∝ B − Y

CR(V ) ∝ R− Y

4.2 Un’immagine rappresentata in forma digitale e definita su un supporto discreto e finito; anche le informazionidi colore sono rappresentate in forma numerica mediante un numero finito di bit per campione, con un livello diqualita visuale dipendente dal numero di bit prescelto. Quando un’immagine e rappresentata nella forma luminanza-crominanze, e possibile sfruttare la circostanza che l’apparato visivo umano e meno sensibile ai dettagli dell’infor-mazione di crominanza rispetto a quanto lo sia ai dettagli dell’informazione di luminanza. Pertanto la frequenza dicampionamento spaziale puo essere diversa per le diverse componenti, ed in particolare ridotta per le componenti dicrominanza.

I principali standard internazionali che definiscono le modalita di rappresentazione delle immagini sono le Rac-comandazioni ITU-R BT 601 (anche nota come CCIR 601) e ITU-R BT 609. Tali raccomandazioni definiscono

4.1Molto utilizzata e anche la definizione di sorgenti (RN , GN , BN) definita dal National Television Systems Committee (NTSC) (1950).4.2La definizione piu comune (NTSC, ITU-R BT.601, ITU-R BT.709, JFIF, SMPTE) di luminanza pone αR = 0.299,αG = 0.587,αB =

0.114.

33

Page 34: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

34 CAPITOLO 4. CODIFICA DI IMMAGINI

alcune modalita di rappresentazione di immagini a colori su un dominio discreto, che tipicamente prevedono unsottocampionamento per la componenti di crominanza e differiscono per le posizioni relative delle griglie di campio-namento delle diverse componenti. Le piu diffuse modalita di sottocampionamento sono riportate in Tab. 4.1. Nellarappresentazione luminanza/crominanze, inoltre, e usuale quantizzare con un numero maggiore di bit i campioni diluminanza (ad es. 8 bit) e con un numero minore i campioni delle crominanze (ad es. 4 bit).

Modalita di sottocampionamentoNome Caratteristiche4:4:4 Ognuno dei tre canali presenta lo stesso sampling rate, ovvero a 4 campioni

di luminanza corrispondono 4+4=8 campioni di crominanza4:2:2 I canali di crominanza sono sottocampionati di un fattore 2 nella direzio-

ne orizzontale, ovvero a 4 campioni di luminanza corrispondono 2+2=4campioni di crominanza

4:2:0 I canali di crominanza sono sottocampionati di un fattore 2 sia nella direzioneorizzontale che nella direzione verticale, ovvero a 4 campioni di luminanzacorrispondono 2 campioni di crominanza

Tabella 4.1: Modalita di sottocampionamento piu diffuse nell’elaborazione di immagini e sequenze video.

Page 35: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

4.1. PRINCIPI DI CODIFICA DI IMMAGINI FISSE 35

Trasformata Coseno Discreta (DCT) di sequenze di lunghezza finitaLa Trasformata Coseno Discreta di una sequenza xn di lunghezza finita N consiste nella rappresentazione dellasequenza come sovrapposizione di N sequenze b(k)

n di lunghezza finita N, che costituiscono una base ortonormale:⎧⎪⎪⎨⎪⎪⎩b(0)n =

1√N, n = 0, · · ·N − 1

b(k)n =

√2N

cos(

2πk

2N(n+ 1/2)

), n = 0, · · ·N − 1; k = 1, · · ·N − 1

I coefficienti DCT sono calcolati come prodotto scalare della sequenza con i vettori della base, ovvero

X0 =1√N

N−1∑n=0

xn

Xk =

√2N

N−1∑n=0

xn cos(

2πk

2N(n+ 1/2)

), k = 0, · · ·N − 1

La trasformata e invertita dalla equazione di sintesi

xn =

√1NX0 +

√2N

N−1∑k=1

Xk cos(

2πk

2N(n+ 1/2)

), n = 0, · · ·N − 1

Grazie alla ortogonalita degli elementi della base, la migliore approssimazione (nel senso quadratico medio) di xn

nel sottospazio generato da un sottoinsieme di sequenze della base, si ottiene troncando la sommatoria agli elementidi tale sottoinsieme, e conservando i coefficienti Xk relativi a tali elementi. Inoltre, poiche le sequenze {b(k)

n } sonoa norma unitaria, la trasformazione conserva l’energia della sequenza nel dominio trasformato.La DCT coincide con la trasformata di Karhounen Loeve a per processi di Markov di ordine 1.

aLa trasformazione KLT di un insieme di sequenze aleatorie x di lunghezza finita N utilizza la base ortonormale di rappresentazioneφi, i = 1, · · ·N che minimizza l’errore quadratico medio commesso rappresentando in modo approssimato la sequenza x =

PNi=0 xiφi con

una sequenza x =PM

i=0 xiφi +PN

i=M+1 ciφi, ovvero la sequenza ottenuta conservando un numero fissato M < N di coefficienti esosituendo i rimanenti con opportuni valori costanti. Si puo dimostrare che i vettori della base ortonormale (φi

H · φh = δij) e i valori deicoefficienti ci, i = 1, · · ·N che minimizzano l’errore quadratico medio E

˘||x− x||2¯= E

nPNi=M+1(xi − ci)

2o

risolvono l’equazioneE

˘(x− E {x}) · (x− E{x})H

¯φi = λiφi, ovvero sono gli autovettori della matrice di covarianza delle sequenze in questione, e i valori

costanti sono pari a ci = E {xi} = E {x}H φi, i = 1, · · ·N . Per processi di Markov di ordine 1 gli autovettori della matrice di covarianza,ovvero i vettori della base KLT, concidono con i vettori della base DCT.

A titolo puramente esemplificativo, la figura rappresenta la trasformata ottima di una v.a. Gaussiana bidimensionale x = [x1, x2]T di valor

medio nullo mx = [0,0]T e matrice di covarianza Kx =

"2 1

1 2

#. La ddp risulta px =

1

2π det(Kx)1/2exp

j−1

2xT K−1

x x

ff. Gli

autovettori sono b1 =

"1/

√2

1/√

2

#, relativo all’autovalore λ1 = 3, e b2 =

"−1/

√2

1/√

2

#, relativo all’autovalore λ2 = 1. Le componenti

Xi = xT bi, i = 1,2 sono incorrelate (E {X1 X2} = 0) ed hanno rispettivamente varianza E˘X2

1

¯= 3, E

˘X2

2

¯= 1.

.

Page 36: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

36 CAPITOLO 4. CODIFICA DI IMMAGINI

Figura 4.1: Esempio di trasformata ottima: x = [x1, x2]T v.a. Gaussiana bidimensionale di valor medio nullo e matrice di

covarianza Kx.

4.2 Rappresentazione dell’immagine nel dominio DCT

Il principio fondamentale su cui si basa la codifica di immagini fisse e la rappresentazione dell’immagine o di sueparti in un dominio trasformato, che goda di alcune caratteristiche fondamentali:

• la trasformazione operi la compattazione dell’energia in pochi coefficienti;

• i coefficienti che rappresentano l’immagine nel dominio trasformato abbiano differente rilevanza soggettiva,cos´ che su di essi possa essere operata una quantizzazione mirata a ridurre i bit assegnati ai coefficienti menosignificativi;

Poiche pressoche tutti i principali standard di codifica di immagine operano la trasformazione su blocchi quadratiNxN, assumeremo subito questo come caso di riferimento. Consideriamo il blocco NxN come elemento di unospazio vettoriale. La trasformazione del blocco puo essere interpretata come rappresentazione del blocco stesso inuna opportuna base dello spazio vettoriale. Gli elementi della base sono a loro volta particolari blocchi NxN. La basepiu utilizzata e quella relativa alla Trasformata Coseno Discreta (DCT), i cui elementi sono NxN blocchi, ciascunodi dimensione NxN:

b(k1,k2)DCT [n1, n2]

def= α(k1)α(k2) cos(

2πk1(n1 + 1/2)2N

)cos

(2πk2(n2 + 1/2)

2N

),

n1, n2 = 0, · · ·N − 1, k1, k2 = 0, · · ·N − 1

Page 37: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

4.2. RAPPRESENTAZIONE DELL’IMMAGINE NEL DOMINIO DCT 37

con α(0) def=√

1N e α(k) =

√2N per 1 ≤ k ≤ N − 1.

Come si vede il singolo elemento della base DCT e una funzione separabile, costituita dal prodotto di funzionisinusoidali, con una periodicita variabile con l’indice k. I fattori α(k) assicurano l’ortonormalita della base.

Figura 4.2: Immagini della base DCT.

I coefficienti dello sviluppo del blocco di dimensione NxN x[n1, n2] si determinano calcolando il prodotto scalarecon le relative funzioni della base:

XDCT[k1, k2] =< x[n1, n2], b(k1,k2)DCT [n1, n2] >

def=N−1∑n1=0

N−1∑n2=0

x[n1, n2]b(k1,k2)DCT [n1, n2]

e a partire da essi e possibile sintetizzare il blocco originario

Page 38: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

38 CAPITOLO 4. CODIFICA DI IMMAGINI

x[n1, n2] =N−1∑k1=0

N−1∑k2=0

X(DCT)[k1, k2]b(k1,k2)DCT [n1, n2]

La trasformata DCT offre interessanti proprieta di compattazione dell’energia nelle componenti a bassa frequenza,ovvero nei coefficienti XDCT [k1, k2] di basso indice.

La trasformazione ottima dal punto di vista della capacita di compattare l’energia di immagini aleatorie e notacome trasformata di Karhounen Loeve (KLT) e dipende dalle caratteristiche statistiche di autocorrelazione esibite dalleimmagini stesse. Per particolari classi di immagini stocastiche (campi di Markov di ordine 1), la KLT coincide con laDCT. Poiche una vasta classe di immagini naturali e ben approssimata da tale modello stocastico, si deduce che per taliimmagini la DCT e una buona approssimazione della trasformazione ottima. La compattazione dell’energia operatadall’applicazione della DCT a blocchi 8x8 di immagini naturali e stata la tecnologia abilitante per la compressionedi imagini fisse ed anche in larga misura per la compressione di sequenze video. Tale approccio e stato affiancatoda approcci differenti solo nei piu recenti standard di codifica (JPEG2000 per immagini fisse e H.264 per sequenzevideo).

Dal punto di vista operativo osserviamo che la Trasformata DCT puo essere calcolata mediante strutture computa-zionali estremamente efficienti. Poiche utilizza funzioni cosinusoidali, cioe a valori reali, le diverse implementazionipresenteranno differenze numeriche che rendono la trasformazione non perfettamente invertibile se operata con calco-latori con differente precisione e struttura di calcolo. Pertanto, gli standard che utilizzano tale trasformata specificanoi limiti di accuratezza numerica che devono essere rispettati al fine di garantire l’interoperabilita fra sistemi dotati direalizzazioni numeriche differenti.

4.2.1 Riduzione di ridondanza psicovisuale mediante quantizzazione

Le immagini naturali hanno un contenuto energetico prevalentemente rappresentato da basse frequenze. Pertanto, nontutti i coefficienti relativi alle alte frequenze sono diversi da zero. Inoltre, il sistema visivo umano è meno sensibilealle alte frequenze, che contengono l’informazione relativa ai dettagli fini, alla tessitura, piuttosto che alle basse.Pertanto, i coefficienti alle alte frequenze possono essere quantizzati con un limitato numero di bit, senza introdurreuna distorsione sensibile dal punto di vista psicovisuale. Al limite, alcuni coefficienti possono essere scartati, senzache l’errore di ricostruzione sia soggettivamente percepibile.

Al contrario, i coefficienti alle basse frequenze necessitano di una migliore rappresentazione; fra questi, il coeffi-ciente X(DCT)[0, 0], che rappresenta il valore medio della componente nel blocco osservato (coefficiente DC) rivestela maggiore importanza visuale e necessita della quantizzazione piu fine.

4.3 Lo standard JPEG

La struttura essenziale di un codificatore JPEG è mostrata nella Fig.4.3, che rappresenta la modalita di codifica dibase, detta modalita sequenziale, e che consta di tre passi fondamentali, ovvero

• rappresentazione dei dati in un dominio trasformato

• quantizzazione

• codifica entropica

Page 39: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

4.3. LO STANDARD JPEG 39

Figura 4.3: Schema del Codificatore JPEG

Ogni componente (luminanza, crominanze) dell’immagine da codificare è suddivisa in blocchetti da 8x8 pixel4.3.Ciascuno di questi blocchetti è trasformato mediante DCT, senza perdita di informazione. I 64 coefficienti DCT sonoapplicati all’ingresso del quantizzatore. Tipicamente, tra i 64 coefficienti DCT assumono valore significativamentediverso da zero solo quelli relativi alle frequenze spaziali piu basse.

Figura 4.4: Suddivisione dell’immagine in blocchi 8x8 e relativa DCT

A ciascun coefficiente DCT X(DCT)[k1, k2] e associato uno specifico passo di quantizzazione Q[k1, k2], cherappresenta l’ampiezza dell’intervallo di quantizzazione adottato nella quantizzazione uniforme del coefficiente di

4.3La dimensione 8x8 dell’elemento di immagine da trasformare e la stessa per tutte le componenti anche quando le crominanze sianosottocampionate rispetto all’immagine originale.

Page 40: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

40 CAPITOLO 4. CODIFICA DI IMMAGINI

indici [k1, k2]. Tale passo e inversamente crescente con l’importanza visuale. I livelli di quantizzazione dei coefficienticorrispondenti alle alte frequenze spaziali sono tipicamente relativamente grandi. Per ogni coefficiente e operata unaquantizzazione uniforme con intervalli di quantizzazione pari Q[k1, k2]: :

X(DCT)[k1, k2] = round(X(DCT)[k1, k2]Q[k1, k2]

,

)k1, k2 = 0, · · · , 7

Si osservi che quando un coefficiente DCT assume valori minori del relativo passo di quantizzazione, a valle dellaquantizzazione esso e rappresentato da un valore nullo.

Lo standard consente la scelta degli 8x8 valori dei passi di quantizzazione, che sono inseriti nei dati codificati.A titolo esemplificativo, nello standard sono inseriti i valori riportati in Tabella 4.3; tali valori possono essere scalatitramite un fattore moltiplicativo scalare, al fine di bilanciare le prestazioni del codificatore in termini di efficienza dicompressione e di qualita.

Luminanza (Y )16 11 10 16 24 40 51 6112 12 14 19 26 58 60 5514 13 16 24 40 57 69 5614 17 22 29 51 87 80 6218 22 37 56 68 109 103 7724 35 55 64 81 104 113 9249 64 78 87 103 121 120 10172 92 95 98 112 100 103 99

Crominanza (CRCB)17 18 24 47 66 99 99 9918 21 26 66 99 99 99 9924 26 56 99 99 99 99 9947 66 99 99 99 99 99 9966 99 99 99 99 99 99 9999 99 99 99 99 99 99 9999 99 99 99 99 99 99 9999 99 99 99 99 99 99 99

Tabella 4.2: Tabelle dei passi di quantizzazione Q[k1, k2] suggerite nello standard JPEG.

A valle della quantizzazione, ciascun blocco 8x8 dell’immagine originale e rappresentato da un blocchetto DCTi cui coefficienti sono stati quantizzati in base a criteri di rilevanza psicovisuale. La Trasformata DCT ha operato uncompattamento dell’energia e la quantizzazione adattativa ha rimosso le componenti ad alta frequenza percettivamenteirrilevanti. Pertanto, ciascun blocco presenta una struttura tipica in cui la grande maggioranza dei coefficienti sononulli, e i pochi coefficienti non nulli sono concentrati alle basse frequenze. Inoltre, esiste una correlazione residua fratrasformate di blocchi spazialmente adiacenti. In particolare, i coefficienti X(DCT)[0, 0], valutati su blocchi adiacenti,sono molto correlati, dal momento che rappresentano il valor medio di luminanza di regioni adiacenti di un immaginenaturale. La struttura dei blocchi DCT e la correlazione fra blocchi adiacenti e sfruttata al fine di compattarel’informazione trasmessa.

Per ciøche concerne i coefficienti X(DCT)[0, 0] di ciascun blocco 8x8, e codificata e trasmessa la differenza frail coefficiente quantizzato DC del blocco corrente e il coefficiente quantizzato del blocco precedente. Tale valoreha una dinamica nominalmente maggiore, ma tipicamente piu piccola del coefficiente originale, e pertanto richiedemeno bit per essere trasmessa con la stessa distorsione media sul valore ricostruito.

I coefficienti X(DCT)[k1, k2], (k1, k2) �= (0, 0) (coefficienti AC) sono scanditi in un ordine tale da esplorare primale basse frequenze orizzontali e verticali e successivamente le alte frequenze.

Adottando questa scansione, l’informazione si presenta come alternanza di coefficienti diversi da zero e di suc-cessione di coefficienti nulli (corse di zeri). I coefficienti tipicamente diversi da zero si addensano all’inizio dellascansione, successivamente i coefficienti non nulli tendono ad essere separati da corse di zeri via via piu lunghe, ed

Page 41: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

4.3. LO STANDARD JPEG 41

Figura 4.5: Coefficienti DC ed AC, preparazione alla codifica

alla fine della scansione pressoche tutti i coefficienti risultano nulli. Pertanto, l’informazione puo essere codificatatrasmettendo i valori dei coefficienti nel caso che questi siano diversi da zero, e la lunghezza delle corse nel caso dicoefficienti nulli. In particolare, il blocco e descritto codificando l’ampiezza (AMPLITUDE) di ciascun coefficienteAC non nullo congiuntamente alla lunghezza della corsa di coefficienti nulli (RUNLENGTH) che lo precedono nellasequenza. In linea di principio, i coefficienti DCT presentano una dinamica piu elevata rispetto ai coefficienti dell’im-magine di partenza4.4 e codificare l’ampiezza di ciascun X(DCT)[k1, k2] con il massimo numero di bit richiesto dalladinamica sarebbe dispendioso. Pertanto, al fine di limitare al minimo il numero di bit utilizzato per rappresentareciascun coefficiente il campo AMPLITUDE presenta lunghezza variabile; tale informazione (SIZE) deve essere an-ch’essa codificata e trasmessa al decodificatore. In definitiva, una corsa di zeri terminata da un coefficiente non nulloe descritta dai tre parametri (RUNLENGTH, SIZE, AMPLITUDE). Per i motivi sovra esposti, il valore differenzialedel coefficiente DC e descritto dai due parametri (SIZE, AMPLITUDE).

La coppia (RUNLENGTH, SIZE) e rappresentata tramite una parola di codice a lunghezza variabile (VariableLength Code, VLC). Il codice e costruito mediante codifica di Huffmann, rappresentando cioe con un minor numerodi bit i simboli (RUNLENGTH, SIZE) piu frequenti e con un maggior numero di bit i simboli meno frequenti. Letavole della codifica di Huffmann sono codificate e comunicate al decodificatore. L’intero che rappresenta il valoredel campo AMPLITUDE e rappresentato ancora da un codice a lunghezza variabile (Variable Length Integer, VLI).Il codice VLI non e realizzato mediante codifica di Huffmann, ma assegna parole piu lunghe ai valori di ampiezzapiu elevati, indipendentemente dalla frequenza di occorrenza relativa.

Il decodificatore sulla base delle tavole della codifica di Huffmann opera la decodifica dell’ampiezza dei livelliquantizzati dei coefficienti DCT. I coefficienti X(DCT)[0, 0] sono ricostruiti a partire dalle differenze. Quindi, sullabase dei passi Q[k1, k2] nelle matrici di quantizzazione, ciascun livello quantizzato X(DCT)[k1, k2] e riportato alla

4.4I coefficienti DCT sono calcolati come X (DCT)[k1, k2] ∝ (1/√

N) × (1/√

N) × PN−1n1=0

PN−1n2=0(· · · ) � N × (· · · ). Per N = 8 = 23,

se i valori dell’immagine sono rappresentati in virgola fissa a 8 bit/pixel, la rappresentazione di ciascun coefficiente DCT richiede 11 bit. Perimmagini ad alta qualita a 12 bit/pixel (ad es. immagini mediche, ad elevato contenuto diagnostico), ciascun coefficiente DCT richiede 15 bit.

Page 42: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

42 CAPITOLO 4. CODIFICA DI IMMAGINI

dinamica originale X(DCT)[k1, k2] · Q[k1, k2]. La trasformazione IDCT opera il calcolo della Trasformata CosenoDiscreta Inversa. I blocchi 8x8 ricostruiti sono giustapposti spazialmente generando l’immagine decodificata.

L’algoritmo di codifica sovraesposto, detto JPEG in modalita sequenziale, prevede delle varianti che sono utiliin tutte le applicazioni in cui si voglia trasferire rapidamente una versione a bassa qualità dell’immagine, e.g. perrenderla subito visibile all’utente, raffinandola poi in passi successivi.

Modalita Progressiva.

Per ciascun blocco 8x8 non sono trasmessi in un colpo solo tutti i coefficienti quantizzati, e per ciascun coefficientetutti i bit, ma l’immagine e trasmessa in modo progressivo. Alla prima iterazione puøessere trasmesso solo un sottoin-sieme dei coefficienti AC per ciascun blocco; tale approccio prende il nome di selezione spettrale. In contemporaneao in alternativa alla selezione spettrale, e possibile trasmettere solo i bit piu significativi di ciascun coefficiente;tale approccio e detto ad approssimazioni successive. Ricevuta questa descrizione sommaria di tutti i blocchetti, ildecodificatore puo decodificare una versione grossolana dell’immagine codificata, raffinandola successivamente manomano che informazioni di maggiore dettaglio sono ricevute. La scelta del numero dei coefficienti DCT e dei bit daconsiderare nelle scansioni progressive e lasciato all’implementazione.

Figura 4.6: Selezione spettrale (caso di codifica senza perdite): prima scansione (sinistra), seconda scansione(centro), ultimascansione (destra).

Figura 4.7: Approssimazioni successive (caso di codifica senza perdite): prima scansione (sinistra), seconda scansione(centro),ultima scansione (destra).

Page 43: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

4.4. LO STANDARD JPEG 2000 43

Modalita GerarchicaNella modalita gerarchica l’immagine non e trasmessa direttamente alla massima risoluzione; al contrario, sono

codificate e trasmesse versioni dell’immagine caratterizzate da risoluzione ridotta ma via via crescente, fino alla riso-luzione desiderata. Tali versioni sono ottenute filtrando passabasso (cioe sfocando) e sottocampionando 4.5 l’immagineoriginale.

Quando riceve le versioni meno risolute, il decodificatore le decodifica e le interpola per riportarle alle dimensionioriginali. In tal modo, e subito disponibile al decodificatore una versione sfocata, e compressa, dell’immagineoriginale. Via via che le nuove versioni sono rese disponibili al decodificatore, e ricostruita un’immagine piurisoluta e piu focalizzata, fino all’ultima versione che e alla risoluzione dell’immagine originale. Per ovvie questionidi efficienza, una volta codificata la prima versione sottocampionata (sfocata) dell’immagine, il codificatore noncodifichera direttamente la versione piu risoluta (focalizzata), ma solamente la differenza residua tra le due. Si notiche se il residuo finale e codificato senza perdite, anche lo schema complessivo risulta senza perdite.

Figura 4.8: Aumento di risoluzione (caso di codifica senza perdite): risoluzione 1/4 (sinistra), risoluzione 1/2 (centro), risoluzione1/1 (destra).

Modalità Senza PerditaTale modalita non prevede quantizzazione ma solo opportuna codifica senza perdita dei coefficienti DCT, basata

su una tecnica di codifica predittiva. E utilizzata in particolari applicazioni in cui non e tollerabile alcun tipo didegradazione dell’immagine (immagini mediche, telesorveglianza).

4.4 Lo standard JPEG 2000

Lo standard JPEG 2000 si basa su

• rappresentazione dell’immagine in un dominio trasformato (dominio wavelet)

• quantizzazione dei coefficienti

• opportuno ordinamento e codifica entropica dei coefficienti stessi ai fini della trasmissione

4.5Il filtraggio è necessario per evitare l’introduzione di distorsione da aliasing, visibile come una seghettatura dei bordi, nella successivaoperazione di decimazione.

Page 44: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

44 CAPITOLO 4. CODIFICA DI IMMAGINI

Al fine di rendere l’algoritmo adattabile a immagini di dimensione differente, contenendo la complessita delcalcolo, il JPEG2000 prevede la partizione dell’immagine in rettangoli non sovrapposti (Tiles), codificati indipen-dentemente e accessibili separatamente a livello di bitstream codificato. Nel caso di immagini multi componentecampionate a risoluzione diversa per ciascuna componente, i tile hanno dimensioni differenti sulle diverse componen-ti4.6. Nel seguito, supporremo che l’immagine sia descritta da un solo Tile; in presenza di piu Tiles, quanto descrittoin seguito e ripetuto per ogni Tile.

Rappresentazione dell’immagine nel dominio wavelet

Il dominio trasformato e generato mediante applicazione ricorsiva all’immagine originale I di dimensione NxN, diquattro filtri. Ciascun filtro realizza un filtraggio in direzione orizzontale (passabasso o passaalto) e un filtraggio indirezione verticale (passabasso o passaalto). Si generano cos´ quattro versioni dell’immagine, a seconda del filtraggioapplicato. I filtraggi sono seguiti da un sottocampionamento di un fattore due in direzione orizzontale e di unfattore due in direzione verticale. A valle del filtraggio e del sottocampionamento, sono disponibili quattro versionidi dimensioni N/2 × N/2 = N2/4 dell’immagine applicata all’ingresso del filtro, che differiscono a seconda deifiltraggi applicati: ILH ,LV , ILH ,HV , IHH ,LV , IHH ,HV . Ciascuna di queste versioni, a causa del sottocampionamento,

ha dimensioni ridotte di un fattore12× 1

2=

14

rispetto all’immagine d’ingresso. Il numero complessivo di punti e paria quello dell’immagine di ingresso. Le componenti in alta frequenza rappresentano dettagli spazialmente meno visibilidi quelli in bassa frequenza. Pertanto questa rappresentazione consente di evidenziare componenti visualmente piurilevanti. La domanda che si pone e: l’immagine di partenza puo essere ricostruita a partire dagli NxN coefficienti cos´ottenuti? In effetti e possibile scegliere i filtri di analisi hLL, hLH, hHL, hHH in modo che l’immagine originaria siaricostruita interpolando opportunamente e sovrapponendo i contributi delle diverse sottobande. Lo standard prevededue possibili implementazioni dei filtri, con diversi coefficienti; in particolare il filtraggio puo essere a coefficientiinteri e frazionari, e pertanto perfettamente reversibile, oppure a coefficienti reali, e pertanto irreversibile a causa didifferenze di implementazione numerica (ovvero reversibile nei limiti dell’approssimazione numerica uilizzata).

Operata questa rappresentazione dell’immagine originale, e possibile applicare nuovamente la procedura di fil-traggio e sottocampionamento all’immagine ILH ,LV , che altro non rappresenta se non una versione a minore risolu-zione (di un fattore 1/2 × 1/2) dell’immagine originale. Applicando i filtraggi passabasso e passaalto orizzontalee verticale a ILH ,LV e sottocampionando, essa sara a sua volta ripartita in quattro rappresentazioni di dimensio-ne N/4 × N/4 = N2/16. Anche a questo livello della decomposizione, l’immagine ottenuta mediante filtraggiopassabasso alle basse frequenze orizzontali e verticali rappresenta una versione a risoluzione ridotta (di un fattore1/4×1/4) dell’immagine originale. Il filtraggio e il sottocampionamento sono applicati iterativamente all’immagine,e possono essere interpretati come un’operazione di trasformazione4.7che conduce ad un dominio in cui i coefficientihanno diversa importanza visuale.

Quantizzazione

Dopo la trasformazione, i coefficienti sono quantizzati uniformemente. Lo standard prevede un differente passo diquantizzazione per ogni sottobanda. La quantizzazione puo essere reversibile, se il passo e scelto pari ad uno. Tuttavia,pure operando la scelta del passo di quantizzazione pari ad uno, la codifica puo essere con perdita. Infatti mentre

4.6La dimensione del Tile sulle diverse componenti e adattata in modo da mantenere la corrispondenza spaziale fra le rappresentazioni insottobande delle diverse componenti.

4.7E’ possibile dimostrare che tale rappresentazione costituisce una Discret Wavelet Transform dell’immagine originale.

Page 45: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

4.4. LO STANDARD JPEG 2000 45

Figura 4.9: Filtri passa-basso e passa alto irreversibili (9/7 Daubechies a coefficienti reali) utilizzati per il filtraggio ricorsivolungo le righe e colonne dell’immagine originale e delle componenti in banda base.

nel JPEG l’unico elemento di perdita nello schema di codifica e la quantizzazione, nel JPEG 2000 la compressionecon perdita puo avvenire approssimando o scartando completamente alcuni coefficienti nella fase di trasmissione.

Formazione del bitstreamPer ciascuna risoluzione, a valle della quantizzazione, le sottobande sono divise in blocchi (coding block) di

dimensione tipica 64x64 o 32x32.Per ciascun blocco, i coefficienti sono scanditi per strisce di altezza 4 e rappresentati per piani di bit, partendo

dai bit piu significativi ai meno significativi. Preliminarmente ha luogo la codifica del piano del bit piu significativo;la codifica prosegue per ciascuno dei piani successivi, articolandosi in tre passi (significance propagation, magnituderefinement, clean-up).

Per ciascun piano, sono codificati nell’ordine

• i bit dei coefficienti vicini a coefficienti risultati significativi nel piano precedente (fase di significancepropagation )

• i bit dei coefficienti risultati significativi nel piano precedente (fase di magnitude refinement )

• i rimanenti bit (fase di clean-up)

I bit sono codificati ricorrendo a tecniche piuttosto sofisticate di codifica aritmetica basata sul contesto spaziale4.8 erunlength coding, che prevedono la trasmissione di apposite tavole al decodificatore.

Il particolare ordinamento dei bit codificati e trasmessi rispecchia un ordinamento decrescente di importanzavisuale. Pertanto, la codifica con perdita puo essere realizzata interrompendo la trasmissione ad un dato livellodi risoluzione o in una data sottobanda, scartando i bit successivi. La natura dell’ordinamento garantisce unaquasi-ottimalita di questa scelta, nel senso che per un’assegnata lunghezza in bit dell’informazione da trasmettere ladistorsione visuale risultante sull’immagine ricostruita e ridotta al minimo.

Caratteristiche innovative del JPEG 2000

4.8Nella modalita detta lazy coding, la codifica aritmetica e disabilitata sui piani di bit meno significativi, al fine di ridurre sia il costocomputazionale che la sensibilita agli errori.

Page 46: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

46 CAPITOLO 4. CODIFICA DI IMMAGINI

• Lo standard JPEG 2000 offre una maggiore efficienza di compressione rispetto al JPEG nel senso che a paritadi bit/pixel ricostruisce l’immagine con una minore distorsione rispetto all’originale. Oltre a questo aspetto,presenta alcune pecularita migliorative che lo rendono preferibile da un punto di vista di sistema, che sarannoqui di seguito accennate.

• Al fine di codificare un’immagine assegnando al bitstream un fissato numero di bit, e sufficiente, dopo averfissato il parametro di quantizzazione, procedere nella codifica troncando la trasmissione quando sia statoraggiunto la dimensione prefissata del bitstream. Nel JPEG, invece, la generazione di un codice di lunghezzaassegnata puo essere ottenuto solo iterativamente, assegnando diversi valori del parametro di quantizzazione everificando la lunghezza in bit ottenuta.

• Il codice JPEG 2000, grazie alla particolare struttura a livelli successivi (embedded), gode della proprieta discalabilita. Un codice e scalabile quando consente l’accesso e la decodifica parziale del bitstream a decodi-ficatori di differente complessita. All’interno del codice JPEG 2000 e immediato separare i dati relativi allediverse risoluzioni, e per una fissata risoluzione, a diversi livelli di qualita di riproduzione. La sintassi del CodeStream prevede a questo scopo l’unita sintattica Layer, che rappresenta i dati relativi ad un fissato livello dirisoluzione. All’interno di un Layer, informazioni relative alla stessa zona spaziale sono raggruppate in appositeunita sintattiche (Packet). In particolare, un pacchetto contiene i dati codificati relativi a gruppi di blocchiche occupano posizioni corrispondenti nelle tre sottobande(LH , HV ), (HH , LV ) e (HH , HV ). L’insieme deigruppi di blocchi prende il nome di precinto. Le informazioni codificate relative ai blocchi di un precintocosituiscono un pacchetto all’interno dei dati codificati.

• Lo standard JPEG 2000 abilita la codifica differenziata di differenti regioni spaziali dell’immagine (RegionOf Interest , ROI). A valle della trasformazione wavelet, tutti i coefficienti pertinenti alla ROI ad una fissatarisoluzione sono moltiplicati per un fattore 2MAX SHIFT , dove il parametro MAX SHIFT e scelto in modoche tutti i coefficienti della ROI siano al disopra dei valori piu grandi dei coefficienti del background; in altreparole, il background e descritto sui MAX SHIFT piani di bit meno significativi e la ROI sui rimanenti piani.Quindi i coefficienti wavelet sono codificati insieme al valore di MAX SHIFT . Quando il decodificatorericostruisce valori dei coefficienti, attribuisce alla ROI tutti quelli che superano la soglia MAX SHIFT , epertanto dopo averli ricostruiti li scala di 2−MAX SHIFT riconducendoli alla dinamica originale. Il vantaggiodi questo meccanismo di separazione dei piani di bit sta nel fatto che il decodificatore non necessita di unacodifica esplicita della locazione spaziale della ROI ai fini di una corretta ricostruzione.

4.5 Trasmissione di immagini su canali affetti da errori

Le tecniche di codifica di immagini fisse utilizzano codici a lunghezza variabile, che sono intrinsecamente sensibiliad errori di trasmissione. Infatti, non essendo definita a priori la lunghezza della parola, puo accadere che un erroresu un bit trasformi una parola di codice in un’altra parola di codice, di lunghezza differente. Il decodificatore,pertanto, non solo legge una parola di codice errata, ma riprende la decodifica del bitstream da una posizioneerrata. Cio compromette la decodifica dei dati successivi. Inoltre, succede sovente che nel leggere il bitstream apartire dalla locazione errata, il decodificatore incontri sequenze di bit corrispondenti a parole di codice ammissibili,e pertanto l’errore di decodifica non sia rivelato immediatamente, ma solo dopo un intervallo di latenza causato

Page 47: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

4.5. TRASMISSIONE DI IMMAGINI SU CANALI AFFETTI DA ERRORI 47

dall’errata decodifica di alcune parole consecutive. Questo meccanismo e indicato come perdita di sincronismo frail decodificatore e il bitstream. Le tecniche di robustezza agli errori (error resilience) mirano in primo luogo alimitare al minimo numero di bit l’effetto di perdita del sincronismo con il bitstream. La tecnica piu comunementeusata consiste nell’inserimento di resynchronization markers (RM), cioe di parole di codice di lunghezza fissata, nonemulabili da combinazioni di altre parole di codice. I RM consentono al decodificatore di identificare all’interno delbitstream le locazioni corrette di accesso ai dati, e pertanto abilitano il recupero del sincronismo in presenza di erroridi trasmissione. Tanto il JPEG che il JPEG 2000 prevedono la possibilita di inserire marker di risincronizzazione neidati codificati.

Le tecniche di codifica di immagini fisse fanno un uso intensivo di meccanismi di predizione spaziale, sia nellaforma di predizione diretta dei coefficienti, sia nella costruzione di codificatori con memoria, le cui tavole di codicecioe sono scelte in funzione dei bit gia trasmessi. La presenza di un errore pertanto compromette la decodifica deidati dipendenti dal dato danneggiato. Questo meccanismo di predizione e particolarmente rilevante nel JPEG 2000,che pertanto consente di disabilitare almeno parzialmente la dipendenza dei codici aritmetici utilizzati dal contesto,migliorando la robustezza del codice a detrimento dell’efficienza di compressione.

Lo standard JPEG 2000 prevede un’estensione del profilo base (baseline) dotato di apposite funzionalita di errorresilience, detto Wireless JPEG 2000, o JPWL. Il codificatore JPWL arricchisce il codificatore JPEG 2000 di duetipi di funzionalita:

• descrizione della sensibilita agli errori delle diverse porzioni del bitstream

• protezione dagli errori delle diverse porzioni del bitstream mediante tecniche FEC,

Il decodificatore JPWL arricchisce il decodificatore JPEG 2000 di due tipi di funzionalita:

• correzione degli errori del bitstream

• descrizione degli errori residui nel bitstream stesso

La normativa specifica la sintassi da utilizzare per descrivere gli strumenti, mediante l’introduzione di quattronuove unita sintattiche di lunghezza variabile (Error Protection Capability, che descrive quali strumenti di protezionesono utilizzati, Error Protection Block, che costituisce il codice di canale effettivamente utilizzato, Error SensitivityDescriptor, che descrive la sensibilita dei dati codificati ad eventuali errori di trasmissione e pertanto consente diattuare tecniche di protezione differenziata dei dati, Residual Error Descriptor, che descrive gli errori residui dopola decodifica di canale). Tali unita sono pacchetti dati costituiti da un header, da un campo indicante la lunghezzadel pacchetto, da un campo che specifica l’uso del successivo campo dati, ed il campo dati vero e proprio. A titolodi esempio, osserviamo che l’EPB puo utilizzare qualsiasi codice a correzione di errore che sia stato registrato pressola JPWL Registration Authority (RA); il pacchetto EPB contiene sia un identificativo univoco del particolare codicesia i dati ridondanti prodotti dal codice stesso.

La distinzione funzionale dei meccanismi di descrizione delle caratteristiche di sensibilita agli errori e dei meccani-smi di protezione consente, in linea di principio, di implementare tali funzionalita in sistemi differenti dell’architetturadi rete. Ad esempio, in un sistema di distribuzione di immagini su reti eterogenee la descrizione dei dati potrebbeessere implementata a bordo del server di distribuzione delle immagini, mentre la funzionalita di protezione potrebbeessere realizzata all’interfaccia con la sottorete wireless di interesse, sia mediante introduzione di codici FEC, siamediante tecniche di ritrasmissione selettiva dei dati piu importanti.

Page 48: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

48 CAPITOLO 4. CODIFICA DI IMMAGINI

Figura 4.10: Schema di principio della codifica JPEG 2000.

Page 49: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

4.5. TRASMISSIONE DI IMMAGINI SU CANALI AFFETTI DA ERRORI 49

Figura 4.11: Esempio di codifica per piani di bit.

Page 50: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Bibliografia

[1] G. Scarano, “Dispense di elaborazione delle immagini”, http:infocom.uniroma1.it/gscarano.

[2] B. G. Haskell, P. G. Howard, Y. A. LeCun, A. Puri, J. Ostermann, M.R. Civanlar, L. R. Rabiner, L. Bottou, and P. Haffner, “Imageand Video Coding-Emerging Standards and Beyond”, IEEE Transactions on Circuits and Systems for Video Technology, Vol. 8, No. 7, pp.814-837, November 1998

[3] A. Skodras, C. Christopoulos, and T. Ebrahimi, “The JPEG 2000 Still Image Compression Standards and Beyond”, IEEE Transactions

on Circuits and Systems for Video Technology, Vol. 8, No. 7, pp. 814-837, November 1998

50

Page 51: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Capitolo 5

La compensazione di moto

5.1 Principi di motocompensazione per la codifica di sequenze video

I quadri che compongono una sequenza video naturale rappresentano la proiezione sul piano dell’immagine di oggettireali in moto, immersi in sfondi di varia natura (interni, esterni, fissi o in movimento). Essi presentano una fortecorrelazione, nel senso che l’informazione apportata da ciascun quadro e largamente predicibile a partire dal quadroprecedente. In un contesto di codifica di sorgente, e pertanto opportuno rappresentare ciascun quadro in termini di unaversione predetta a partire dal quadro precedente, piu un’immagine residua, che rappresenta l’innovazione apportatadal quadro attuale. Il codificatore dovra quindi trasmettere unicamente le informazioni necessarie a costruire laversione predetta, e l’innovazione stessa.

Nella versione piu semplice e largamente piu adottata il quadro che deve essere codificato e scomposto in blocchi di8x8 pixel o di 16x16 pixel (macroblocchi). Per ciascun blocco si cerca il blocco piu simile nell’immagine precedente.Per questioni di complessita computazionale, la ricerca e limitata in un intorno della posizione corrispondente a quellaoccupata nel quadro attuale. Una volta individuato il blocco piu simile, si codifica la posizione di tale macroblocco; lecoordinate sono codificate in modo relativo, ovvero rappresentano lo spostamento rispetto alla posizione attuale. Notele coordinate relative di ciascun blocco, il decodificatore e in grado di ricostruire una versione predetta del quadroattuale, mediante la giustapposizione di opportuni tasselli del quadro precedente. Questo meccanismo di predizionemediante la definizione di una corrispondenza fra informazioni del quadro attuale e informazioni del quadro precedenteprende il nome di motocompensazione. Il codificatore deve quindi codificare unicamente la differenza tra l’immaginepredetta mediante motocompensazione ed il quadro attuale. Questo meccanismo di principio estremamente sempliceammette numerose varianti, sulla base della forma del blocco considerato, della funzione di misura della somiglianzafra blocchi, della modalita di ricerca del blocco piu simile (esaustiva o meno), del numero di quadri, detti diriferimento, a partire dai quali tentare la predizione del blocco attuale, e cosi’ via. Dal punto di vista concettuale,tuttavia, la motocompensazione si basa su un’ipotesi implicita, e cioe che l’immagine rappresentata nel quadro attualesia costituita da una versione spazialmente trasformata dell’immagine precedente. Questo tipo di corrispondenza puoessere modellata matematicamente come una trasformazione geometrica del piano dell’immagine.

Il presente capitolo e dedicato alla sintetica descrizione dei principali modelli di trasformazioni geometricheutilizzate nell’ambito della codifica di immagini. I modelli che qui descriviamo con riferimento all’ambito applicativodella codifica video sono utilizzati anche in ambiti differenti, quali la calibrazione di immagini nel telerilevamento

51

Page 52: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

52 CAPITOLO 5. LA COMPENSAZIONE DI MOTO

e in alcune applicazioni medicali, l’elaborazione degli effetti di morphing nella produzione video, la generazione ditessiture sintetiche per applicazioni di realta virtuale.

5.2 Trasformazioni geometriche per motocompensazione di sequenze video

Consideriamo due quadri temporalmente adiacenti estratti da una sequenza video. La trasformazione da un quadro alsuccessivo e descritta come una trasformazione geometrica del piano dell’immagine. I punti (u, v) del primo quadrosono mappati in punti (x, y) = (X(u, v), Y (u, v)) del secondo quadro. In altre parole, la luminanza del punto (x, y)

del secondo quadro e la stessa del punto (u, v) del primo quadro:

I(k)(x, y) = I(k−1)(u, v)

La trasformazione geometrica di un quadro nell’altro e descritta dalla coppia di funzioni (x, y) = (X(u, v), Y (u, v)).Discutiamo qui alcune possibili forme, via via piu sofisticate, di tale trasformazione.

Il modello di moto traslatorioUn moto traslatorio e definito dalla coppia di funzioni

x = u+ Δx

y = v + Δy(5.2.1)

Questo e il modello sopra citato come il piu diffuso nella motocompensazione per codifica video. La coppia (Δx,Δy)

e detta vettore di moto (motion vector) o di spostamento. Nelle applicazioni, il vettore spostamento puo essereassegnato ad aree di dimensione variabile, dal 16x16 al 8x8 al 4x4; per applicazioni particolari (visione artificiale,analisi automatica dell’immagine), e assegnato un vettore di moto ad ogni pixel dell’immagine, e l’insieme dei vettoridi moto relativi ad una coppia di immagini e detta motion vector field.

Osserviamo sin d’ora che, ai fini della ricostruzione del video decodificato, l’informazione rappresentata daivettori di moto e critica, perche un errore di trasmissione che alteri i vettori spostamento tipicamente genera artefattirilevanti nell’immagine ricostruita.

Modello di moto affineUna trasformazione affine e definita dalla coppia di funzioni

x = Au+Bv +C

y = Du+ Ev + F(5.2.2)

Il moto affine ammette come casi particolari il moto traslatorio, la rotazione

x = cosθ u+ sinθ v

y = −sinθ u + cosθv

il cambiamento di scala

x = Suu

y = Svv

Page 53: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

5.2. TRASFORMAZIONI GEOMETRICHE PER MOTOCOMPENSAZIONE DI SEQUENZE VIDEO 53

l’inclinazione (shear)

x = u+Huv

y = v

x = u

y = Hvu+ v

Il modello di moto affine e largamente generale e flessibile. Osserviamo che la trasformazione affine, essendodescritta da sei parametri, e completamente individuata quando sia nota la trasformazione di tre punti (non allineati)del piano.

Una possibile applicazione del modello affine in fase di codifica consiste nel suddividere il quadro da predirein un reticolato (mesh) a maglia triangolare, e nel modellare l’evoluzione di ciascuno dei triangoli del reticolatomediante una trasformazione affine. Ai fini della codifica, la trasformazione di ciascun triangolo e identificata dalatrasformazione dei suoi tre vertici (sei coordinate).

Modello di moto prospetticoUna trasformazione prospettica (perspective ) e definita dalla coppia di funzioni

x =Au+Bv +C

Gu+Hv + 1

y =Du+ Ev + F

Gu+Hv + 1

(5.2.3)

Esso modella la duplice proiezione di un quadrilatero planare del piano dell’immagine (u, v) in un quadrilatero ancoraplanare ma in generale inclinato rispetto al piano dell’immagine, e la successiva proiezione prospettica di questo sulpiano (x, y). La trasformazione prospettica e descritta da otto parametri, ed e completamente individuata quando sianota la trasformazione di quattro punti del piano.

Una possibile applicazione del modello prospettico in fase di codifica consiste nella suddivisione del quadro dapredire in un reticolato (mesh) a maglia quadrangolare, e nel modellare l’evoluzione di ciascuno dei quadrilateri delreticolato mediante una trasformazione prospettica. La trasformazione prospettica e descritta da otto parametri, ed ecompletamente individuata quando sia nota la trasformazione dei quattro vertici (otto coordinate) del quadrilatero inquestione.

A titolo di completezza, citiamo al termine di questo excursus anche la trasformazione bilineare, definita dallacoppia di funzioni

x = Au+ Bv +Cuv +G

y = Du+ Ev + Fuv +H(5.2.4)

Esso modella la duplice proiezione di un quadrilatero planare del piano dell’immagine (u, v) in un quadrilatero nonplanare e la successiva proiezione di questo sul piano (x, y). La trasformazione bilineare e applicabile per riprodurrein piano dati registrati da sensori non coplanari in applicazioni di telerilevamento e biomedicali, nonche a scopidi texture mapping, ovvero per generare sinteticamente la proiezione sul piano dell’immagine di tessiture dispostesu oggetti virtuali tridimensionali, a partire da tasselli planari delle tessiture stesse. La trasformazione bilineare, alpari della prospettica, e descritta da otto parametri, ed e individuata dalla trasformazione dei quattro vertici (ottocoordinate) di un quadrilatero.

Page 54: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

54 CAPITOLO 5. LA COMPENSAZIONE DI MOTO

Figura 5.1: Esempi di trasformazioni descritte da un modello affine.

Page 55: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

5.3. ALGORITMI DI MOTOCOMPENSAZIONE PER LA CODIFICA DI SEQUENZE VIDEO 55

5.3 Algoritmi di motocompensazione per la codifica di sequenze video

Come discusso nei paragrafi precedenti, la motocompensazione si basa sul principio che quadri successivi dellasequenza video siano legati da trasformazioni geometriche. Nelle applicazioni di motocompensazione il quadroattuale e suddiviso in regioni non sovrapposte5.1, e per ciascuna regione e individuata l’area di provenienza nelquadro precedente, come illustrato in Fig. 5.2.Consideriamo qui il caso di gran lunga piu comune: il modello traslatorio.

Il quadro attuale I(k)[m, n] sia partizionato in blocchi non sovrapposti, tali da ricoprire l’intero quadro. In-dichiamo con B il generico blocco del quadro attuale. Per il blocco B, si cerca nel quadro precedente il bloccopiu simile massimizzando un assegnato funzionale di somiglianza, ovvero minimizzando un assegnato funzionale didistorsione. Adottando il criterio dell’errore quadratico medio, il blocco piu simile e individuato dalla coordinaterelative Δmmin,Δnmin che minimizzano la seguente funzione

DMSE(Δm,Δn) =∑

(m,n)∈B

(I(k)[m, n]− I(k−1)[m+ Δm, n+ Δn]

)2

al variare di (Δm,Δn) in un intervallo preassegnato.Per questioni computazionali, la distorsione puo essere computata adottando il criterio della somma delle differenze

assolute ( Sum of Absolute Differences, SAD). In tal caso il blocco piu simile e individuato dalla coordinate relativeΔmmin,Δnmin che minimizzano la seguente funzione

DSAD(Δm,Δn) =∑

(m,n)∈B

∣∣∣I(k)[m, n]− I(k−1)[m+ Δm, n+ Δn]∣∣∣

per (Δm,Δn) variabili in un intervallo preassegnato.Un esempio di un’immagine I(k)[m, n] estratta dalla sequenza video Suzie e della sua versione predetta I(k)[m, n]

mediante motocompensazione traslatoria e riportata in Fig.7.1. La motocompensazione in questo esempio e operatasu blocchi di dimensioni 8x8.

Quando la motocompensazione e operata partizionando l’immagine in una griglia e individuando lo spostamentoottimo di ciascun vertice della griglia, l’ottimizzazione diviene piu complessa. Infatti, l’ottimizzazione deve essereoperata congiuntamente su tutte le maglie della griglia, applicando la trasformazione ipotizzata a ciascuna magliae valutando la potenza dell’errore complessivo. Per cio che concerne la scelta dei vertici della griglia, e frequentel’adozione di criteri euristici, finalizzati ad individuare tasselli non troppo picoli per controllare il costo di trasmissionedei vettori spostamento e non troppo grandi in modo da non includere discontinuita. Una strategia frequentementeutilizzata consiste nella scelta dei vertici della griglia in corrispondenza di punti significativi5.2 dell’immagine stessa.

5.1Tipicamente, nelle applicazioni di morphing e di elaborazione delle immagini la trasformazione e applicata in avanti, scandendo il quadroprecedente per generare i punti corrispondenti del quadro attuale. Le aree del quadro attuale non assegnate nella fase di mappatura sonosuccessivamente ricostruite con sofisticate tecniche di interpolazione. Nelle applicazioni di codifica,e scandito il quadro attuale al fine di associaread ogni punto un punto del quadro precedente. Tale modalita di applicazione della trasformazione geometrica, detta all’indietro, evita che risultinonon assegnate aree del quadro attuale.

5.2La scelta di posizionare i vertici della griglia in corrispondenza di punti significativi -vertici, incroci- migliora le prestazioni della stima dispostamento, che in zone uniformi tende ad essere guidata da rumore di acquisizione o di illuminazione eventualmente presente.

Page 56: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

56 CAPITOLO 5. LA COMPENSAZIONE DI MOTO

Sistemi di coordinate omogeneeNell’ambito della Computer Graphics, e usuale rappresentare un punto dell’immagine, individuato nel piano dan = 2 coordinate (x, y), mediante un vettore a n + 1 = 3 componenti: (x, y) ⇒ (x, y, 1). L’adozione ditali coordinate, dette omogenee, consente ad esempio di rappresentare la trasformazione affine definita in (5.2.2)mediante un operatore matriciale 3 × 3: (x, y, 1) = (u, v, 1) · T

T =

⎛⎜⎜⎝A D 0

B E 0

C F 1

⎞⎟⎟⎠Si supponga poi di voler estendere la trasformazione T considerando la forma 3 × 3 piu generale:

T =

⎛⎜⎜⎝A D g

B E h

C F k

⎞⎟⎟⎠Essa consente di associare ad un punto di coordinate (u, v), ovvero di coordinate omogenee (u, v, 1), un nuovopunto (x, y, w). A partire da tali coordinate, e possibile ottenere ancora un punto di coordinate omogenee dividendotutte le componenti per w: (x/w, y/w, 1). Tale operazione ammette un’interpretazione geometrica: il punto (u, v, 1)

puo essere interpretato come un punto dello spazio tri-dimensionale, appartenente al piano a profondita 1. Il puntotrasformato (x, y, w) rappresenta un punto dello spazio tri-dimensionale, appartenente al piano a profondita w. Ladivisione per w associa a (x, y, w) il punto (x/w, y/w, 1): esso e il punto in cui il piano a profondita 1 intersecala retta passante per l’origine degli assi e per (x, y, w); in altri termini, (x/w, y/w, 1) e la proiezione di (x, y, w)

sul piano a profondita 1.Con queste posizioni, la trasformazione prospettica (5.2.3) e descritta dalla seguente trasformazione lineare a

T =

⎛⎜⎜⎝A D G

B E H

C F 1

⎞⎟⎟⎠

aSi osservi che nella modalita di rappresentazione che impiega le coordinate omogenee, i punti che differiscono per un fattore di scala comunealle tre coordinate definiscono una classe di equivalenza, ed identificano lo stesso punto del piano a profondita 1.

Page 57: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

5.3. ALGORITMI DI MOTOCOMPENSAZIONE PER LA CODIFICA DI SEQUENZE VIDEO 57

Figura 5.2: Uso di modelli del campo di moto a fini di motocompensazione.

Figura 5.3: Esempio di motocompensazione su blocchi 8x8.

Page 58: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

58 CAPITOLO 5. LA COMPENSAZIONE DI MOTO

Modello e/o Tecnica Contesto applicativotraslatorio, macroblocchi 16 × 16 MPEG-2avanzato, Advanced Prediction su blocchi 8 × 8 H.263affine, image resizing H.263++affine, su griglia triangolare MPEG-4 (Facial Animation)perspective, motocompensazione globale MPEG-4 (Sprite Coding)traslatorio, su oggetti di forma arbitraria MPEG-4 (Profilo Core)traslatorio, su blocchi quadrati e rettangolari dal 4 × 4 al 16 × 16 H.264

Tabella 5.1: Sinossi delle tecniche di motompensazione piu frequentemente utilizzate.

Page 59: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Bibliografia

[1] G. Scarano, “Dispense di elaborazione delle immagini”, infocom.uniroma1.it/gscarano.

[2] B. G. Haskell, P. G. Howard, Y. A. LeCun, A. Puri, J. Ostermann, M.R. Civanlar, L. R. Rabiner, L. Bottou, and P. Haffner, “Imageand Video Coding-Emerging Standards and Beyond”, IEEE Transactions on Circuits and Systems for Video Technology, Vol. 8, No. 7, pp.814-837, November 1998

[3] G. Wolberg, “Image Morphing: A Survey ’, Visual Computer, vol. 14, pp. 360-372, 1998

59

Page 60: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Capitolo 6

Servizi di diffusione televisiva: lo standardMPEG-2 e il Digital Video Broadcasting

6.1 Lo standard MPEG-2 per servizi multimediali diffusivi

Lo standard MPEG-2, sviluppato dal Moving Pictures Experts Group (MPEG) dell’ISO 6.1 in cui sono rappresentativari segmenti di industrie che si occupano del trattamento dell’informazione, definisce la codifica di sorgente audio,video, e il formato di multiplazione e trasporto per servizi multimediali diffusivi a qualità televisiva o superiore. Lostandard specifica esclusivamente la sintassi del bitstream e la decodifica, e definisce sottoinsiemi di funzionalita edi elementi sintattici (profili) adatti a particolari campi di applicazione.

Lo standard MPEG-2 è uno standard utilizzabile in diverse applicazioni. L’applicazione primaria di MPEG-2 èla trasmissione a qualità televisiva (Racc. CCIR 601) o superiore di sequenze in formato interallacciato o progressivoe di diversi aspect ratio,quali 4:3, 16:9, e il formato quadrato. I formati di riferimento per Standard DefinitionTeleVision (SDTV) prevedono sequenze video 4:2:0 di dimensione 720x576 pixel @ 25 quadri al secondo (PAL), o720x480 @ 30 quadri al secondo (NTSC) con un bitrate tra 2 e 10 Mbit/sec. Lo standard risulta efficiente ancheper applicazioni HDTV (sequenze di dimensione 1280x720 o 1920x1080 pixel), con un bitrate compreso tra 2 e 40Mbit/s.

La parte System dello standard descrive un formato di multiplazione potente e flessibile, che ha influito in mododeterminante sull’affermazione dello standard stesso. In particolare, lo standard consente la multiplazione di piùcanali audio (trasmissione multilingue), più canali video (trasmissione multiview), di dati (sottotitoli, file grafici).

6.2 Lo standard MPEG-2 Video

Lo standard MPEG-2 Video, recepito anche nella Raccomandazione ITU-T H.262, utilizza tecniche di compressionebasate sulla riduzione della ridondanza spaziale e temporale della sequenza video. La riduzione della ridondanza

6.1La commissione MPEG appartiene al gruppo ISO/IEC JTC1 SC29 WG11, con International Standardization Organization, InternationalElectrotechnical Committee, Joint Technical Commitee 1, Sub-committee 29, Working Group 11.

60

Page 61: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

6.2. LO STANDARD MPEG-2 VIDEO 61

spaziale e realizzata mediante tecniche a trasformate, quella temporale mediante motocompensazione; tale metodologiaprende il nome di codifica ibrida a trasformata.

Lo standard definisce tre tipi di quadri, che differiscono per la metodologia di codifica adottata:

• immagini codificate senza riferimento ad altre immagini (I); forniscono punti di accesso alla sequenza codi-ficata in corrispondenza dei quali può iniziare la decodifica; sono caratterizzate da un modesto rapporto dicompressione;

• immagini codificate mediante motocompensazione da immagini precedenti (P); possono essere utilizzate comeriferimento per altre predizioni;

• immagini codificate mediante motocompensazone bidirezionale (B); offrono il maggior livello di compressione;non sono utilizzate come riferimento per ulteriori predizioni.

L’organizzazione dei tre tipi di immagine in una sequenza video è molto flessibile. La scelta è lasciata al codificatoree dipende dai requisiti dell’applicazione.

La codifica opera suddividendo ciascun quadro in quadrati di 16x16 pixel, detti macroblocchi. Tutti i macroblocchidi un quadro I sono codificati senza predizione (macroblocchi di tipo I). Ciascun macroblocco di un quadro P puòessere predetto rispetto al quadro P o I precedente (macroblocco di tipo P), ovvero codificato senza predizione(macroblocco di tipo I). Ciascun macroblocco di un quadro B puo essere predetto bidirezionalmente rispetto alquadro P o I precedente e al quadro P o I successivo (macroblocco di tipo B), ovvero essere predetto rispetto alquadro P o I precedente (macroblocco di tipo P), ovvero codificato senza predizione (macroblocco di tipo I).

Per macroblocchi I, si codifica il macroblocco mediante applicazione di DCT e quantizzazione ai blocchi 8x8componenti. Per macroblocchi P, si effettua la motocompensazione del macroblocco 16x16; la differenza fra ilmacroblocco attuale e la predizione, detta residuo di motocompensazione, e codificata mediante DCT e quantizzazionesu blocchi 8x8 pixel. Per macroblocchi B, si effettua la motocompensazione del macroblocco 16x16 rispetto al quadrodi riferimento precedente e rispetto al quadro di riferimento successivo; la predizione e operata mediando i due blocchi16x16 cos´ ottenuti; la differenza fra il macroblocco attuale e la predizione, detta residuo di motocompensazione,e codificata mediante DCT e quantizzazione su blocchi 8x8 pixel. Il modo di codifica di ciascun macroblocco deiquadri P e B è scelto in modo da minimizzare il numero di bit richiesti per descriverlo. Poiché i vettori di moto dimacroblocchi adiacenti sono correlati, sono codificati in modo differenziale rispetto al vettore moto del precedentemacroblocco adiacente.

La quantizzazione determina una perdita irreversibile di informazione ed è adattata alle caratteristiche del sistemavisivo umano, mediante la scelta di opportune matrici di quantizzazione. Le matrici di quantizzazione possono variareda una immagine all’altra e sono trasmesse all’inizio di ciascuna immagine; inoltre la matrice di quantizzazione puoessere scalata da macroblocco a macroblocco mediante un fattore di scala (quantizer scale), al fine di adattare laprecisione della codifica dell’immagine al suo contenuto. Il quantizer scale, che puo essere maggiore di 1 o minoredi 1, e codificato con un valore a 5 bit su scala lineare e non. I coefficienti AC sono scanditi a zig-zag e codificaticon codifica a corse di zeri e tavole di codice di Huffmann. La scelta delle matrici di quantizzazione e lasciata alcodificatore. Tuttavia, a titolo di riferimento, lo standard suggerisce l’uso delle matrici QINTRA[k1, k2] ,QINTER[k1, k2]

riportate in Tabs.6.1,6.2. Nel caso di quadri I e codificata la differenza fra coefficienti DC di blocchi adiacenti.I quadri della sequenza sono raggruppati in Group Of Pictures (GOP), il cui primo quadro e di tipo I. Tale

organizzazione dei dati codificati consente la sincronizzazione del decoder con un ritardo al piu pari alla durata del

Page 62: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

62CAPITOLO 6. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING

GOP. Inoltre la presenza di quadri I abilita lo scorrimento all’indietro o in avanti di una registrazione e l’indirizzamentodi punti predeterminati in una sequenza. Per applicazioni di distribuzione televisiva i quadri I hanno una frequenza di1 o 2 quadri I al secondo, con GOP del tipo IPBBPBBPBBP. L’ordinamento dei quadri nel GOP differisce dall’ordinecon cui i relativi dati codificati compaiono nel bitstream, in quanto i quadri di tipo B sono inseriti nel bitstream dopoi quadri di tipo I o P in riferimento ai quali sono predetti. Dualmente, in fase di decodifica, l’ordine con il qualesono decodificati i quadri non coincide con l’ordine di presentazione, in quanto i quadri B sono decodificati dopo iquadri cui fanno riferimento per la predizione.

Figura 6.1: Schema di principio del codificatore MPEG.

Luminanza (Y )8 16 19 22 26 27 29 34

16 16 22 24 27 29 34 3719 22 26 27 29 34 34 3822 22 26 27 29 34 37 4022 26 27 29 32 35 40 4826 27 29 32 35 40 48 5846 27 29 34 38 46 56 6927 29 35 38 46 56 69 83

Tabella 6.1: Passi di quantizzazione QINTRA[k1, k2] per la luminanza dei quadri INTRA: esempio.

Page 63: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

6.2. LO STANDARD MPEG-2 VIDEO 63

Figura 6.2: Esempio di Group of Pictures.

Residui di luminanza (ΔY )16 16 16 16 16 16 16 1616 16 16 16 16 16 16 1616 16 16 16 16 16 16 1616 16 16 16 16 16 16 1616 16 16 16 16 16 16 1616 16 16 16 16 16 16 1616 16 16 16 16 16 16 1616 16 16 16 16 16 16 16

Tabella 6.2: Passi di quantizzazione QINTER[k1, k2] per i residui di luminanza dei quadri INTER (P o B): esempio.

6.2.1 Il controllo di flusso nella codifica MPEG-2

Nelle applicazioni di distribuzione televisiva, la distorsione introdotta dalla codifica sulla sequenza ricostruita deveessere relativamente costante per non dar luogo ad artefatti visuali non compatibili con le specifiche di qualita delservizio. Poiche le caratteristiche locali della seuenza da codificare variano (contenuto dell’immagine, tipo di motonella scena etc,), il numero di bit richiesto per codificare ciascun frame e variabile, e il codificatore video si presentacome una sorgente a bit-rate variabile. Poiche il canale di trasmissione ha tipicamente capacita costante, l’uscita delcodificatore video alimenta un buffer di trasmissione, che è riempito a burst quando le immagini vengono codificate,e svuotato a velocità costante durante la trasmissione. Poiche il codificatore ha visibilita dello stato di riempimentodel buffer, tale informazione è utilizzata per controllare il processo di codifica (quantizzazione, inserimento di quadri

Page 64: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

64CAPITOLO 6. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING

Figura 6.3: Modello del buffer in uscita al codificatore e del buffer in ingresso al decodificatore.

predetti), al fine di evitare fenomeni di buffer overflow e underflow.Dualmente, all’interfaccia fra il canale e il decodificatore MPEG e presente un buffer, caricato a velocità costante

quando i dati vengono ricevuti e svuotato a burst durante il processo di decodifica. Lo standard MPEG definisce unmodello ideale di decodificatore (System Target Decoder, STD) che e utilizzato dal codificatore come riferimento perlimitare il bitrate istantaneo in modo da non incorrere nell’overflow o underflow del buffer del decoder. Il modello deldecodificatore ideale puo essere semplicemente descritto da parametri caratteristici della sessione6.2 ovvero descrittamediante un modello detto Video Buffering Verifier(VBV). Il VBV e identificato dai parametri bit-rate, misurato inunità di 400bit/s, vbv-buffer-size, misurato in unità di 2048 byte, vbv-delay, che definisce il tempo tra la ricezionedel primo bit di dati della prima immagine nel buffer e la decodifica dei dati stessi, misurato in numero di periodidi un clock di riferimento a 90 KHz. I parametri del VBV sono multiplati insieme ai dati video secondo il formatospecificato dallo standard MPEG-2 System.

6.2.2 Profili e livelli di un decodificatore MPEG-2 video

Lo standard MPEG-2 video offre diverse varianti dell’algoritmo di compressione sovraesposto, alcune delle qualigodono della proprieta di scalabilita. Per scalabilita si intende la disponibilita all’interno del bitstream tanto di datibase (Base Layer) quanto ai dati di arricchimento (Enhancement Layers). I dati possono riferirsi a diversi livellidi qualita, ovvero di risoluzione spaziale o temporale. Per semplificare la segnalazione della modalita operativa delcodec, si identificano differenti profili di codec, ciascuno dei quali identifica il particolare algoritmo utilizzato ealcune particolari opzioni di codifica, che limitano i gradi di liberta della sintassi del bit-stream. La Tabella 7.4riporta i differenti profili MPEG-2.

6.2Tale rappresentazione semplificata prende il nome di Leak Method ed adotta parametri numerici dipendenti dalla coppia profilo-livelloutilizzata.

Page 65: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

6.3. LO STANDARD MPEG-2 SYSTEM 65

Profilo Principali caratteristiche (Predizione, scalabilita, formato)Simple Profile (SP) I,P, non scalabile, campionamento 4:2:0.Main Profile (MP) I,P,B, non scalabile, campionamento 4:2:0

SNR Scalable Profile I,P,B, scalabile in SNR, campionamento 4:2:0Spatially Scalable Profile I,P,B, scalabile spazialmente e/o in SNR, campionamento 4:2:0

4:2:2 Profile I,P,B, non scalabile, campionamento 4:2:2High Profile I,P,B, scalabile spazialmente e/o in SNR, campionamento 4:2:2

Multiview Profile I,P,B, non scalabile, campionamento 4:2:0 di informazioni destra e sinistra (TV 3D)

Tabella 6.3: Profili del codec MPEG-2.

Per ciascun profilo, si identificano decodificatori di differente livello di complessita, per ciascuno dei quali sonospecificati i limiti massimi supportati per cio che concerne la risoluzione spaziale, il bitrate, la dimensione del buffer,etc. I servizi di diffusione televisiva utilizzano tipicamente la coppia profilo/livello denominata Main Profile / MainLevel (MP@ML).

6.3 Lo standard MPEG-2 system

Lo standard MPEG-2 system definisce la modalita di multiplazione di una o più sequenze elementari video, audio edati in formato ottimizzato per applicazioni di trasmissione o di memorizzazione. In particolare, lo standard definisceil formato per la memorizzazione (Flusso di programma, Program Stream, PS ) e per la trasmissione (Flusso ditrasporto, Transport Stream, TS). Entrambe i flussi sono di tipo a pacchetto.

6.3.1 Il Program Stream MPEG-2

I dati prodotti dai codificatori audio e video sono organizzati in un flusso di unita di lunghezza variabile denominatoElementary Stream, ES). A partire da ciascun ES, l’MPEG-2 System definisce la generazione del Packetized Elemen-tary Stream, ottenuto mappando ciascun pacchetto ES nel payload di un pacchetto PES, e associando un PES Headercontenente un prefisso, un numero identificativo dello stream (video, audio1, audio2, etc.), e dei dati opzionali dicopyright, CRC, etc. La lunghezza di ogni pacchetto PES e variabile e può essere anche superiore a 64 kBytes.

La sintassi del PES trasporta anche l’informazione necessaria per la sincronizzazione della decodifica e dellapresentazione delle informazioni audio e video mediante

• indicatori temporali a 33 bit relativi alla presentazione di audio, video e dati codificati(Presentation Time Stamp(PTS))

• indicatori temporali a 33 bit relativi alla decodifica (Decoding Time Stamp (DTS)) del video codificato.

Tali indicatori temporali, alla stregua del vbv delay, sono misurati rispetto ad un clock di riferimento a 90 KHz.

Uno o più PES, aventi una base dei tempi comune sono combinati in un singolo flusso multiplato detto Programstream, che rappresenta un programma, almeno in senso lato. Un Program Stream, quindi, contiene sequenze

Page 66: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

66CAPITOLO 6. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING

elementari audio e video aventi la stessa base dei tempi6.3. Questo formato puo essere utilizzato direttamente incanali privi di errori, quali ad esempio quelli che modellano applicazioni di memorizzazione. Per il trasferimentosu canali di comunicazione reali, l’MPEG-2 System definisce un formato apposito detto Transport Stream, chee estremamente flessibile, ed e supportato dalle direttive DVB/ETSI sui formati di trasmissione della televisionedigitale.

6.3.2 Il Transport Stream MPEG-2

Lo standard MPEG-2 System definisce un formato per la multiplazione di uno o piu Program Stream in un unicoflusso, detto Transport Stream (TS). Mentre il Program Stream contiene pacchetti di lunghezza variabile, il TS ecostituito da pacchetti di lunghezza fissa, pari a 188 byte. Ciascun pacchetto del TS contiene un campo header dilunghezza variabile, ma con valore minimo di 4 byte, ed un campo dati. Il TS Packet Header contiene sempre unprimo byte di sincronizzazione (pari a 47HEX , ovvero 01000111), un flag di errore dallo strato di trasporto, ed uncampo di 13 bit detto Packet Identifier, o PID. Opzionalmente, il TS Packet Header puo contenere un AdaptationField. In tale campo puo comparire l’informazione detta Program Clock Reference, di 33+9=42 bit, utilizzata persincronizzare il clock di sistema (System Time Clock, STC) a 27 MHz del decodificatore6.4. Il PCR e trasmssoperiodicamente ogni 0.1s, e la sincronizzazione e operata misurando la differenza fra PCR successivi decodificati econfrontandola con il numero di cicli successivi eseguiti dal clock di sistema nello stesso intervallo di tempo.

Il TS consente la multiplazione di uno (Single Program TS, SPTS) o più programmi (Multi Program TS, MPTS)in un singolo stream6.5. Ogni programma, a sua volta, contiene piu stream elementari (video, audio, dati). Ciascunostream e a sua volta suddiviso in un certo numero di pacchetti del TS. Pertanto, tutti i pacchetti di uno stream diuno stesso programma saranno marcati dallo stesso PID. A partire dal PID di un pacchetto, e possibile ricostruire ilcorretto flusso di appartenenza, mediante un meccanismo di mappatura denominato Program Specific Information,PSI.

Il PSI e composto delle seguenti tabelle,:

• Program Association Table (PAT);

• Program Map Table (PMT);

• Conditional Access Table (CAT);

Le tabelle del PSI sono rappresentate mediante strutture sintattiche dette Sections6.6 , a loro volta suddivise indifferenti pacchetti del TS.

La PAT, che e sempre trasmessa in pacchetti con PID uguale 0, e una tabella che associa ad ogni programmala sua PMT. La PAT e suddivisa, ai fini della trasmissione, in piu pacchetti non consecutivi del TS, in modo daminimizzare i dati persi in caso di errori su alcune porzioni del TS.

La Program Map Table (PMT) identifica un programma, ed associa ad ogni stream (audio, video, dati) delprogramma il valore del relativo PID; lo stream sara pertanto ricostruito estraendo dal TS tutti i pacchetti caratterizzati

6.3Fra i dati convogliati dal Program Stream e registrato periodicamente il valore assunto da un contatore dei cicli del System Time Clock a 27MHz del codificatore, mediante un campo a 42 bit detto System Clock Reference.

6.4Si osserva che tale informazione puo essere presente anche nel PS Header, sotto il nome di system Clock Reference, SCR6.5Nel caso di MPTS, ad ogni programma puo essere associato un distinto PCR, ovvero alcuni programmi possono condividere lo stesso PCR.6.6Le section utlizzate per le tabelle PSI specificate in MPEG hanno dimensione massima 1K byte mentre le private sections hanno dimensione

massima 4K bytes.

Page 67: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

6.3. LO STANDARD MPEG-2 SYSTEM 67

da tale PID. La PMT segnala anche il PID dei pacchetti contenenti la descrizione del STD, e il PID dei pacchetticontenenti il PCR relativo al programma.

La CAT, che e sempre trasmessa in pacchetti con PID uguale a 1, contiene informazioni relative al sistema discrambling e cifratura6.7.

Accanto al PSI, in ambito DVB-ETSI e stato definito il sistema detto Service Information, che contiene altre tavoledescrittive dei servizi offerti mediante il trasferimento di informazione, anche testuali e grafiche, per la navigazionefra i differenti programmi. Fra le altre citiamo

• la Network Information Table (NIT), che convoglia informazione su piu di un TS,

• la Event Information Table (EIT) che convoglia informazione sui singoli eventi programati.

• la IP/MAC Notification Table (INT) che convoglia sui flussi dati IPMAC nel TS.

6.3.3 Il trasferimento di dati nel Transport Stream MPEG-2

Lo standard MPEG-2 prevede cinque profili per il trasferimento dati, corrispondenti a diversi servizi: il profilo Datapiping, utilizzato in assenza di relazione temporale con i dati dei PES, il profilo Data streaming, utilizzato in presenzadi relazione temporale con i dati dei PES, i profili Data carousel, Object carousel, per la trasmissione periodica didati di servizio, e il profilo Multi-protocol encapsulation (MPE), che supporta dati di differente protocollo.

Il profilo MPE consente la diffusione di dati su TS MPEG-2 in analogia alla distribuzione di dati su unarete Ethernet. In particolare, il profilo MPE incapsula i dati all’interno di strutture sintattiche dette DVB Section,caratterizzate da lunghezza variabile fino ad un massimo di 4096 byte. Ogni DVB Section e poi convogliata dapacchetti del TS MPEG-2, caratterizzati da un assegnato PID. La Fig. 6.4 descrive le componenti sintattiche checoncorrono alla MPE.

Figura 6.4: Multi Protocol Encapsulation.

6.7I sistemi di Conditional Access effettivamente utilizzati sono proprietari; tipicamente prevedono che la CAT associ a ciascun programmacifrato il PID dei pacchetti contenenti un’informazione di controllo detta Entitlement Management Message, circa lo stato di sottoscrizione deisingoli utenti. Per ciascun programma cifrato, la relativa PMT convoglia il PID dei pacchetti contenenti una informazione detta EntitlementControl Message, complementare all’EMM. Il Conditional Access Subsystem del decodificatore (Smart Card) gestisce entrambe le informazioniabilitando o meno l’accesso ai programmi cifrati in base allo stato di sottoscrizione dell’utente.

Page 68: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

68CAPITOLO 6. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING

I primi byte costituiscono il Section Header contenente table id, section syntax indicator, private indicator, sectionlength, che identificano rispettivamente il tipo di section, la sintassi, flag proprietari e la lunghezza della section. Ilcampo MAC address, di 6x8 bit, contenente l’indirizzo MAC del destinatario, e seguito da ulteriori campi di servizio(payload e address scrambling control, LLC SNAP flag6.8, current next indicator); i campi section number, lastsection number, rispettivamente, numerano la sezione attuale e l'ultima che trasporta il pacchetto IP. Successivamentela Section contiene il Pacchetto IP, seguito da byte di riempimento opzionali (stuffing byte) tali che ogni pacchettoIP sia rappresentato da un numero intero di pacchetti del TS MPEG-2, e 32 bit di parita.

6.4 Distribuzione del Transport Stream MPEG-2 mediante piattaformaDVB

Il DVB e un consorzio di origine europea che coinvolge diversi operatori del mercato del broadcasting (broadcaster,manifatturiere, operatori delle telecom, sviluppatori di software, enti regolatori) nella definizione di specifiche tecnicheper i sistemi di distribuzione di video audio e dati, con prevalente riferimento a servizi di tipo televisivo. Le specifichetecniche DVB, recepite in ambito ETSI, definiscono i formati per la distribuzione di servizi televisivi via satellite, viacavo e via digitale terrestre (DVB-S, DVB-C, DVB-T). Inoltre, il DVB ha definito lo standard per la trasmissione,basata su pila protocollare IP, di video audio e dati su terminali mobili (DVB-H).

6.4.1 I sistemi DVB-S, DVB-C, DVB-T

I documenti ETSI [3, 4, 5], che recepiscono l’attivita di specifica tecnica svolta in ambito DVB, definiscono lespecifiche tecniche per la tramissione del TS MPEG2 su diversi mezzi trasmissivi, con particolare riguardo allacodifica di canale e alla modulazione. I mezzi trasmissivi interessati sono il canale radio satellitare, alle frequenzedi 11-12 GHz, il canale radio terrestre, nelle bande UHF (300 MHz, 3 GHz), VHF (30 MHz, 300 MHz), il cavocoassiale a radio-frequenza, a frequenze portanti da 50-100 MHz fino a 500 MHz. Le specifiche definiscono latrasformazione fra i dati di ingresso, assunti nel formato TS MPEG-2, nel segnale di uscita, espresso nella formadi inviluppo complesso del segnale di banda base. La qualita del segnale di uscita desiderata e dell’ordine di unevento di errore ogni ora di trasmissione (Quasi Error Free, QEF), corrispondente ad un BER = 10−10, 10−11

Descriveremo concisamente nel seguito le tecniche di codifica di canale e modulazione adottate nei differenti mezzitrasmissivi.

La codifica di canaleLa codifica di canale prevede tre stadi comuni a tutti i mezzi trasmissivi, dati da un primo stadio di randomizzazione,

un secondo stadio costituito da un codificatore a blocchi, e un terzo stadio di interleaving. Gli stadi operano suiblocchi di 188 byte del TS.

Il randomizzatore realizza un’operazione di XOR bit a bit della sequenza dei byte di ingresso con una sequenzapsudocasuale, preservando il primo byte che e costituito da una parola di sincronizzazione, pari a 47HEX . L’unicamodifica della parola di sincronizzazione e rappresentata da un’inversione bit a bit (47HEX = B8HEX ), operataogni 8 pacchetti TS, al fine di introdurre un sincronismo di trama. La randomizzazione e operata anche quando ilpacchetto TS non convoglia informazione, al fine di evitare l’emissione di una portante nonmodulata.

6.8Segnala la presenza di IEEE 802.3 Logical Link Control/ Sub Network Access Protocol Encapsulation per Ethernet; vale 0 per pacchetti IP.

Page 69: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

6.4. DISTRIBUZIONE DEL TRANSPORT STREAM MPEG-2 MEDIANTE PIATTAFORMA DVB 69

Il codificatore a blocchi e un codice sistematico (204, 188) che opera sull’intero pacchetto TS aggiungendovi16 byte di parita, ed ha capacita di correzione di errore T=8; in particolare, il codice e un codice di Reed-Solomonderivato da un codice (255,239) 6.9.

Il codificatore a blocchi e seguito da un interleaver di tipo convoluzionale. Per preservare la sincronizzazione delTS, anche l’interleaver non altera la posizione del byte di sincronizzazione nella stringa.

Per la trasmissione via cavo, la codifica di canale e limitata agli stadi descritti.Per la codifica satellitare e terrestre, e presente un codificatore convoluzionale, derivato mediante punturazione

da un codice di rapporto di codice Rc = 1/2, lunghezza di vincolo K = 76.10, e distanza libera dfree = 10. Ilcodificatore puo quindi introdurre ridondanza in misura variabile, ottenendo una maggiore o minore protezione deidati di ingresso. La Tabella 6.4 presenta le diverse alternative in termini di rapporto di codice e di corrispondentedistanza libera.

Codificatore convoluzionaleRapporto di codice Rc Distanza libera dfree

1/2 102/3 63/4 55/6 47/8 3

Tabella 6.4: Rapporto di codice Rc e distanza libera dfree del codificatore convoluzionale adottato nella distribuzione viasatellite e via rete terrestre.

Per la trasmissione via satellite, la codifica di canale e limitata agli stadi descritti. Per la trasmissione digitale terrestre,la codifica prevede un ulteriore interleaving, finalizzato a distribuire l’informazione codificata non solo su intervallidi tempo differenti, ma anche su celle tempo-frequenza differenti. La modalita con cui e operato tale interleavingdipende strettamente dal tipo di modulazione, e sara pertanto descritta dopo l’esposizione di quest’ultima.

La modulazioneIn questo paragrafo, indichiamo il segnale modulato intorno alla portante f0, con

s(t) = sc(t) cos(2πf0t) − ss(t) sin(2πf0t)

l’inviluppo complesso del segnale con

s(t) = sc(t) + jss(t), s(t) = �{s(t) exp j2πf0t}

Nella modulazione numerica per i mezzi trasmissivi coassiale e satellitare, il formato di modulazione adottato edi tipo QAM. Pertanto l’inviluppo complesso assume la forma

s(t) =+∞∑

k=−∞ckgT (t− kT )

6.9I codici di Reed-Solomon sono codici non binari N,K operanti su simboli di k bit, caratterizzati da N = 2k − 1, K = 0, · · · , N − 1,Dmin = N − K + 1, e capacita di correzione d’errore pari a floor(Dmin − 1)/2.

6.10Il codice, a 64 stati, si basa sugli ultimi 6 bit piu il bit attuale.

Page 70: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

70CAPITOLO 6. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING

dove i simboli ck sono estratti da una costellazione QPSK nel caso di canale satellitare, e da una 16-QAM, 32-QAMo 64-QAM nel caso di cavo coassiale. Nel caso del cavo coassiale i due bit piu significativi di ciascun simbolo sonocodificati differenzialmente ed associati ad un salto di quadrante 6.11, cosicche il ricevitore, ai fini della codifica, nondeve conoscere la rotazione di fase assoluta introdotta dal canale, ma solo la fase a meno di un’ambiguita di π/2,cio che semplifica l’operazione di sincronizzazione. In entrambi i casi il filtro di trasmissione gT (t) presenta unacaratteristica a radice di coseno rialzato, ovvero

GT (f) =

⎧⎪⎪⎪⎨⎪⎪⎪⎩T 1/2 |f | ≤ fN (1 − γ)

T 1/2

[12− 1

2sin

(2π

14γfn

(|f | − fN ))]1/2

fN(1 − γ) ≤ |f | ≤ fN(1 + γ)

0 |f | ≥ fN (1 + γ)

Tale scelta consente di eliminare l’Interferenza Intersimbolica al ricevitore riducendo al minimo l’impatto del rumoretermico, quando il canale sia ideale ed il filtro di ricezione sia adattato al filtro di trasmissione. Nel caso di canalesatellitare il valore di γ e fissato a 0.35. Nel caso di cavo coassiale, γ = 0.15, al fine di minimizzare la bandaoccupata dal segnale e ridurre l’effetto della distorsione lineare introdotta dal canale.

Nella modulazione numerica per la rete di distribuzione digitale terrestre, il formato di modulazione adottato e ditipo OFDM. L’inviluppo complesso assume la forma

s(t) =+∞∑

k=−∞sk(t− kT )

sk(t) = (c(0)k + c

(1)k expj2πΔft + · · ·+ c

(N−1)k expj2π(N−1)Δft)gT (t)

dove i simboli c(i)k , i = 0, · · ·N − 1 sono estratti da una costellazione QPSK, 16-QAM, o 64-QAM, uniforme o nonuniforme. Cio equivale alla modulazione contemporanea, in un intervallo di tempo di durata T , di N portanti allefrequenze f0 + iΔf, i = 0, · · ·N − 1. Gli spettri modulati intorno alle frequenze f0 + iΔf, i = 0, · · ·N − 1, dettesottoportanti OFDM, sono sovrapposti, e i singoli flussi sono demodulabili sotto opportune condizioni sul filtro ditrasmissione gT (t) e sulla frequenza Δf . In particolare, si assuma

gT (t) =

⎧⎨⎩ 1, −Δ ≤ t ≤ Tu

0, altrove

con Δ + Tu = T . La famiglia di funzioni utilizzata in trasmissione e dunque

ϕn(t) = gT (t) expj2πnΔft, n = 0, · · · , N − 1.

Sia inoltre

gR(t) =

⎧⎨⎩1, 0 ≤ t ≤ Tu

0, altrove

Scegliendo Δf = 1/Tu e possibile definire la famiglia di funzioni in ricezione

ψm(t) = gR(t) exp−j2πmΔft, m = 0, · · · , N − 1

6.11In particolare, alla coppia 00 si associa la permanenza nello stesso quadrante del simbolo precedente, alla coppia 01 un salto di +π/2, allacoppia 10 un salto di −π/2, alla coppia 11 un salto di +π.

Page 71: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

6.4. DISTRIBUZIONE DEL TRANSPORT STREAM MPEG-2 MEDIANTE PIATTAFORMA DVB 71

ortogonali alla famiglia ϕn(t), n = 9, · · · , N − 1 sull’intervallo di simbolo T . Sotto tali condizioni, e assicuratal’invertibilita dell’operazione di modulazione, gli N flussi possono essere demodulati, e gli N simboli trasmessinell’intervallo T ricostruiti.

Tanto la fase di modulazione che di demodulazione si avvalgono di tecniche numeriche computazionalmentemolto efficienti. Consideriamo infatti i campioni dell’inviluppo complesso s(t), estratti con passo di campionamento

Tc =Tu

N, facendo riferimento, per semplicita notazionale, all’intervallo k = 0:

smdef= s(mTc) = c(0) + c(1) expj2πΔfmTc + · · ·+ c(N−1) expj2π(N−1)ΔfmTc =

N−1∑i=0

c(i) expj2πN

im

Nell’intervallo [0, Tu), ovvero per m = 0, · · ·N − 1, i valori assunti dai campioni dell’inviluppo complesso coinci-dono con una trasformata numerica (Inverse Discrete Fourier Transform) della sequenza complessa c(0), · · · c(N−1).Nell’intervallo [−Δ, 0), i valori dei campioni coincidono con quelli gia calcolati nell’intervallo [Tu − Δ, Tu), per-che il segnale e periodico di Tu. In ricezione e sufficiente campionare l’inviluppo complesso in [0, Tu) e operareuna trasformazione numerica (DFT) per recuperare la sequenza trasmessa. I campioni ridondanti trasmessi durantel’intervallo di guardia evitano che eventuali code dovute a risposta non ideale del canale alterino i campioni dell’inter-vallo utile. Inoltre, tale ridondanza puo essere sfruttata per stima ed equalizzazione di canale nel caso di distorsionelineare. Infatti, un canale linearmente distorcente si presenta in forma di differente guadagno H(f0 + iΔf) sullediverse sottoportanti. Se tutte le sottoportanti fossero utilizzate per la modulazione, il segnale occuperebbe una bandasuperiore a NΔf ; pertanto al fine di limitare la banda occupata dal segnale, un certo numero di sottoportanti agliestremi della banda sono lasciate non modulate. Nella rete digitale terrestre, la banda occupata dal segnale a radiofrequenza puo essere di 8 MHz, 7 MHz, o 6 MHz, in funzione del clock di campionamento Tc prescelto6.12.

Il segnale puo nominalmente convogliare N = 2K o N = 8K sottoportanti, distanti circa 4KHz o 1KHz e conintervallo di simbolo differente T 2K

u ≈ 250μs e T 8Ku ≈ 1000μs. Al fine di limitare la banda effettivamente occupata

a N/Tu solo le 1705 o 6817 sottoportanti centrali sono utilizzate in trasmissione. Il tempo di guardia Δ puo essere1/4, 1/8, 1/16, 1/32 dell’intervallo utile Tu. Infine, solo N ′ = 1512 o N ′ = 6048 sottoportanti sono utilizzate pertrasmettere dati utili.

Le rimanenti sottoportanti si suddividono in

• portanti per la segnalazione dei parametri di trasmissione (Transmission Parameter Signaling, TPS)

• portanti pilota per le procedure di stima e di sincronizzazione.

Le portanti TPS sottoportanti sono in numero di 17 (2K) o 68 (8K), sono modulate in modalita DPSK, e trasmettonocontemporanemente lo stesso bit di informazione, in diversita di frequenza. In 68 simboli OFDM6.13 sono pertantotrasmessi i 68 bit di TPS, che includono informazioni quali la costellazione utilizzata6.14, l’intervallo di guardia, ilrate del codice convoluzionale, il modo di trasmissione 2K o 8K, e alcuni bit di parita.

Le portanti pilota sono allocate in modalita continua (su frequenze costanti da un simbolo OFDM all’altro) odispersa -scattered - (su frequenze variabili da un simbolo OFDM all’altro) e trasmesse a livello di potenza doppiarispetto alla media nominale-boosted power level- e trasmettono la stessa sequenza pseudocasuale di training con fase

6.12Infatti, al variare di Tc varia Tu = 1/Δf e di conseguenza la banda occupata a radiofrequenza, approssivamente uguale a NΔf .6.13L’insieme di 68 simboli OFDM prende il nome di trama OFDM.6.14Nel caso di costellazioni non uniformi e segnalato anche il fattore di non uniformita.

Page 72: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

72CAPITOLO 6. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING

iniziale differente da pilota a pilota; tale training e utilizzato ai fini della stima di canale e della sincronizzazione ditempo e frequenza.

L’interleaving operato nel sistema di trasmissione digitale terrestre si basa sulla conversione seriale/parallela delbitstream da trasmettere in 2, 4 o 6 flussi paralleli, nel caso di QPSK, 16-QAM, 64-QAM rispettivamente. Suciascuno dei flussi e operata una permutazione su blocchi di 126 bit consecutivi. I 2, 4 o 6 flussi di 126 bit sonoquindi raggruppati in 126 simboli QPSK, 16-QAM, o 64 QAM. Gruppi di 126 simboli sono raggruppati fino otteneretanti simboli quanti sono i simboli utili trasportati da un singolo simbolo OFDM, ovvero 12 gruppi da 126 simbolinel caso 2k (1512=12x126) o 48 gruppi da 126 simboli nel caso 4k (6048=48x126). Su tali gruppi e infine operatoun interleaving sulla profondita del simbolo OFDM. Pertanto, l’interleaving effettuato su tutti i simboli convogliatidal simbolo OFDM consente la dispersione dell’informazione originariamente convogliata dal bitstream sull’interacella tempo-frequenza relativa a tale simbolo.

Figura 6.5: Inner Interleaving dei sistemi DVB-T e DVB-H.

Page 73: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

6.4. DISTRIBUZIONE DEL TRANSPORT STREAM MPEG-2 MEDIANTE PIATTAFORMA DVB 73

6.4.2 Il sistemi DVB-H

La Raccomandazione ETSI [6] definisce le specifiche tecniche per la distribuzione di audio, video e dati a pacchettosu terminali mobili (handheld).

Il formato di codifica di canale e lo stesso specificato per il DVB-T, con poche significative differenze, legate allacircostanza che il terminale ricevente mobile soffre di limitazioni di alimentazione ed e affetto in maggiore misurada disturbi trasmissivi (cammini multipli, effetto Doppler) rispetto a quanto avviene nel daso DVB-T. Pertanto, ilDVB-H prevede

• un meccanismo di ricezione su brevi intervalli di tempo, alternati da periodi di disattivazione, detto time slicing,finalizzato a ridurre il consumo di alimentazione6.15 (mandatorio)

• un’ulteriore codifica di canale, detta MPE-FEC (opzionale)

• l’opzione di modulazione OFDM a 4K portanti, che consente di progettare la copertura radio in modo piuflessibile per fronteggiare echi, cammini multipli e effetto Doppler (opzionale)

• l’opzione di intearleaving su 48 gruppi di 126 simboli anche per le modulazioni 2k e 4k, corrispondenteall’interleaving su 4 o 2 simboli OFDM (opzionale)

Il meccanismo di Time Slicing consente ad una sorgente a velocita di cifra fb di inviare dati a burst di dimensioneB ≤ 2Mb utilizzando il Transport Stream ad un rate R ≥ fb. Pertanto i dati vengono inviati in ridotti intervalli didurata δON = B/R; dopo l’invio il ricevitore si disattiva per un intervallo δOFF tale che fb = B/(δON + δOFF ),riattivandosi unicamente circa 200 ms prima del successivo burst. La durata δOFF del periodo di spegnimento eun’informazione trasmessa congiuntamente al burst. Nel caso tipico che R fb la percentuale di tempo in cui ilricevitore e attivo e significativamente ridotta.

La codifica di canale MPE-FEC prevede l’invio all’interno dello stesso burst tanto di dati incapsulati MPE quantodi dati FEC ottenuti mediante codifica di Reed Solomon (255,191). La generazione dei dati FEC e realizzata scrivendoi pacchetti IP da codificare in una tabella di 191 colonne e numero di righe Nr che assume valori compresi fra 256 e10246.16. A ciascuna riga di 191 byte sono associati i 64 byte del codice Reed-Solomon. I byte del codice, in numerodi Nr × 64, sono infine letti per colonne e trasmessi nello stesso burst dei relativi pacchetti MPE. Tale meccanismodi protezione, congiunto con il CRC previsto dal profilo MPE, consente la trasmissione affidabile in una gamma dicondizioni di canale (C/N, velocita del mobile, shadowing, etc.) ben piu ampia di quella utilizzabile dal DVB-T.Il rate di codice effettivamente utilizzato puo essere aumentato o diminuito mediante operazioni di padding sui datiMPE ovvero di puncturing sui dati FEC.

6.15Il time slicing puo anche consentire il seamless handover fra TS erogati su celle radio adiacenti.6.16Tale parametro e statico ed assegnato, ed e notificato fra le informazioni del DVB/SI.

Page 74: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

74CAPITOLO 6. SERVIZI DI DIFFUSIONE TELEVISIVA: LO STANDARD MPEG-2 E IL DIGITAL VIDEO BROADCASTING

Figura 6.6: Codifica MPE-FEC utilizzata nel DVB-H.

Page 75: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Bibliografia

[1] G. Scarano, “Dispense di elaborazione delle immagini”, infocom.uniroma1.it/˜ gaetano.

[2] B. G. Haskell, P. G. Howard, Y. A. LeCun, A. Puri, J. Ostermann, M.R. Civanlar, L. R. Rabiner, L. Bottou, and P. Haffner, “Imageand Video Coding-Emerging Standards and Beyond”, IEEE Transactions on Circuits and Systems for Video Technology, Vol. 8, No. 7, pp.814-837, November 1998

[3] ETS 300 421, “Digital broadcasting systems for television, sound and data service; Framing structure channel coding and modulation for11/12 GHz satellite services”, Dicembre 1994.

[4] ETS 300 429, “Digital broadcasting systems for television, sound and data service; Framing structure channel coding and modulation forcable systems, Dicembre 1994.

[5] ETS 300 744, “Digital Video Broadcasting ; Framing structure channel coding and modulation for digital terrestrial television, Luglio 1999.

[6] ETS 302 304, “Digital Video Broadcasting ; Transmission Sysetm for handheld terminal (DVB-H), Luglio 1999.

[7] G. Faria, J. A. Henriksson, E. Stare, P. Talmola, “ DVB-H: Digital Broadcast Services to Handheld Devices”, IEEE Proceedings, Vol.94, No. 1, pp. 194-209, January 2006

[8] IETF RFC 4259: A framework for Transmission of IP Datagrams over MPEG-2 Networks, Montpetit M. J. et al., November 2005.

[9] M.G. Di Benedetto, P. Mandarini, “Comunicazioni Elettriche”, Edizioni Ingegneria 2000.

75

Page 76: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Capitolo 7

Servizi di videotelefonia e videoconferenza:le Raccomandazioni ITU-T

I servizi di videotelefonia e videoconferenza offrono la possibilita di comunicazione audio video e dati, in temporeale ed in modalita interattiva fra utenti che possono fruire di risorse di accesso estremamente differenziate. I servizipossono coinvolgere terminali multimediali integrati in aule attrezzate per la comunicazione contemporanea di moltiutenti, ovvero terminali autocontenuti in opportune torri attrezzate riutilizzabili in diversi ambienti, ovvero terminaliimplementati in via software su PC desktop, fino a terminali radiomobili. Inoltre, la comunicazione puo avvenire inmodalita punto-punto o punto multipunto, mediante collegamenti diversificati fra di loro tanto in termini di mediacoinvolti, quanto in termini di capacita dei terminali, quanto in termini di risorse di rete. Si esamineranno qui leRaccomandazioni ITU-T di riferimento nei diversi contesti di rete. L’analisi muovera dalla descrizione dell’algoritmodi codifica video utilizzato, che e descritto nella Racc. H.263.

Sala dedicata Sistemi Rollabout Sistemi DesktopAssetto Sala conferenze,

equipment in cabina diregia

Modulo autocontenuto sucarrello

Terminale, videocamera,e monitor su PCvideo telefono

Display Video Proiettore Monitor sul carrello conself view video

Monitor su PC o telefono

Videocamere Multiplecon pan, tilt e zoom

Una o duecon pan tilt e zoom

Unasenza pan tilt e zoom

Illuminazione e acustica Progettata ad hoc Normale NormaleScena tipica Piu di sei partecipanti Fino a sei partecipanti Un partecipante,

inquadratura testa spalleMicrofoni e altoparlanti Microfoni multipli,

cancellatori d’ecoMicrofono centrale con-diviso

Microfono con cuffie ovideotelefono

Tabella 7.1: Sistemi di Videoconferenza.

76

Page 77: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

7.1. PRINCIPI DELLA CODIFICA VIDEO H.263 77

7.1 Principi della codifica video H.263

La codifica H.263 si inserisce nel filone delle tecniche di codifica ibride a trasformata che mirano a ridurre laridondanza temporale e spaziale tipiche delle sequenze video. A tal fine sfrutta la somiglianza fra quadri adiacentimediante tecniche di predizione Inter-frame e la continuità spaziale all’interno dello stesso quadro mediante tecnichedi trasformata Intra-frame. I formati video comunemente adottati per le sequenze di ingresso sono riportati nellaTabella 7.2.

Formato Colonne righe16CIF 1408 11524CIF 704 576

CIF (Common Intermediate Format) 352 288QCIF 176 144SQCIF 128 96

Tabella 7.2: Formati video H.263.

I quadri di ingresso, inoltre, sono tipicamente acquisiti ad una velocita di 10−15 quadri al secondo (frames per second,fps), piu lenta di quella tipica dei servizi televisivi (25− 30fps). Ciascuno dei quadri in ingresso si considera divisoin macroblocchi di 16x16 pixel. Una o piu righe di macroblocchi adiacenti costituiscono un Group di block (GOB).I possibili modi di codifica di ciascun macroblocco sono essenzialmente due: INTER ed INTRA. Nella modalitàINTRA il macroblocco è codificato indipendentemente dai precedenti quadri codificati. Nella modalità INTER ilmacroblocco è codificato identificando un opportuna area 16x16 di riferimento all’interno del quadro precedente, ecodificando il relativo vettore di spostamento e l’errore di predizione, ovvero il macroblocco e suddiviso in quattroblocchi 8 × 8 e codificato identificando, per ciascun blocco 8 × 8, un blocco di riferimento all’interno del quadroprecedente, e codificando quattro vettori di spostamento e l’errore di predizione opportunamente calcolato. Il mododi codifica può essere deciso su base quadro, producendo interi quadri di tipo Intra (quadri I), o su base macroblocco(quadri P).

La scelta del vettore di spostamento, costituito da due componenti intere o semi-intere appartenenti all’intervallodi valori [-16, +15.5], viene effettuata minimizzando una opportuna funzione che misuri la differenza fra il blocco dacodificare ed il blocco candidato come riferimento. La ricerca del blocco di riferimento ottimo può essere vincolatada criteri di riduzione del costo computazionale. Il vettore di spostamento stimato e codificato in forma differenziale.In particolare, è codificata la differenza fra tale vettore ed il mediano di tre vettori opportunamente scelti fra quelliappartenenti a tre macroblocchi adiacenti; la predizione e effettuata indipendentemente sulle due componenti delvettore. Nel caso che i vettori di spostamento da utilizzare per la predizione non siano disponibili7.1 essi sonosostituiti da un valore nullo (bordi laterali) ovvero dal vettore relativo al blocco precedente il blocco attuale (bordosuperiore). Le due componenti del vettore differenza sono poi codificate entropicamente utilizzando una tabella VLCspecificata dallo standard.

Tanto i macroblocchi INTRA quanto l’errore di predizione dei macroblocchi INTER sono trasmessi applicandola trasformazione Discrete Cosine Transform (DCT) a ciascuno dei 4 blocchi 8x8 che li compongono. La trasformataDCT, che è di semplice implementazione, compatta l’informazione visuale in pochi coefficienti di valore significativo.

7.1Cio puo avvenire ai bordi dell’immagine, ovvero in corrispondenza di “confini” logici fra zone di cui si richieda la decodifica indipendente(Independent Segment Decoding, ISD) per aumentare la robustezza rispetto agli errori di trasmissione.

Page 78: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

78 CAPITOLO 7. SERVIZI DI VIDEOTELEFONIA E VIDEOCONFERENZA: LE RACCOMANDAZIONI ITU-T

I coefficienti DCT sono successivamente quantizzati, ottenendo così una compressione dell’informazione pagatacon la perdita di alcuni dettagli visuali, cui l’occhio umano é relativamente poco sensibile. Il coefficiente DCTche rappresenta il valor medio dei blocchi INTRA (INTRA-DC) è quantizzato sempre con passo Q[0, 0] = 8. Adifferenza di quanto avviene negli standard di codifica video precedentemente descritti, caratterizzati da matrice diquantizzazione non uniforme e trasmessa insieme ai dati codificati, i restanti coefficienti (AC) sono quantizzati con unpasso di quantizzazione costante e fissato per un intero macroblocco, Q[k1, k2] = 2·QP, k1 = 0, · · ·8, k2 = 0, · · ·8,con 1 ≤ QP ≤ 31. Il valore QP può variare da un macroblocco all’altro, anche in funzione del tipo di codifica(INTRA, INTER-P, INTER-B). Dopo la quantizzazione, i coefficienti, in gran parte nulli, sono codificati medianteuna opportuna tavola di codici a lunghezza variabile, o Variable Length Code (VLC).

L’algoritmo di codifica ibrido produce in generale un bitstream che, a parita di qualita, presenta bit-rate variabile.In modo analogo a quanto avviene nelle applicazioni di codifica video ad elevato bit-rate, il codificatore puo equaliz-zare il bit-rate di uscita aumentando o diminuendo il livello di compressione in funzione dell’occupazione elevata oridotta del buffer di uscita. Tuttavia, nel caso di bit-rate medio basso questa fluttuazione del livello di compressioneconduce ad una fluttuazione sensibile della qualita visuale che e fastidiosa per l’utente finale ed e, laddove possibile,da evitare.

Per applicazioni di videotelefonia, l’introduzione di quadri INTRA non e necessaria al fine di garantire agli utentiun accesso casuale; essa puo invece essere richiesta dal decodificatore al codificatore utilizzando il canale di ritornoper il recupero di eventuali errori di trasmissione. A causa dell’elevato costo in bit di un quadro INTRA, la suaintroduzione produce un ritardo di trasmissione; d’altro canto diminuire il costo del quadro aumentando il fattore dicompressione produce una drastica riduzione della qualita visuale della sequenza decodificata. In definitiva l’uso diquadri INTRA e limitato ed eventualmente sostituito mediante l’aggiornamento in modalita INTRA di macroblocchiisolati.

7.2 Le opzioni avanzate del codec H.263

Rispetto ad altri sistemi di codifica, quali l’H.261, l’H.263 presenta miglioramenti in termini di efficienza di predizioneinter-quadro, risoluzione temporale, qualità visuale della sequenza ricostruita, e sintassi. Tali miglioramenti sonorispettivamente ottenuti mediante l’adozione delle seguenti quattro opzioni di codifica, finalizzate ad un aumentodell’efficienza di compressione, descritte in differenti annessi tecnici della Raccomandazione:

• Unrestricted Motion Vectors (Annex D); e abilitato l’uso di vettori spostamento che puntino al di fuoridell’immagine, ed estende i vettori all’intervallo [-32,31.5]; aumenta l’efficienza di compressione;

• Syntax based arithmetic coding (Annex E); abilita una codifica particolarmente efficiente e ottimizzata suidiversi elementi sintattici dei coefficienti quantizzati, con un risparmio in bit dell’ordine del 3-4 % sui quadriINTER e del 10 % sui quadri INTRA.

• Advanced Prediction (AP) o Overlapped Block Motion Motion Compensation (OBMC) (Annex F); migliora laqualita dell’immagine predetta a parita di bit-rate, come esemplificato in Fig.7.1;

• PB frames (Annex G); e abilitato l’uso di frame B, ma in un unica unita sintatica col frame P successivo pergarantire l’efficienza di codifica;

Page 79: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

7.2. LE OPZIONI AVANZATE DEL CODEC H.263 79

7.2.1 La motocompensazione avanzata in H.263

La motocompensazione avanzata in H.263 prende il nome di Advanced Prediction (AP) o Overlapped Block MotionMotion Compensation (OBMC) per calcolare la predizione di ciascun pixel utilizza oltre al vettore di moto del blocco8 × 8 attuale anche i vettori di moto dei due blocchi piu vicini. I tre valori di luminanza predetti utilizzando talivettori sono combinati linearmente utilizzando pesi differenti in funzione della posizione del pixel all’interno delblocco, come rappresentato in Fig.7.2 ed esemplificato in Fig.7.3.

Figura 7.1: Esempio di immagine predetta mediante motocompensazione tradizionale e avanzata su blocchi 8x8.

Page 80: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

80 CAPITOLO 7. SERVIZI DI VIDEOTELEFONIA E VIDEOCONFERENZA: LE RACCOMANDAZIONI ITU-T

Figura 7.2: Advanced Motion Compensation su blocchi 8x8.

7.3 La sintassi H.263

La struttura del bitstream ricalca essenzialmente la struttura gerarchica nella quale vengono suddivisi i quadri iningresso. In particolare, sono definiti quattro livelli sintattici:

• quadro (picture layer),

• gruppo di blocchi (GOB layer),

• macroblocco (MB layer),

• blocco (block layer).

A livello di quadro é definito il cosiddetto Picture Header che contiene informazioni di primaria importanza perla decodifica, ed induce una divisione del bitstream in unità sintattiche che, per motivi di robustezza, deve esseremantenuta anche nella fase di multiplazione. Il Picture Header e costituito da una intestazione di lunghezza fissa,contenente un Picture Start Code (PSC) di 22 bit, che abilita la sincronizzazione da parte del decodificatore, un’in-formazione di riferimento temporale (TR) relativa all’indice temporale del quadro riferito ad un clock a 29.97 Hz, eimportanti informazioni di segnalazione. In particolare, sono previste informazioni sul formato della sequenza video,sul tipo di quadro (I, P o PB), sulle opzioni di codifica utilizzate nel quadro, scelte fra quelle negoziate all’iniziodella comunicazione. Il Picture Header, inoltre, contiene il coefficiente PQUANT di 5 bit, che rappresenta il para-metro di quantizzazione utilizzato per l’intero quadro, a meno che non sia alterato da informazioni pertinenti ad unlivello sintattico inferiore, e, nel caso di coppia PB, un’eventuale variazione del coefficiente di quantizzazione sulquadro B (DBQUANT) e il relativo riferimento temporale (TRB). Infine sono previsti comandi per il decodificatore

Page 81: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

7.3. LA SINTASSI H.263 81

Figura 7.3: Esempio di Advanced Prediction.

Page 82: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

82 CAPITOLO 7. SERVIZI DI VIDEOTELEFONIA E VIDEOCONFERENZA: LE RACCOMANDAZIONI ITU-T

(Freeze Picture Release, Split Screen), o per la entita di gestione di conferenze detta Multipoint Control Unit, o MCU(Continous Presence Multipoint, CPM).

Il GOB e una struttura composta da una riga di macroblocchi (SubQCIF, QCIF, CIF), oppure da due (4CIF), oquattro (16CIF) righe di macroblocchi. A livello di GOB, è inserita un’intestazione (GOB header), contenente unGOB Start Code di 17 bit per il recupero di sincronismo al decodificatore in presenza di errori nel bitstream, ed unidentificativo di 5 bit (GN) del numero d’ordine del GOB all’interno del quadro. Il GOB header, opzionalmente,contiene il coefficiente GQUANT a 2 bit, che rappresenta la variazione del parametro di quantizzazione del GOB, ameno che non sia alterato da informazioni pertinenti a livello di macroblocco. Poiché il numero di macroblocchi checostituiscono il GOB è fissato, mentre il corrispondente numero di bit codificati che lo rappresenta è estremamentevariabile, la distanza in bit fra GOB header consecutivi è variabile.

A livello di macroblocco sono inserite tutte le informazioni riguardanti il modo di codifica del macroblocco,i vettori di spostamento7.2 codificati in forma differenziale, nonche la presenza o meno di coefficienti diversi dazero (Coded Block Pattern) nei diversi blocchi. Il livello di macroblocco, opzionalmente, contiene il coefficienteDQUANT, che rappresenta il parametro di quantizzazione del macroblocco, codificato in forma differenziale rispettoal precedente. A livello di blocco sono infine trasmessi il coefficiente DC (8 bit) e i coefficienti AC.

7.4 Versioni, profili e livelli del codec H.263

La versione 2 dello standard H.263 (H.263+), è compatibile all’indietro con l’H.263, ma supporta la codifica diformati video di ingresso anche di alta qualità, riducendo alcune restrizioni su i vettori spostamento e sui parametri diquantizzazione. Inoltre gode della proprieta di scalabilita, consentendo al decodificatore di scartare parte del bitstreame ricostruire una sequenza di ridotta risoluzione, spaziale o temporale, ovvero di ridotta qualità; in tal modo si abilitala decodifica dello stesso flusso decodificato da parte di destinatari i cui terminali differiscano per banda disponibile,potenza di calcolo, o formati di visualizzazione.

Dal punto di vista della robustezza rispetto agli errori, la versione 2 dell’H.263 sostituisce al concetto di GOB(numero di macroblocchi fissato) il concetto di Slice (numero di macroblocchi variabile). Ciò consente di codificare leSlice come unità sintattiche omogenee dal punto di vista della lunghezza in bit, separate da punti di sincronizzazione(Slice header) approssimativamente equidistanti. Slice o GOB all’interno di un quadro sono decodificabili in modoindipendente. Infine, è prevista la possibilità di utilizzare tabelle di codici di tipo RVLC (Reversible Variable-LengthCoding) per i vettori spostamento, che consentono la decodifica del codice tanto a partire dal primo bit che dall’ultimo,e di fronteggiare pertanto meglio eventuali errori di trasmissione intermedi.

La versione 3 dello standard H. 263 (H.263++) prevede la modalità di codifica Data Partitioning, che separa,all’interno del flusso codificato, sezioni che rappresentano dati di diversa importanza visuale. In tale modalità i datisono organizzati a segmenti indipendenti, e ogni segmento è diviso in due parti separate da opportuni marcatori. Laprima parte rappresenta i vettori di spostamento e gli header dei macroblocchi, mentre la seconda parte rappresenta irelativi coefficienti DCT.

Il sistema di codifica H.263 prevede differenti opzioni di codifica, finalizzate a maggiore efficienza di compressionee miglioramento della qualità visuale, e differenti versioni, tali da offrire maggiore robustezza rispetto agli errori di

7.2Ad ogni macroblocco compete un vettore spostamento nel caso di motocompensazione ordinaria e quattro vettori spostamento, uno per ciascunblocco 8x8, nel caso di AP.

Page 83: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

7.5. RACCOMANDAZIONI ITU-T PER VIDEOTELEFONIA E VIDEOCONFERENZA SU RETE FISSA 83

trasmissione. Per semplificare la negoziazione e l’interazione fra codec sono stati identificati un insieme limitato diprofili, caratterizzati dall’uso di un sottoinsieme limitato di opzioni di codifica, riportati nelle Tabelle 7.5,7.4.

Gli strumenti di robustezza all’errore citati, ovvero la codifica in numero di macroblocchi variabile, la codificaRVLC dei dati rilevanti, la codifica indipendente di diverse aree dell’immagine, la partizione dei dati di diversarilevanza visuale sono, almeno nei principi ispiratori, condivisi con lo standard MPEG-4.

Annex Funzionalitá Miglioramenti ottenutiD Unrestricted Motion Vectors efficienza di codificaF Advanced Prediction qualitá soggettiva riducendo la blocchettizzazioneI Advanced INTRA Coding (1) efficienza di codifica per MBJ Deblocking Filter riduzione della blocchettizzazioneK Slice Structured mode robustezza agli errori

L.4 Full Picture Freeze (SEI mode) anteprima di immagini ad alta qualitáO.1 B-Pictures (Temporal Scalability Mode) fluiditáP.5 Reference Picture Re-sampling (2) ricampionamento del quadro di riferimentoT Modified Quantization flessibilitá della quantizzazione (3)

U Enhanced Reference Picture Selection efficienza di codificaV Data Partitioned Slice Mode robustezza agli errori

W.6.3.8 Previous Picture Header Repetition robustezza agli erroriW.6.3.11 Interlaced Field Indications applicabilitá ai formati interallacciati

Tabella 7.3: Annessi tecnici allo standard di codifica video H.263. (1) Abilita la predizione dei coefficienti DCT di un MBINTRA a partire da quelli di altri MB INTRA. (2) Abilita la generazione di una nuova immagine di riferimento mediantericampionamento, al fine di supportare un cambio di formato o di consentire una motocompensazione globale. (3) Abilita lasostituzione del parametro di quantizzazione con delle matrici di quantizzazione.

Fra i profili citati, evidenziamo il profilo baseline, di minima complessità, che non utilizza nessuna opzioneaggiuntiva di codifica, e il profilo wireless, che supporta le tecniche di Advanced INTRA Coding, Modified Quanti-zation e Deblocking Filter, che migliorano la qualità visuale ai bassi bit rate, e la codifica su base Slice, che migliorala robustezza agli errori. In dipendenza della versione di codec supportata dal terminale, è adottata la modalità DataPartitioning e la ripetizione di parametri critici per la decodifica.

7.5 Raccomandazioni ITU-T per videotelefonia e videoconferenza su retefissa

La normativa ITU-T definisce, nell’ambito delle Raccomandazioni della serie H Visual Telephone Systems, i sistemi edi terminali per servizi di comunicazioni multimediali punto-punto e punto-multipunto, mediante la specifica di aspettifunzionali per una fissata rete di comunicazione. In particolare, le raccomandazioni di tipo definiscono i terminali(H.32x), le codifiche video (H.26x), il multiplex di trasporto (H.22x), le procedure di controllo tra terminali (H.24x),le codifiche voce/audio (G.7xy), i protocolli per la gestione di dati multimediali e la condivisione di applicazioni(T.12x).

Page 84: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

84 CAPITOLO 7. SERVIZI DI VIDEOTELEFONIA E VIDEOCONFERENZA: LE RACCOMANDAZIONI ITU-T

Per la videcomunicazione su N-ISDN7.4, la Raccomandazione H.320 definisce la struttura generale del terminale,le interfacce relative alla rete di comunicazione e la segnalazione di rete, le regole di multiplazione e demultiplazione(Racc.H.221) dei flussi audio, video e dati e i relativi algoritmi di codifica, e infine la segnalazione tra terminali(Racc.H.242).

La Raccomandazione H.324 definisce il terminale e le entita per la videcomunicazione su GSTN mediante modema 28.8 kBit/s. Le entita previste dalla Raccomandazione H.324 sono

• i terminali, realizzati mediante PC o dispositivi dedicati;

• i gateway, che abilitano la connessione con terminali o reti con terminali non-H.324, traducendo i protocolliper iniziare e rilasciare una chiamata;

• la Multipoint Control Unit (MCU), che supporta conferenze con più di tre partecipanti e svolge funzioni diprocessing e di controllo.

La raccomandazione H.323 definisce la videocomunicazione su reti a pacchetto a qualita non garantita, ed inparticolare reti IP. Può essere adottata su LAN, ATM, GSTN, ADSL. Essa prevede

• i terminali,

• i gateway,

• la Multipoint Control Unit (MCU),

• i Gatekeeper, opzionali, che gestiscono le chiamate, gli indirizzamenti, le autorizzazioni, l’occupazione dibanda,

cioe tutte le entita gia citate per la Raccomandazione H.324 e i Gatekeeper. I blocchi funzionali Gateways, Gatekeepere MCU possono risiedere in una sola unità di rete.

Le raccomandazioni H.324 e H.323 condividono i protocolli di controllo della comunicazione, descritti nellaraccomandazione H.245. La segnalazione H.245, fra l’altro, consente l’apertura e chiusura di canali logici, la descri-zione del loro contenuto, la negoziazione delle capacita del terminale, l’indicazione della modalita di multiplazionee protezione e di alcuni parametri del trasporto, fra cui la dimensione della Maximum Transfer Unit, MTU 7.5 .

La Raccomandazione H.225 presente in H.323 descrive, oltre ai formati di multiplazione, le procedure di se-gnalazione per il controllo di chiamata, per disciplinare l’accesso alle risorse di rete (Registration Admission Status,RAS). Le procedure RAS per Autenticazione, Autorizzazione, Accounting, consentono lo scambio di informazionifra terminali/gateway e gatekeeper, per funzionalita di gatekeeper discovery, registrazione di terminali, localizzazioneed assegnazione di indirizzo, controllo di ammissione e restrizione degli accessi; in tal senso la raccomandazioneH.225 integra l’informazione di controllo definita in H.245.

7.4La capacita N-ISDN e tipicamente fornita nella modalita di accesso base a 144 Kb/s (2 B channel a 64 Kb/s e un D channel a 16 Kb/s)ovvero nella modalita di accesso primario a 2048 Kb/s risultante da differenti combinazioni di canali B a 64 Kb/s, D a 16 o 64 Kb/s, o H a 384,536, 1920, 2048 Kb/s.

7.5Comandi e indicazioni non richiedono risposte esplicite da parte del terminale remoto: i comandi forzano un azione mentre le indicazionimandano un’informazione. Richieste richiedono azioni e risposte immediate. Le risposte sono i messaggi di ritorno per le richieste.

Page 85: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

7.5. RACCOMANDAZIONI ITU-T PER VIDEOTELEFONIA E VIDEOCONFERENZA SU RETE FISSA 85

7.5.1 I formati di multiplazione a pacchetto H.223 e H.225 (RTP) per i flussi di datimultimediali

Sia la Raccomandazione H.324, per connessioni a circuito, che la Raccomandazione H.323, per connessioni a pac-chetto, prevedono formati di multiplazione a pacchetto, definiti rispettivamente nelle Raccomandazioni H.223 eH.225.

I protocolli di multiplazione previsti in H.223 prevedono uno strato di adattamento (Adaptation Layer) ed uno dimultiplazione (Multiplex Layer). L’AL adatta i pacchetti in uscita ai codec di sorgente aggiungendo un numero dibyte variabile in funzione del tipo di dati trasmessi. Si definiscono tre tipi di AL:

• AL1, che non aggiunge dati al bitstream demandando il controllo d’errore agli strati superiori (formato tipicodei dati),

• AL2, che aggiunge al pacchetto un byte di CRC e opzionalmente un byte per numerazione di sequenza (formatotipico dell’audio),

• AL3, che aggiunge al pacchetto due byte di CRC e opzionalmente uno o due byte per numerazione di sequenzae controllo, ed ammette un meccanismo di ritrasmissione (formato tipico del video).

La peculiarita del formato di multiplazione H.225 previsto in H.323 e che non è definito un vero e proprio flussomultiplato, ma ciascun flusso (audio, video, dati) e trasmesso separatamente e la multiplazione e realizzata dal livellodi rete. Ogni pacchetto porta un time stamp, che consente la equalizzazione dei ritardi (jitter) e la sincronizzazionetra media diversi. Ciascun flusso, audio, video o dati, e trasferito utilizzando una pila protocollare unreliable el’informazione di controllo e segnalazione H.245 e trasferita utilizzando una pila protocollare reliable. Di assolutarilevanza operativa e il caso di un supporto di rete IP, in cui la pila protocollare unreliable per i flussi audio, videoo dati e la pila RTP/UDP/IP, la pila protocollare reliable per il controllo e la segnalazione e la pila TCP/IP.

Osserviamo che nel contesto H.323 la videoconferenza punto multipunto puo fruire delle funzionalita di multicastdella rete, assumendo una forma decentralizzata e alleggerendo le funzionalita della MCU.

I formati di multiplazione H.223 e H.225 presentano forti analogie, essendo entrambi orientati al pacchetto erealizzando funzionalita di rivelazione d’errore e sequence numbering; le principali differenze risiedono nel fatto che,rispetto a RTP/UDP/IP, il mux H.223 presenta minore overhead, consente la ritrasmissione, e piu robusto agli errori;d’altro canto non possiede meccanismi per il riferimento temporale, non gestisce le congestioni, ed e progettato peruna banda massima piu piccola.

Page 86: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

86 CAPITOLO 7. SERVIZI DI VIDEOTELEFONIA E VIDEOCONFERENZA: LE RACCOMANDAZIONI ITU-T

Il protocollo RTPA livello di trasporto, le reti IP utilizzano comunemente due protocolli. Il primo, TCP, caratterizzato da un headertipico di 20 byte, offre un servizio byte-oriented affidabile, basato su meccanismi di ritrasmissione e controlli ditime-out, che a causa della impredicibilita dei ritardi introdotti non si adatta alle comunicazioni real-time; il secondo,UDP, offre un servizio semplice non affidabile. L’UDP Header di 8 byte fornisce una check-sum del payload delpacchetto IP. A meno di tale controllo di parita, il protocollo non introduce funzionalita rispetto al protocolloIP; pertanto i pacchetti UDP/IP possono essere persi, duplicati, consegnati fuori sequenza, dal trasferimento. Ilprotocollo RTP e un protocollo end-to-end di livello di applicazione tipicamente usato su UDP/IP. Il pacchetto RTPconsta di un header di 12 byte che contiene informazioni di sequence numbering, time-stamps, payload type a, markerbit b, identificativi della sorgente del flussoc. Il protocollo RTP prevede un canale di controllo di ritorno opzionale(RTCP) che consente al coder di monitorare i pacchetti effettivamente arrivati a destinazioni nelle condizioni attualidella rete.

aIl Payload Type contiene l’indicazione del codec multimediale relativo al payload trasportato, secondo tabelle standardizzate o scambiatenella fase di negoziazione delle opzioni di codifica

bIl Marker bit identifica l’ultimo pacchetto di un gruppo caratterizzato dalla stesso time-stamp; ad esempio l’ultimo pacchetto relativo allostesso quadro video; cio consente al decodificatore di iniziare la decodifica prima della ricezione del successivo pacchetto RTP.

cIl campo Synchronization Source Identifier SSRC consente di identificare la sorgente del flusso; nel caso di dati risultanti dal miscelamentodi piu sorgenti, i campi opzionali Contributing Source Identifier CSRC consentono l’identificazione delle diverse sorgenti coinvolte.

7.5.2 Il formato RTP per il flusso binario H.263

Dal punto di vista concettuale, i criteri di frammentazione del bitstream e incapsulamento nei pacchetti del trasportomirano a rendere il bitstream robusto rispetto a errori casuali e a perdita di pacchetto, e possono essere sintetizzati inpoche linee guida:

• a ciascuna unità semantica (quadro, segmento di immagine) e a ciascuna unità sintattica provvista di strumentidi risincronizzazione (gruppo di blocchi) dovrebbe corrispondere un solo pacchetto

• gli header dei diversi livelli sintattici del bitstream non devono essere divisi in più pacchetti

• gli header dei diversi livelli sintattici del bitstream devono essere collocati all’inizio del pacchetto

La pacchettizzazione RTP del flusso binario H.263 definita in [3] opera secondo i criteri sovraesposti. Gli start-code che cadono all’inizio di un pacchetto RTP possono essere sinteticamente segnalati mediante un opportuno bit diintestazione. Ogni pacchetto RTP contiene un Header RTP di lunghezza fissa, contenenti, fra gli altri, un Marker bit(M), che segnala se il pacchetto contiene o meno la fine del quadro corrente, un campo di Payload Type (PT), chespecifica il formato H.263 del payload, ed un Time Stamp che codifica l’istante di campionamento del primo quadrocontenuto del pacchetto, consentendo la sincronizzazione fra media differenti, nonché fra strati base e enhancement nelcaso di codifica scalabile. All’interno del pacchetto RTP è poi trasportato il payload H.263. Ai fini della robustezzaagli errori, il flusso dovrebbe contenere una copia ridondante del Picture header, così da consentire la decodificaanche quando la prima sia andata persa. Inoltre, la lunghezza in bit dell’unita sintattica codificata dovrebbe esserescelta in modo da non superare la dimensione della Maximum Transfer Unit (MTU) della rete7.6. Ad esempio, si

7.6Su reti Ethernet la MTU ha dimensione pari a 1500 byte; su reti wireless la MTU ha dimensione dell’ordine dei 100 byte.

Page 87: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

7.5. RACCOMANDAZIONI ITU-T PER VIDEOTELEFONIA E VIDEOCONFERENZA SU RETE FISSA 87

potrebbe trasferire un quadro in un unico pacchetto RTP, laddove la stringa codificata corrispondente al quadro nonsuperi la lunghezza della MTU della rete. Alternativamente, il quadro potrebbe essere suddiviso in più segmentitrasmessi indipendentemente mediante un primo pacchetto seguito da uno o più pacchetti follow-on, con ripetizionedel picture header.

Figura 7.4: Schema a blocchi del terminale H.324.

Page 88: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

88 CAPITOLO 7. SERVIZI DI VIDEOTELEFONIA E VIDEOCONFERENZA: LE RACCOMANDAZIONI ITU-T

Figura 7.5: Pila protocollare del terminale H.323.

Page 89: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

7.5. RACCOMANDAZIONI ITU-T PER VIDEOTELEFONIA E VIDEOCONFERENZA SU RETE FISSA 89

N. Profile Name Description Version Annexes0 Baseline Minimal capability. H.263 None1 H.320 Coding

Efficiency V2Backward-Compatibility

Enhanced coding effi-ciency. 7.3

H.263+ Advanced INTRA Coding,

2 V1Backward-Compatibility

Enhanced coding effi-ciency within the firstversion di H.263 (V1).

H.263 Advanced Prediction

3 V2 Interactive and Strea-ming Wireless

Enhanced coding effi-ciency. Enhanced errorresilience for delivery towireless devices.

H.263+

Advanced INTRA CodingDeblocking FilterSlice Structured modeModified Quantization

4 V3 Interactive and Strea-ming Wireless

Enhanced coding effi-ciency. Enhanced errorresilience for delivery towireless devices.

H.263++

Advanced INTRA CodingDeblocking FilterSlice Structured modeModified QuantizationData Partitioned Slice ModePrevious Picture Header Repetition

5 Conversational HighCompression

Enhanced coding effi-ciency. No delay associa-ted with B pictures. Noerror resilience.

H.263++

Unrestricted Motion VectorsAdvanced PredictionAdvanced INTRA CodingDeblocking FilterFull Picture FreezeModified QuantizationEnhanced Reference Picture Selection

6 Conversational Internet Enhanced coding effi-ciency. No delay asso-ciated with B pictures.With error resilience mo-des suitable for InternetProtocol (IP) networks.

H.263++

Unrestricted Motion VectorsAdvanced PredictionAdvanced INTRA CodingDeblocking FilterSlice Structured modeFull Picture FreezeModified QuantizationEnhanced Reference Picture Selection

7 Conversational InterlaceProfile

Enhanced coding effi-ciency for low-delay ap-plications. Support diinterlaced video.

H.263++

Unrestricted Motion VectorsAdvanced PredictionAdvanced INTRA CodingDeblocking FilterFull Picture FreezeModified QuantizationEnhanced Reference Picture SelectionInterlaced Field Indications

8 High Latency Profile Enhanced coding effi-ciency for applicationswithout critical delayconstraints.

H.263++

Unrestricted Motion VectorsAdvanced PredictionAdvanced INTRA CodingDeblocking FilterSlice Structured modeFull Picture FreezeB-PicturesReference Picture Re-samplingModified QuantizationEnhanced Reference Picture Selection

Tabella 7.4: Profili dello standard di codifica video H.263.

Page 90: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

90 CAPITOLO 7. SERVIZI DI VIDEOTELEFONIA E VIDEOCONFERENZA: LE RACCOMANDAZIONI ITU-T

Terminal capability messages (H.263)advancedIntraCodingMode, deblockingFilterMode, improvedPBFramesMode, unlimitedMotionVectors,PictureFreeze (full, partial, resizing), PictureSnapshot (full, partial)dynamicPictureResizing, Warping, progressiveRefinement, modified QuantizationModeIndependentSegmentDecoding, slicesInOrder-NonRect (NoOrder, Rect), dataPartitionedSlices, PictureHeaderRepetition (current, previous, next).Logical Channel Signaling (H.223)adaptationLayerType: nonStandard, al1 (framed unframed), al2 (with or without sequence number), al3 (number of control field octets, size of the sendbuffer), al1M, al2M, al3MPictureFreeze (full, partial, resizing), PictureSnapshot (full, partial)headerFEC, crcLength, rcpcCodeRate, arqType, alpduInterleaving, alsduSplitting, rsCodeCorrectionLogical Channel Signaling (H.225)sessionID (unique RTP or T.120 Session Identifier), associatedSessionID (lip synchronization), transportAddress (unicast, multicast),mediaChannel (IPv4, IPv6), mediaGuaranteedDelivery, mediaControlChannel mediaControlGuaranteedDelivery, silenceSuppression, dynamicRTPPay-loadType, mediaPacketizationMiscellaneous CommandvideoFreezePicture, videoFastUpdate (Picture, GOB, MB), videoTemporalSpatialTradeOffvideoSendSyncEveryGOB (Cancel), maxH223MUXPDUsize

Tabella 7.5: Esempi di messaggi H.245.

Page 91: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Bibliografia

[1] G. Scarano, “Dispense di elaborazione delle immagini”, http:infocom.uniroma1.it/gscarano.

[2] B. G. Haskell, P. G. Howard, Y. A. LeCun, A. Puri, J. Ostermann, M.R. Civanlar, L. R. Rabiner, L. Bottou, and P. Haffner, “Imageand Video Coding-Emerging Standards and Beyond”, IEEE Transactions on Circuits and Systems for Video Technology, Vol. 8, No. 7, pp.814-837, November 1998

[3] IETF RFC 2429: RTP Payload Format for the 1998 Version of ITU-T Rec. H.263 Video (H.263+), Bormann C. et al., October 1998.

91

Page 92: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Capitolo 8

Lo standard ISO MPEG-4

8.1 Principi dello standard MPEG-4

Gli standard di codifica video MPEG-1, MPEG-2 e H.26x nascono per applicazioni chiaramente definite e limitate,quali, rispettivamente la distribuzione di televisione digitale e la videocomunicazione interpersonale. Lo standardMPEG-4 nasce per soddisfare le esigenze di un ampio insieme di applicazioni, non tutte completamente definite almomento della definizione dello standard.

Lo standarda MPEG-4 e stato concepito per applicazioni multimediali estremamente differenziate dal punto divista dei dati stessi (audio, video, immagini fisse), della natura delle sorgenti di dati (naturali o sintetiche), dellaarchitettura di comunicazione (punto-punto, punto-multipunto, multipunto-multipunto), e delle funzionalita richieste(post-elaborazione avanzata, editing e manipolazione, robustezza agli errori).

L’attivita di standardizzazione di MPEG-4, sviluppatasi fra il 1993 e il 1999, ha mirato a definire un insiemedi strumenti (tools) di codifica per un insieme di applicazioni differenziate fra di loro. Fra le principali aree diapplicazione sono state considerate particolarmente rilevanti:

• Distibuzione di dati a qualita televisiva, con avanzata interattivita dell’utente

• Comunicazioni multimediali per utenti mobili

• Produzione di dati multimediali con elevata flessibilita rispetto al contenuto

• Giochi e applicazioni di intrattenimento basate su dati naturali e sintetici

• Video Streaming su Internet

Per supportare tali applicazioni, lo standard MPEG-4 offre caratteristiche riconducibili a

• Elevata efficienza di compressione (Compression Efficiency)

• Accessibilita mediante differenti supporti, fissi o mobili, a banda larga o stretta (Universal Access)

• Interattivita orientata al contenuto (Content-based Interactivity)

92

Page 93: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

8.1. PRINCIPI DELLO STANDARD MPEG-4 93

Per supportare le funzionalita sopra citate, lo standard definisce una codifica dei dati multimediali, e in particolaredella sequenza video, orientata agli oggetti. La scena da rappresentare, (composta da video e audio, di tipo naturaleo sintetico), e descritta come una composizione di oggetti con evoluzione spaziale e temporale indipendenti.

Figura 8.1: Esempio di decomposizione di contenuto multimediale in oggetti audio e video .

Un oggetto MPEG-4 puo essere di tipo video o audio, naturale o sintetico. Un oggetto video naturale puo esseredi tipo rettangolare di dimensioni arbitrarie, oppure puo avere forma arbitraria ed essere eventualente caratterizzatoda informazioni di trasparenza; puo inoltre essere caratterizzato da profondita di colore variabile fra 4 bit e 12 bit;puo inoltre degenerare in un’immagine fissa. Un oggetto video di tipo sintetico, che a sua volta puo contenere una opiu porzioni estratte da video naturale, puo avere differente complessita, ma e tipicamente di tipo animato, a partireda video e immagini fisse sintetiche o naturali. Fra gli oggetti audio di MPEG-4 compaiono oggetti di tipo audiotradizionale, fra cui il segnale vocale, oggetti ibridi quale segnale vocale generato a partire da un testo, o ancheoggetti sintetici per la generazione di suoni piu o meno complessi.

L’approccio ad oggetti apre la strada ad una differenziazione del trattamento degli oggetti stessi in termini di:

• strumenti di codifica (tools8.1);

• risorse allocate per la trasmissione;

• risorse allocate per la protezione;

• formati di codifica.8.1Nell’ambito MPEG-4 e usuale parlare di tools piuttosto che di algoritmi di codifica, perche lo standard mira a fornire strumenti utilizzabili

in modo flessibile e riconfigurabile.

Page 94: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

94 CAPITOLO 8. LO STANDARD ISO MPEG-4

I principali oggetti individuati in MPEG-4 e i corrispondenti Profili di codifica sono gli oggetti video naturali(Tabella 8.1), gli oggetti video sintetici e ibridi (Tabella 8.2), gli oggetti audio naturali e sintetici(Tabella 8.3), glioggetti grafici (Tabella 8.4), e i descrittori della scena (8.5).

Per cio che concerne la codifica di oggetti video, gli oggetti video naturali sono codificati mediante tecniche dicodifica ibrida a trasformata, opportunamente adattate alla codifica di oggetti forma arbitraria. Oltre a tali tecnichedi codifica, MPEG-4 include nei profili di codifica di oggetti video sintetici, l’animazione di volti umani descrittamediante la caratterizzazione della locazione assoluta e dell’evoluzione temporale di opportuni punti di riferimento(Simple Facial Animation). MPEG-4 offre inoltre la possibilita di mappare tessiture statiche in superfici 2D e 3D perla generazione di oggetti sintetici, e di descrivere tessiture animate. Le tessiture statiche sono codificate utilizzandostrumenti di codifica wavelet-based, analoghi a quelli definiti in JPEG 2000; a differenza di quanto previsto nelJPEG 2000, tali tool prevedono la predizione fra elementi di differenti sottobande, risultando cos´ piu efficienti incompressione ma meno robusti rispetto agli errori. Le tessiture animate sono descritte mediante l’animazione di ungrigliato (mesh) a maglia triangolare, che consente l’uto di trasformazioni di tipo affine per la motocompensazione.Infine, MPEG-4 consente la codifica indipendente di sfondi, detti sprite; per gli oggetti sprite sono abilitate operazionidi image warping, per supportare variazioni quali zoom o panning, e cambiamenti di illuminazione.

Profilo FunzionalitáSimple Efficienza di compressione, Resistenza agli errori, Oggetti video rettangolari,

Simple Scalable Scalabilità in spazio, in tempoCore Oggetti di forma arbitraria, Scalabilità in tempoMain Oggetti interallacciati, Oggetti semitrasparenti, SpriteN-Bit Oggetti con dinamica da 4 a 12 bit/pixel

Tabella 8.1: Profili video naturale.

Profilo FunzionalitáSimple Facial Animation Animazione di un modello di viso umano

Scalable Texture Scalabilità in spazio di immagini fisseBasic Animated 2D Texture Scalabilità SNR, Animazione di immagini fisse basata su mesh

Hybrid Video sintetico e naturale (con oggetti del profilo Core)

Tabella 8.2: Profili video sintetico o ibrido.

Profilo FunzionalitáSpeech Coder parametrico VLB, Coder CELP narrow/wideband, Interfaccia Text-To-Speech

Synthesis Sintesi di suoni e rumori, Interfaccia Text-To-SpeechScalable Scalabilità per parlato e musica

Main Funzionalita precedenti e algoritmi di tipo AAC e TWinVQ

Tabella 8.3: Profili audio.

Page 95: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

8.2. LA CODIFICA VIDEO DI OGGETTI DI FORMA ARBITRARIA 95

Profilo FunzionalitáSimple 2D posizionamento di uno o più oggetti visuali

Complete 2D testo e grafica bidimensionaleComplete 3D grafica avanzata, gestione di illuminazione degli oggetti

Tabella 8.4: Profili grafici.

Profilo FunzionalitáAudio applicazioni con solo contenuto audio

Simple 2D uno o più oggetti audiovisuali senza supporto di interattivitàComplete 2D descrizione di scene 2D

Complete (VRML) insieme completo degli elementi BInary Format for Scene description(BIFS)

Tabella 8.5: Profili di descrizione della scena.

Figura 8.2: Oggetto video sintetico di tipo Simple Face rappresentato nel profilo Simple Facial Animation.

8.2 La codifica video di oggetti di forma arbitraria

La figura 8.3 mostra l’architettura base di un codificatore video basato sul contenuto della scena. Gli oggetti (di tiponaturale o sintetico 2D o 3D) sono rappresentati come entità indipendenti, individualmente accessibili nel bitstream.Gli oggetti che costituiscono la scena sono poi ricomposti tramite informazioni dette di composizione. Ciascunoggetto puo essere rappresentato in modo scalabile mediante diversi Layer, ovvero diversi livelli di informazione;grazie all’approccio ad oggetti, la scalabilita puo essere realizzata in modo differenziato per i diversi oggetti checompongono la scena.

Page 96: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

96 CAPITOLO 8. LO STANDARD ISO MPEG-4

Figura 8.3: Il codificatore video MPEG-4.

Il codificatore dei VOP, rappresentato in Fig.8.10, è composto due componenti, che operano parallelamente sullostesso VOP. Il primo componente è il codificatore della forma, che può essere binaria o a scala di grigi per consentire lacodifica di trasparenze; tale componente è opzionale ed è omesso laddove il VOP sia di forma rettangolare e coincidacon il singolo quadro. Il secondo componente è il codificatore di movimento e tessitura, applicato al VOP di formaarbitraria. Le informazioni di forma, moto e tessitura possono essere multiplate a livello di macroblocco (modalitacombined) oppure i dati di forma, moto e tessitura relativi ai diversi macroblocchi possono essere raggruppati a livellodi VOP e trasmessi in tre sezioni separate (modalita separated).

8.2.1 Gli strumenti per la codifica dell’informazione di forma

Le informazioni di forma possono essere di natura binaria ( alpha plane) o a scala di grigio (grey scale alpha plane).Nel caso binario i pixel sono rappresentati da valori di luminanza pari a 255 se sono parte dell'oggetto (pixel opachi)e con valori di luminanza nulli se sono esterni all'oggetto (pixel trasparenti). Il supporto dell'informazione di formadell'oggetto è un rettangolo (bounding box) che contiene l'oggetto da codificare esteso a multipli di macroblocchi di16x16 pixels. Le informazioni di forma di tipo binario sono codificati mediante una tecnica di codifica aritmeticadetta Content-based Arithmetic Encoding, CAE; le informazioni di forma a scala di grigio sono trattate tramite motocompensazione e DCT.

Nel caso di informazione di forma di tipo binario, i macroblocchi del bounding box sono detti binary alpha blocks,BAB. Si distinguono tre tipi di BAB: blocchi trasparenti, esterni all'oggetto, blocchi opachi, interni all'oggetto, eblocchi di bordo, che coprono i bordi dell'oggetto. La codifica della forma dei blocchi di bordo è basata sul contestoe sfrutta la ridondanza spaziale e temporale dell'informazione di forma binaria da codificare. Se il BAB e codificato

Page 97: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

8.2. LA CODIFICA VIDEO DI OGGETTI DI FORMA ARBITRARIA 97

Figura 8.4: Il codificatore di oggetti video naturali.

in modalita Intra, per ogni pixel viene considerato un contesto causale di 10 pixel per la predizione del valore di formadel pixel corrente. In base al contesto, il codificatore di tipo aritmetico indicizza una tabella di codice differente;utilizzando tale tavola, si pilota un encoder di tipo aritmetico (CAE), che seleziona un’opportuna parola di codice.Se il BAB e codificato in modalita Inter, ad esso e assegnato un vettore di moto, ed il residuo di predizione e ancoracalcolato utilizzando un codificatore aritmetico basato su contesto causale. Il contesto utilizza 9 pixel, di cui 4 estrattidal quadro attuale e 5 alla locazione moto compensata nel VOP precedente. La codifica della forma può essere conperdita, ed un’opportuna soglia (alpha threshold) indica, per ciascun BAB, il massimo numero di pixel non codificaticorrettamente all'interno di un blocco di bordo.

8.2.2 Gli strumenti per la codifica di movimento e tessitura di oggetti di forma arbitraria

La codifica del singolo VOP e una codifica ibrida a trasformata basata sulla motocompensazione e sulla trasformataDCT, opportunamente adattati per essere applicati ad oggetti di forma arbitraria.

La stima del movimento, viene effettuata attraverso un algoritmo di ricerca basato su una misura della differenzatra i blocchi del VOP attuale e i blocchi di quello di riferimento traslati. La ricerca viene effettuata sia sulla base dimacroblocchi 16x16 che di blocchi 8x8; la funzione di costo utilizzata nella stima di spostamento opera unicamentesui pixel interni all’oggetto, e nel VOP di riferimento si effettua un padding esterno all’oggetto prima di operare lamotocompensazione come rappresentato in Fig.8.5. La precisione dei vettori spostamento può essere a pixel interi,al mezzo pixel e al quarto di pixel. Ciascun vettore spostamento è trasmesso in forma differenziale rispetto adun predittore, analogamente a quanto definito in H.263. La motocompensazione ammette le modalità UnrestrictedMotion Vector e Advanced Prediction, analoghe a quelle definite in H.263.

Page 98: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

98 CAPITOLO 8. LO STANDARD ISO MPEG-4

I VOP INTRA e gli errori di predizione relativi ai VOP INTER sono codificati utilizzando la trasformata DCT8x8 delle componenti di luminanza e crominanza. I macroblocchi al bordo di un VOP di forma arbitraria sonoopportunamente completati prima di operarne la DCT. Se il macroblocco e codificato INTER, i pixel esterni al VOPsono posti a zero; se il macroblocco e codificato INTRA, il padding detto Low-Pass Extrapolation, e effettuato indue passi, estendendo il valor medio dei pixel interni al VOP ai pixel esterni al VOP stesso, e sfumando i bordifra pixel interni ed esterni (vedi Fig.8.5). I coefficienti DCT possono essere quantizzati utilizzando lo stesso passodi quantizzazione per tutti i coefficienti di frequenza non nulla, analogamente a quanto avviene in H.263, ovveroquantizzando più finemente i coefficienti di frequenza più bassa, analogamente a quanto avviene in MPEG-2; inoltre,le matrici possono essere scelte dal codificatore e scritte nel bitstream. Tanto il coefficiente a frequenza nulla (DC)quanto la prima riga e la prima colonna degli altri coefficienti (AC) possono essere codificati in forma differenziale,come illustrato in Fig.8.7. L’ordine in cui sono trasmessi i coefficienti quantizzati e predetti viene scelto fra trediversi ordini di scansione: a zig zag, orizzontale alternata, verticale alternata. Infine viene effettuata la codificaentropica dei coefficienti non nulli presenti nel blocco e del numero di zeri che compaiono tra di essi utilizzandocodici a lunghezza variabile (VLC), oppure codici a lunghezza variabile reversibili (RVLC).

Figura 8.5: Adattamento della notocompensazione e della trasformata per la codifica di oggetti di forma arbitraria.

8.2.3 La sintassi MPEG-4 Visual

La struttura sintattica del bitstream video e la seguente:

• Visual Object Sequence, o Video Session (VS), che rappresenta la scena completa, e contiene uno start codenon emulabile di 24 bit;

Page 99: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

8.2. LA CODIFICA VIDEO DI OGGETTI DI FORMA ARBITRARIA 99

Figura 8.6: Predizione dei coefficienti DCT fra blocchi adiacenti.

• Video Object (VO), che rappresenta l’intero oggetto in evoluzione, contiene uno start code e un identificativodell’oggetto;

• Video Object Layer (VOL), che convoglia le informazioni relative allo strato (di bae o di enhancement) dell’og-getto in questione; fra le informazioni a livello di VOL citiamo uno start code, il tipo di forma (rettangolare,binaria, scala di grigio), le dimensioni in pixel nel caso di oggetto rettangolare, la precisione in bit per pixel, ilmetodo di quantizzazione scelto (H.263 o MPEG-2 ), le eventuali matrici di quantizzazione INTRA e INTER,la precisione della stima del vettore di moto (che puo arrivare al quarto di pixel), la attivazione degli strumentidi robustezza agli errori di trasmissione;

• Group of Video Object Plane (GOV), che svolge un ruolo analogo a quello del GOP

• Video Object Plane (VOP), che sostituisce il tradizionale concetto di quadro della sequenza video; contieneinformazioni di Start Code, di tipo di VOP (I,P,B), le dimensioni del bounding boxnel caso di oggetto di formaarbitraria, un opportuno marker di risincronizzazione, il numero di macroblocchi all’interno del VOP, il valoredel parametro di quantizzazione, e informazioni di sincronizzazione della presentazione.

• Video packet, la cui sintassi e discussa nel paragrafo dedicato agli strumenti di robustezza all’errore di MPEG-4.

Page 100: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

100 CAPITOLO 8. LO STANDARD ISO MPEG-4

Figura 8.7: Predizione dei coefficienti DCT fra blocchi adiacenti.

8.3 La codifica video in ambienti di trasporto soggetti ad errore

La distribuzione di video per servizi televisivi e stata, almeno in origine, caratterizzata da elevata qualità del canale,con specifiche di BER dell’ordine di 10−10, 10−11 all’ingresso del decodificatore video. Con la diffusione dei servizivideo in ambienti di trasmissione maggiormente soggetti ad errori, caratterizzati da BER dell’ordine di 10−3, 10−5,si è reso necessario dotare i sistemi di codifica e decodifica di strumenti per reagire alla degradazione della sequenzadecodificata causata dagli errori di trasmissione 8.2. Si consideri che mentre il primo tipo di servizi citato prevedevaun errore ogni ora di trasmissione, nel secondo caso l’errore si presenta su una larga percentuale dei quadri 8.3.

Il bistream codificato utilizza tipicamente tavole di codice di lunghezza variabile (VLC), ed un errore anche suun solo bit puo causare diversi tipi di effetti:

• l’errore produce una sequenza illegale ed il decoder rivela immediatamente l’errore; questa circostanza epiuttosto rara;

• l’errore trasforma la parola di codice in un’altra parola di uguale lunghezza; il corrispondente parametro edecodificato erroneamente e la lettura del bitstream prosegue a partire dal punto corretto; osserviamo che anche

8.2Osserviamo che l’adozione di protocolli di ritrasmissione a livello radio comporta un aumento dei ritardi e del jitter di trasferimento; pertantoessi non sono adottati sistematicamente, ed in ogni caso sono limitati. Ad esempio, i protocolli di ritrasmissione H.223 AL3 prevedono al massimouna ritrasmissione per unita dati.

8.3Si consideri una sequenza codificata a 48 Kb/s, 10 quadri al secondo; ogni quadro consta di circa 5000 bit, e un BER di 10−4 conduce aduna media di un errore ogni due quadri; fortunatamente, gli errori tipicamente non sono isolati ma appaiono in burst, condizione piu favorevolein quanto concentra la degradazione su un area spazialmente e tempoalmente piu contenuta.

Page 101: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

8.3. LA CODIFICA VIDEO IN AMBIENTI DI TRASPORTO SOGGETTI AD ERRORE 101

in questo caso, a causa dell’uso intensivo di tecniche di codifica differenziale, la decodifica errata del parametrotipicamente conduce all’interpretazione errata dei dati decodificati successivamente;

• l’errore trasforma la parola di codice in un’altra parola di lunghezza differente, e la lettura del bitstreamprosegue a partire da un punto errato; in tal caso, si dice che il decodificatore ha perso il sincronismo con ilbitstream; la lettura prosegue fintantoche il decoder incontra una sequenza di bit che corrisponde ad una paroladi codice illegale.

In considerazione di questi effetti di errori, ancorche isolati, e essenziale fornire al decodificatore dei punti dirisincronizzazione col bitstream. A fronte di un errore rivelato, il decodificatore salta i dati codificati fino al primopunto di sincronizzazione disponibile. I dati mancanti vengono rimpiazzati mediante tecniche dette di mascheramentodell’errore (error concealment ), che mirano alla costruzione di una sequenza decodificata in cui le aree mancanti sianomascherate. Fra le piu comuni tecniche di mascheramento dell’errore citiamo la copia di macroblocchi dal quadroprecedente, in posizione corrispondente oppure prescelta in base a criteri di continuita spaziale, ovvero l’interpolazionespaziale a partire da macroblocchi adiacenti. Osserviamo che poiche la rivelazione dell’errore avviene con una certalatenza rispetto all’occorrenza dell’errore, una volta rivelato l’errore il decodificatore puo effettuare il concealmentanche sui blocchi che precedono la rivelazione, allo scopo di evitare i fastidiosi artefatti tipici degli errori non rivelati,dovuti alla decodifica di parole di codice errate e completamente casuali.

Tra i diversi parametri convogliati nel bitstream, e possibile stabilire una gerarchia di importanza ai fini dellaqualita visuale della sequenza ricostruita, cio che induce a progettare tecniche che proteggano i dati in modo diffe-renziato. Inoltre, la codifica predittiva -insita nel meccanismo di motocompensazione e tipicamente sfruttata almenoper la codifica dei vettori di moto e per i coefficienti DC- provoca la propagazione degli errori di ricostruzione anchesu aree ricostruite in base a dati correttamente decodificati; pertanto, in ambienti soggetti ad errori, l’efficienza dicompressione puo essere ridotta a favore di una codifica indipendente di diverse sezioni del video, che risulta piurobusta in presenza di errori.

8.3.1 Le funzionalità di robustezza all’errore dello standard MPEG-4

Lo standard MPEG4 offre funzionalità di protezione e recupero di errore finalizzate alla trasmissione di audio e videoa bit-rate relativamente basso (< 64Kb/s) in ambienti soggetti a errori, come quelli delle comunicazioni mobili. Lemetodologie di recupero includono funzionalità di

• risincronizzazione

• recupero di dati

• mascheramento dell’errore

Le funzionalità di risincronizzazione abilitano la risincronizzazione fra il decodificatore e la stringa codificata avalle della rivelazione di uno o più errori, e si basano su un approccio a pacchetto video (video packet approach),che rappresenta un’evoluzione dell’approccio utilizzato da H.261 e H.263. Rispetto alle metodiche previste daquesti standard, MPEG-4 consente l’inserzione nel bitstream di marker ad intervalli di lunghezza in bit prefissata,migliorando cos´ la protezione delle informazioni relative ad aree in movimento, alle quali, a parità di estensionespaziale, compete un maggior numero di marker di risincronizzazione di aree più lentamente variabili. I punti di

Page 102: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

102 CAPITOLO 8. LO STANDARD ISO MPEG-4

sincronizzazione nella stringa possono inoltre contenere informazioni addizionali, che ridondano la descrizione diparametri critici per la decodifica.

A questo approccio si affianca l’approccio a intervalli di sincronizzazione definiti (fixed interval synchronization),nel quale i marker di risincronizzazione possono apparire unicamente in alcuni intervalli autorizzati della stringa. Inquesto caso errori che causino l’emulazione degli start code nella stringa ricevuta non hanno effetto, a meno che noncompaiano negli intervalli autorizzati.

Le informazioni che riguardano il moto degli oggetti rappresentati nella scena (motion information) possono esserecodificate separatamente dalle informazioni che ne descrivono i dettagli spaziali (texture information), e dotate di unproprio resynchronization marker (data partitioning). Nel caso dunque che sia danneggiata la porzione di stringarelativa alle texture information, il funzionamento corretto dei meccanismi di sincronizzazione consente di utilizzaremetodologie di mascheramento dell’errore basate unicamente sulla motion information che sono estremamente sem-plici, (ad es. sostituzione di un blocco del quadro attuale con un opportuno blocco di un quadro precedentementericostruito), che forniscono però risultati qualitativamente accettabili in applicazioni a basso bit-rate e con requisitidi basso ritardo.

La risincronizzazione fra il decodificatore e la stringa codificata consente l’identificazione della quantità didati persi, e della loro tipologia (informazione di moto, informazione di tessitura, etc.). Una volta ristabilita lasincronizzazione, il parziale recupero dei dati contenuti fra i marker di sincronizzazione riconosciuti è consentito siada codici di correzione di errore sia da opportune tecniche di codifica. In particolare si adottano codici a lunghezza diparola variabile decodificabili tanto a partire dal primo quanto dall’ultimo bit di codice (Reversible Variable LengthCoding, RVLC). Ciò consente, una volta identificati due resynchronization marker consecutivi, fra i quali si siaverificato un burst di errori, di recuperare non solo i dati che seguono il primo resynchronization marker (precedendoil burst), ma anche i dati rappresentati dai bit non danneggiati che precedono il secondo resynchronization marker.

8.4 Multiplazione e trasporto di dati MPEG-4

Il trasferimento di dati MPEG-4 puo avvenire con diverse modalita alternative, fondamentalmente dipendenti dalleapplicazioni.

Una prima modalia definita dallo standard prevede la presentazione dei dati da parte dell’applicazione allo stratodi trasporto tramite l’interfaccia Delivery Multimedia Integration Framework, DMIF. Lo strato di trasporto non especificato dallo standard. Il trasporto basato sull’interfaccia DMIF sara prevalentemente utilizzato per lo sviluppodi applicazioni di tipo proprietario. Una seconda modalita definita dallo standard prevede l’uso di un formato di filemultimediale estremamente flessibile, adatto tanto alla memorizzazione quanto ad applicazioni di video streamingsu rete a pacchetto. Infine, il bitstream codificato MPEG-4 puo essere direttamente incapsulato in un flusso RTPsecondo utilizzando il formato di pacchettizzazione e i criteri appositamente definiti in ambito IETF; tale modalitae utilizzabile in differenti applicazioni basate su IP, quali la videocomunicazione interpersonale o il video streaming,su rete fissa o rete mobile.

8.4.1 Il formato di trasporto MPEG-4: il Delivery Multimedia Integration Framework

L’architettura funzionale di un generico terminale conforme alla specifica ISO/IEC 14496 (MPEG-4) è costituita datre strati:

Page 103: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

8.4. MULTIPLAZIONE E TRASPORTO DI DATI MPEG-4 103

Figura 8.8: Struttura del pacchetto video nella modalita Data Partitioning.

Figura 8.9: Impatto dell’uso di tavole RVLC sulla qualita del video ricostruito.

Page 104: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

104 CAPITOLO 8. LO STANDARD ISO MPEG-4

• lo strato di Codifica (Compression Layer);

• lo strato di Sincronizzazione (Synchronization Layer);

• lo strato di Consegna (Delivery Layer).

Lo strato di codifica produce in uscita flussi dati codificati elementari (Elementary Stream, ES) secondo le sintassidi codifica del video, dell’audio, e della descrizione della scena8.4. Oltre ai dati codificati di tipo audiovisuale, gliES possono veicolare ulteriori informazioni di descrizione degli oggetti, come informazioni sui diritti d’autore o sullaprotezione del contenuto multimediale, mediante apposite strutture sintattiche (Object Descriptors). Inoltre i daticodificati possono essere costituiti da apposite librerie definite nello standard e sviluppate in linguaggio Java, destinateprincipalmente all’industria dello sviluppo software, dette MPEG-J. Le librerie MPEG-J contengono informazioni dicontrollo del terminale ricevente e consentono di manipolare il contenuto della scena audio-video interagendo con ilbitstream, identificare il tipo di decoder e i profili supportati, controllare le risorse locali, interrogare le risorse direte; tali librerie possono essere preinstallate sul terminale MPEG-4 oppure possono essere trasferite attraverso ESdedicati.

Gli ES sono inoltrati allo strato di sincronizzazione che associa ai flussi elementari le informazioni di tem-porizzazione, necessarie a sincronizzare i flussi e la descrizione gerarchica delle relazioni reciproche. Lo strato disincronizzazione presenta una sintassi configurabile in modo da introdurre un maggiore o minore overhead in funzionedelle applicazioni. In generale, lo strato di sincronizzazione puo aggiungere agli ES informazioni di temporizzazio-ne e sequence numbering; fra le informazioni di temporizzazione segnaliamo la presenza, oltre ai time stamps, diun’informazione opzionale sulla frequenza del clock di riferimento, eventualmente condiviso da piu flussi ES. Da unpunto di vista implementativo, lo strato di compressione e lo strato di sincronizzazione sono tipicamente integrati inun’unità funzionale. I flussi elementari di pacchetti prodotti dallo strato di sincronizzazione (Synchronization LayerPacketized Stream, SPS), sono inoltrati allo strato protocollare inferiore di consegna.

Lo Strato di Consegna e specificato nella parte dello standard denominata Digital Multimedia Integration Fra-mework. Il DMIF definisce primitive che permangono per l’intera durata della sessione di comunicazione. Inparticolare, il DMIF specifica le primitive del Piano di Controllo sia dal lato trasmissione chee dal lato ricezione, especifica le primitive del Piano d’Utente dal lato ricezione. Esso adatta le richieste di acquisizione dati, di trasferi-mento dati, e piu in generale di interazione con entità remote ai servizi messi a disposizione dallo strato di trasportoeffettivamente disponibile. In tal modo, lo strato di consegna maschera agli strati superiori la tecnologia di trasportoutilizzata, che dipende dallo scenario applicativo (broadcasting, memorizzazione locale, comunicazioni interattive).

Il confine tra lo strato di sincronizzazione e lo strato di consegna è denominato Interfaccia Applicativa DMIF(DMIF-Application Interface - DAI). L’interfaccia DAI fornisce primitive classiche del livello di applicazione (PLAY,PAUSE, etc.), definendo le possibili interazioni fra le applicazioni multimediali e lo strato di consegna. Pertanto, dalpunto di vista del paradigma di comunicazione ISO/OSI, un’istanza DMIF realizza funzionalità di Strato di Sessionee l’interfaccia DAI corrisponde a un Punto d’Accesso al Servizio di Sessione (Session Service Access Point, SSAP).

Il DMIF maschera agli utenti la tecnologia effettivamente utilizzata per il trasporto assegnando i parametri diqualità per ciascun flusso elementare ricevuto all’interfaccia DAI e gestendo in tempo reale canali che risentono divariazioni della QoS.

All’interno dello strato di consegna (strato DMIF) possono essere individuate due multiplazioni indicate rispettiva-mente con Flex-Mux (opzionale) e Trans-Mux. La multiplazione Flex-Mux riunisce i flussi elementari che richiedano

8.4La descrizione della scena utilizza una sintassi appositamente definita, detta Binary Format for Scene description, BIFS

Page 105: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

8.4. MULTIPLAZIONE E TRASPORTO DI DATI MPEG-4 105

per la trasmissione gli stessi parametri di qualità di servizio, al fine di ridurre il numero delle connessioni instaurateper la trasmissione dei dati. La multiplazione Trans-Mux, non definisce una procedura di multiplazione chiusa, masi limita a definire le regole per l’incapsulamento dei flussi MPEG-4 pacchettizzati nei protocolli delle differentiinfrastrutture di multiplazione disponibili. Per il trasferimento puo dunque essere utilizzata una qualunque pila diprotocolli per il trasporto, quali ad esempio (RTP)/UDP/IP, AAL2/ATM, oppure il Transport Stream di MPEG-2.Per ciascuna pila, il trasferimento avverra sfruttando opportunamente le funzionalità di multiplazione/demultiplazionenative, rispettivamente le porte IP, i VC dell’ATM, i PID di MPEG-2.

Unicamente per il caso di trasporto su reti interattive (reti IP e ATM), lo standard specifica l’interfaccia fra lostrato Trans-Mux del DMIF e la rete (DMIF Network Interface, DNI), e descrive esplicitamente la corrispondenzafra la segnalazione DMIF e la segnalazione nativa della rete. Infine per il trasporto su reti eterogenee, lo standardrecepisce i protocolli Digital Storage Media Command & Control - User to Network (DSMCC-UN) che definisconouna sintassi di descrittori delle risorse di rete utilizzate.

Figura 8.10: Architettura dello strato di consegna DMIF.

8.4.2 Il formato di memorizzazione MPEG-4: il file MP4

La memorizzazione di una presentazione MPEG-4, ovvero delle Elementary Streams che la compongono, in lineadi principio può basarsi sul bitstream codificato fin qui descritto. La definizione di un formato di file per lamemorizzazione di una scena multimediale MPEG-4 risponde all’esigenza di fornire, oltre alle informazioni contenutenella presentazione vera e propria, informazioni specializzate per applicazioni di editing o di accesso. Ciò è statorealizzato adattando un formato di file multimediale esistente alle esigenze di MPEG-4. Il formato di file MP4 cosìprogettato contiene le informazioni multimediali di una presentazione MPEG4 in un formato flessibile ed orientato

Page 106: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

106 CAPITOLO 8. LO STANDARD ISO MPEG-4

allo scambio, all’editing, e alla presentazione in ambito locale o remoto. Rispetto alla rappresentazione costituita dalbitstream, la rappresentazione in file presenta alcune differenze significative:

• I dati multimediali veri e propri possono essere localizzati tanto nel file MP4 o essere esterni al file e referenziatitramite URL.

• Il file contiene alcuni metadati per l’editing, il playback, e la manipolazione dei dati multimediali.

• Il file contiene istruzioni (hint tracks) per il trasferimento dei dati sullo strato di trasporto disponibile da partedell’applicazione. Tali istruzioni segnalano, ad esempio, la modalita di pacchettizzazione suggerita nel caso diservizi di streaming basati sul modello client-server, ovvero l’importanza dei pacchetti dati ai fini della qualitasoggettiva della sequenza decodificata.

Il formato di file MP4 e inoltre alla base del formato .3gp utilizzato nelle comunicazioni video su radiomobile.

8.5 La comunicazione video su reti a pacchetto

La diffusione dei servizi di comunicazione e distribuzione di video su reti a pacchetto dipende da un insieme di fattorifavorevoli.

• In primo luogo, le reti a pacchetto sono diffusissime e basate su standard universalmente accettati.

• Esse offrono strumenti di multiplazione nativi molto potenti di flussi multimediali 8.5.

• Il formato di multiplazione a pacchetto consente la gestione integrata di dati di natura differente.

• Il formato di multiplazione a pacchetto offre strumenti nativi di monitoring della comunicazione basati susemplici riscontri a livello di pacchetto.

• Il formato di multiplazione a pacchetto confina gli errori trasmissivi a livello di pacchetto, semplificandone lagestione a livello di applicazione.

Su una rete a pacchetto possono offrirsi, accanto a servizi di download, tanto servizi multimediali conversazionali(real-time) quanto servizi di streaming. I servizi conversazionali sono caratterizzati da ritardi massimi tollerabilidell’ordine dei 200 ms, i servizi di streaming richiedono ritardi massimi dell’ordine di qualche secondo. La pilaprotocollare di gran lunga piu diffusa per il trasferimento di dati audio video su reti a pacchetto e la pila RTP/UDP/IPche offre un protocollo end-to-end con funzionalita di rivelazione d’errore, numerazione dei pacchetti, sincronizzazionedei flussi, monitoraggio delle consegne.

Per il trasferimento di video su rete a pacchetto, anche i dati del livello di applicazione sono tipicamente organizzatia pacchetto. In presenza di perdite di pacchetto, che anche su una rete fissa possono arrivare al 5-10 %, e opportunoadottare dei criteri di impacchettamento che forzino una corrispondenza fra strutture sintattiche di livello applicativoe pacchetti di rete. Per cio che concerne la trasmissione su RTP/UDP/IP, tali criteri sono descritti in RFC dedicate.

8.5A titolo esemplificativo, si osservi che una videoconferenza H.323 punto/multipunto puo realizzarsi utilizzando una trasmissione multicast alivello IP, laddove in un sistema a commutazione di circuito la videoconferenza H.324 necessita di un’apposita entita, il Multipoint Processor delMCU, per realizzare la multiplazione dei flussi in modalita punto multipunto.

Page 107: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

8.5. LA COMUNICAZIONE VIDEO SU RETI A PACCHETTO 107

In linea di principio tali criteri richiedono l’incapsulamento di un quadro in un pacchetto, ovvero di una strutturasintattica di livello immediatemente inferiore8.6 in un pacchetto, e richiedono che non si suddividano mai gli header dilivello applicativo fra piu pacchetti. Inoltre, un importante criterio di pacchettizzazione prevede l’adattamento delladimensione del pacchetto alla Maximum Transfer Unit (MTU)8.7 del cammino sottostante (1500 byte per Ethernet,100 byte per canali radiomobili), al fine di evitare una frammentazione operata al di fuori del controllo dell’encoder.In generale, pertanto, la dimensione del pacchetto non dovrebbe superare la dimensione della MTU per evitare che laperdita, a livello di rete o inferiore, di una porzione del pacchetto del livello di applicazione costringa il decodificatorea scartare le altre porzioni, pur ricevute correttamente.

La pacchettizzazione deve rispondere ad un trade-off fra overhead introdotto8.8 e robustezza rispetto agli errori; ingenerale, a pacchetti piu lunghi corrisponde un minore overhead ma una minore robustezza, e viceversa a pacchettipiu brevi maggiore overhead e maggiore robustezza. Sul flusso video codificato, questo ha un effetto immediato: aparita di banda assegnata al video, al diminuire della dimensione del pacchetto deve aumentare la quantizzazione, cioche diminuisce la qualita della sequenza decodificata in assenza di errori di trasmissione. Il problema e piu complessosu reti eterogenee; in tal caso e prevista la possibilita di aggregare o frammentare pacchetti, in misura quanto piupossibile aderente alle unita sintattiche di livello applicativo.

A fronte di perdite di pacchetti e/o di errori di trasmissione, e possibile delineare diverse strategie per garantireil servizio:

• Ritrasmissione (tecniche di Picture Header Repetition, Packet Duplication, ritrasmissione con diverso formatodi codifica, piggy-backing)

• Forward Error Correction, Media Independent o Media Dependent (protezione selettiva dei dati piu importanti)

• Interleaving di livello di applicazione

• Congestion control: tali tecniche si basano sulla capacita del codec di adattare la banda istantanea; in col-legamenti punto multipunto cio puo essere reso possibile da una codifica di tipo scalabile, che consenta diriutilizzare il bitstream codificato per piu utenti, in condizioni di congestione di banda differenti.

8.6Nel caso MPEG-4 la struttura sintattica e il Video Packet, in H.263 il GOB, in H.263+, H.263++, H.264 la Slice.8.7La dimensione della MTU e la dimensione massima del pacchetto IP che puo essere trasferito senza essere frammentato a livello di rete. La

frammentazione del pacchetto IP prevede la replica dell’header su tutti i frammenti ed il riassemblaggio degli stessi a destinazione; se non tutti iframmenti arrivano entro un tempo pre-assegnato misurato a partire dall’istante di arrivo del primo frammento l’intero pacchetto e scartato.

8.8Si osservi che l’header RTP/UDP/IP e di 40 byte.

Page 108: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

108 CAPITOLO 8. LO STANDARD ISO MPEG-4

Protocolli IETF per il controllo e la descrizione della sessione video su reti a pacchettoIl protocollo Session Initiation Protocol (SIP, RFC 3261) sviluppato dal IETF MMUSIC Working Group e unprotocollo di livello applicativo finalizzato ad inizializzare, modificare e terminare una sessione interattiva checoinvolga video, voce, messaggistica, etc, tra due dispositivi multimediali.Il Real Time Streaming Protocol (RTSP, RFC 2326) è un protocollo di livello applicativo sviluppato dal IETFMMUSIC Working Group allo scopo di controllare la consegna on-demand di flussi dati con requisiti real-time,come ad esempio flussi audio e video. Il protocollo e stato concepito per essere utilizzato in un paradigmaclient-server (web, content e proxy/caching server). Le funzionalita variano dall’invito di un media server ad unaconferenza, all’aggiunta di media ad una sessione già esistente, alla gestione di piu content server al livelo di trasporto(multiserver), alla negoziazione di capacita. Il protocollo prevede metodi che devono essere obbligatoriamenteimplementati (setup, teardown, play, client-to-server options), metodi raccomandati per l’implementazione ma nonobbligatori (describe, pause) e metodi opzionali (announce, get parameter, set parameter, record, server-to-clientoptions). Il protocollo mantiene lo stato, consentendo quindi ai server di mantenere traccia delle connessioni aperteanche quando la connessione non e presente.La sessione multimediale puo essere descritta utilizzando il Session Description Protocol (SDP, RFC 2327) checonvoglia informazioni sui media coinvolti, sulla pila protocollare utilizzata dal piano di utente, sugli indirizzi deltrasporto, e su altri metadati. La descrizione SDP puo essere usata congiuntamente ai protocolli SIP, RTSP, SessionAnnouncement Protocol (SAP, 2974) o Multipurpose Internet Mail Extension (MIME, RFC 2045, 2046).La pila protocollare di gran lunga piu usata per il piano d’utente e la pila RTP/UDP/IP.

8.5.1 Il formato RTP per il flusso binario MPEG-4 Visual

La [3] definisce la pacchettizzazione RTP del flusso binario MPEG-4 Visual. Dal momento che MPEG-4 è unostandard di codifica video generico, adattabile cioè ad una varietà di reti caratterizzate da differenti bande e qualità ditrasporto, le regole di frammentazione sono alquanto flessibili, e mirano fondamentalmente a garantire la preservazionedelle caratteristiche di robustezza agli errori. L’header del pacchetto RTP contiene sempre un Marker bit (M),che segnala se il pacchetto contiene o meno la fine del quadro corrente, ed il Time Stamp che indica l’istantedi campionamento del primo quadro contenuto del pacchetto, consentendo la sincronizzazione fra media differenti,nonché fra strati base e enhancement nel caso di codifica scalabile.

La stringa MPEG-4 Visual, opportunamente frammentata viene inserita direttamente nel payload del pacchetto.Non vengono eliminati caratteri, come succede nel caso di header H.263, né inserita informazione ridondante, dal mo-mento che l’MPEG-4 Visual dispone già di funzionalità per il recupero di header corrotti. I criteri di frammentazionesi possono riassumere in alcune linee guida:

• ogni pacchetto RTP non dovrebbe contenere più di un VOP, a meno che il VOP sia molto piccolo;

• ogni pacchetto RTP non dovrebbe eccedere la Maximum Transfer Unit del path;

• un header MPEG-4, di qualsiasi livello gerarchico, non può essere suddiviso in più pacchetti, e deve comparireall’inizio del pacchetto;

• nel caso che più header siano trasportati in un pacchetto, il payload inizierà con l’header di livello gerarchicopiù alto;

Page 109: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

8.5. LA COMUNICAZIONE VIDEO SU RETI A PACCHETTO 109

• un pacchetto video dovrebbe essere mandato in un unico pacchetto RTP; tuttavia, è ammessa la trasmissione dipiù pacchetti video in un pacchetto RTP in quanto il pacchetto video potrebbe essere talmente corto da risultaredi lunghezza confrontabile con l’header RTP.

Page 110: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Bibliografia

[1] T. Ebrahimi, C. Horne, “MPEG-4 Natural Coding-An overview”, Signal Processing: Image Communication, Vol. 15, 2000, 365-385.

[2] R. Koenen, “Profiles and levels in MPEG-4 -Approach and overview”, Signal Processing: Image Communication, Vol. 15, 2000, 365-385.

[3] IETF RFC 3016: RTP Payload Format for MPEG-4 Audio/Visual Streams, Kikuchi Y. et al., November 2000.

110

Page 111: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Capitolo 9

La Raccomandazione JVT H.264/AVC

9.1 Principi dello standard H.264

Il progetto congiunto Joint Video Team (JVT), che ha coinvolto i gruppi ITU-T Video Coding Expert Group (VCEG)e ISO-IEC JTC1 Motion Photo Expert Group (MPEG), ha condotto alla definizione dello standard H.264/ MPEG-4Advanced Video Coding. Tale standard, oltre a prevedere strumenti di codifica innovativi ed efficaci rispetto aisistemi precedenti, si presta ad essere trasmesso su reti estremamente diversificate dal punto di vista della banda, delformato di trasporto e della percentuale di errori introdotta sui dati trasmessi.

Il sistema H.264/ MPEG-4 AVC prevede due strati logicamente distinti: il Video Coding Layer (VCL) e il NetworkAdaptation Layer (NAL). Il VCL codifica i dati video, mentre il NAL incapsula le unità sintattiche codificate inNAL Unit (NALU) adatte al trasferimento in rete, come illustrato in Fig.9.5.

9.2 Il Video Coding Layer H.264

Il VCL dell’H.264 utilizza uno schema di codifica ibrida di video nel formato interallacciato o progressivo e raggiungeprestazioni superiori rispetto agli standard precedenti in termini di efficienza di compressione, grazie all’introduzionedi alcuni strumenti di codifica innovativi:

• predizione spaziale per la codifica Intra, che aumenta l’efficacia di compressione, ma può essere disabilitatain ambienti radiomobili per diminuire la propagazione spaziale e temporale degli artefatti dovuti ad errori ditrasmissione;

• motocompensazione a blocchi di dimensione variabile spazialmente, che riduce gli artefatti di codifica ma ecomputazionalmente onerosa;

• uso di quadri di riferimento multipli, che migliorano l’efficacia di compressione e, in presenza di un canale difeedback, diminuiscono la propagazione temporale degli artefatti dovuti ad errori di trasmissione; richiedonomaggiori risorse per il buffering

• trasformata a coefficienti interi 4x4 e trasformate di Hadamard 4x4 e 2x2 che eliminano i disallineamentinumerici fra codificatore e ricevitore, riducendo la complessità di calcolo della trasformata;

111

Page 112: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

112 CAPITOLO 9. LA RACCOMANDAZIONE JVT H.264/AVC

Figura 9.1: Architettura dello standard H.264.

• tabelle di codice Context Adaptive, che aumentano l’efficienza di compressione, ma possono ridurre la resistenzaagli errori di trasmissione;

• formato di quadro (Switching frame) per la commutazione fra differenti flussi precodificati.

9.2.1 La predizione spaziale

La codifica dei macroblocchi Intra sfrutta la predizione spaziale, in cui i campioni del macroblocco attuale sonopredetti a partire dai campioni di luminanza e di crominanza dei macroblocchi adiacenti già ricostruiti, ed e codificatounicamente il residuo di predizione trasformato, quantizzato e trasmesso. Osserviamo che la predizione spaziale egia sfruttata nello standard MPEG-4, dove e applicata nel dominio trasformato.

La predizione opera su base macroblocco 16x16 pixel o su base blocco 4x4 pixel. Nel caso di predizione16x16 si utilizzano quattro differenti tipologie orizzontale, verticale, continua e planare9.1. Nel caso di predizione subase blocco 4x4, per ogni macroblocco il codificatore genera un vettore di 16 elementi in cui sono memorizzate lemodalità di predizione assegnate ai 16 sottoblocchi 4x4, per ciascuno dei quali puo essere scelta una fra 9 modalitadi predizione. I 16 campioni di luminanza, appartenenti al sotto-blocco 4x4, sono predetti a partire dai 13 campioniricostruiti,9.2, situati ai bordi del sotto-blocco.

9.1Per ogni macroblocco 16x16 pixel, nel formato di rappresentazione 4:2:0 sono presenti anche due blocchi 8x8 pixel relativi ai coefficienti dicrominanza Cb e Cr. Questi due blocchi subiscono, separatamente, la stessa predizione spaziale, e le modalità direzionali sono ancora quattro,orizzontale, verticale, continua e planare.

9.2Lo standard prevede la possibilita di utilizzare un filtro adattativo, detto deblocking filter,che sfumi i pixel ai bordi dei sottoblocchi 4x4,riducendo l’effetto della blocchettizzazione ai bassi bit-rate. La predizione opera sui valori ricostruiti al decodificatore (cioe quantizzati) ma nondeblocchettizzati.

Page 113: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

9.2. IL VIDEO CODING LAYER H.264 113

Figura 9.2: La predizione spaziale nello standard H.264.

9.2.2 Trasformazione e quantizzazione

Il residuo di segnale relativo all’errore di predizione spaziale o temporale viene trasformato, quantizzato e infinecodificato entropicamente. L’H264 utilizza tre diverse trasformate, relativamente al tipo di residuo che deve essereprocessato:

• una trasformata intera 4x4 per tutti i residui di predizione spaziale e temporale.

• una trasformata di Hadamard 4x4 dei coefficienti DC di luminanza per i macroblocchi codificati come INTRA

• una trasformata di Hadamard 2x2 per i coefficienti DC di crominanza per i macroblocchi codificati comeINTRA9.3;

Le due trasformate 4x4 e 2x2, applicate ai termini DC, sono state sviluppate poiché sia nel caso del macroblocco16x16 codificato INTRA e sia per i coefficienti di crominanza, le aree di interesse hanno una notevole estensionespaziale; e quindi tipicamente presente una ulteriore ridondanza tra i termini in continua dei vari sotto-blocchi 4x4.L’applicazione successiva delle trasformazioni e illustrata in Fig.9.4.

La quantizzazione e realizzata mediante 52 diversi passi di quantizzazione che vengono indicizzati in modo nonlineare attraverso un Parametro di Quantizzazione (QP), che puo essere differente per i campioni di luminanza e dicrominanza.

9.3Si osservi che a causa del campionamento 4:2:0 ad un macrobloco di luminanza 16x16 corrispondono due blocchi di crominanze 8x8.

Page 114: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

114 CAPITOLO 9. LA RACCOMANDAZIONE JVT H.264/AVC

Figura 9.3: Base della trasformata intera 4x4 (rappresentazione qualitativa).

Figura 9.4: Trasformazioni utilizzate nello standard H.264.

Page 115: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

9.2. IL VIDEO CODING LAYER H.264 115

Figura 9.5: Passi di quantizzazione e Parametro di Quantizzazione (QP)

9.2.3 La motocompensazione ed il controllo di codifica

Il VCL H.264 prevede l’utilizzo della predizione temporale mediante una tecnica di motocompensazione innovativa,che offre un elevato grado di flessibilita nella scelta della modalità di codifica. Per ogni macroblocco, la motocom-pensazione si articola in due fasi, di stima del movimento e di decisione sulla modalità di codifica. L’H264 supportala motocompensazione di blocchi di pixel di dimensione variabile nell’intervallo compreso tra 16x16 e 4x4 campionidi luminanza, detta Motocompensazione ad albero (vedi fig. 9.6). I vettori di moto arrivano a risoluzioni di 1/2 e1/4 di pixel. I campioni utilizzati per la motocompensazione con passi frazionari non sono disponibili ma possonoessere calcolati mediante interpolazione.

Poiche ad ogni blocco o sotto-blocco e associato un vettore di moto, la suddivisione in aree piu estese necessitadi un minor numero di bit per le informazioni di moto, ma genera residui mediamente piu elevati. D’altro canto lasuddivisione in aree piu limitate richiede piu vettori di moto ma genera residui di minor energia. I vettori di motosono codificati in modo differenziale rispetto ad un valore predetto; la modalita di predizione dipende dalla partizioneadottata nella motocompensazione.

La motocompensazione opera su quadri di riferimento multipli, fino ad un massimo di 5 quadri di riferimento. Unmacroblocco predetto può essere partizionato in blocchi o sottoblocchi, e in linea di principio il quadro di riferimentopuo variare per ciascun blocco 8x89.4.

La scelta della modalita di codifica ottima, ovvero della partizione, dei vettori spostamento, e del quadro diriferimento discende da un compromesso fra la riduzione dell’informazione associata ai residui e l’incremento del-

9.4Quando un blocco 8x8 e ulteriormente suddiviso, tutti i sottoblocchi componenti devono essere predetti partire dallo stesso quadro di riferimento.

Page 116: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

116 CAPITOLO 9. LA RACCOMANDAZIONE JVT H.264/AVC

l’informazione associata ai vettori di moto, oltre che da considerazioni di complessita computazionale al codificatoree di risorse di memorizzazione al decodificatore.

Lo standard prevede la predizione bidirezionale, ed i quadri B possono essere utilizzati come riferimenti per lapredizione. Infine, per applicazioni ad alta qualita, e prevista la possibilita di effettuare una predizione pesata apartire da due quadri di riferimento, al fine di comprimere con efficienza dissolvenze e cambi scena.

Figura 9.6: Motocompensazione ad albero nello standard H.264.

9.2.4 Algoritmi di codifica entropica

Lo standard H264 prevede l’impiego di due algoritmi avanzati di codifica entropica, Context-Adaptive Variable LenghtCoding, (CAVLC), e Context-Adaptive Binary Arithmetic Coding, (CABAC); l’algoritmo CABAC ha un’efficienzadi compressione maggiore rispetto al CAVLC, ma anche un maggiore complessità computazionale.

I vari elementi sintattici presenti nel flusso codificato vengono diversamente trattati, relativamente alla lorotipologia. Gli elementi sintattici connessi ai parametri di sequenza e di quadro, infatti, vengono codificati utilizzandocodici binari a lunghezza fissa oppure mediante codici a lunghezza variabile detti codici Exp-Golomb. I codici Exp-Golomb (Exponential Golomb codes) sono a lunghezza variabile con una struttura regolare di [M zeri][1][INFO]. Alivello di slice e di macroblocco, invece, gli elementi sintattici sono trattati utilizzando il CAVLC o il CABAC. Ilcodificatore CAVLC e il codificatore a lunghezza variabile utilizzato per i residui trasformati e quantizzati e ordinatisecondo una scansione a zig-zag, e rappresenta in modo compatto tanto valori nulli (Run lengths) quanto successionidi valori pari a ±1 (Trailing Ones); le tavole VLC utilizzate dipendono da un contesto causale. Il codificatore CABACè un codificatore aritmetico di tipo adattativo, basato su un modello probabilistico dipendente dall’elemento sintatticoe dal relativo contesto di codifica; i parametri del modello sono adattati in tempo reale, sfruttando le statistiche locali.

Page 117: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

9.2. IL VIDEO CODING LAYER H.264 117

Il CAVLC e il CABAC sono pertanto macchine a stati, che evolvono nel tempo modificando le proprie variabili distato, pilotando, rispettivamente, una Codifica VLC oppure una Codifica Aritmetica Binaria.

9.2.5 Flessibilità di accesso ed efficienza di compressione: i quadri di Switching

Lo standard H.264/AVC include delle importanti strutture sintattiche assenti nei precedenti standard ma già presentiin forma embrionale in alcuni sistemi di codifica video proprietari, denominate Switching pictures. Tali struttureconsentono la commutazione, in fase di decodifica, tra flussi codificati a differente bit rate, consentendo di adattare intempo reale il bit rate del flusso video alle effettive condizioni di rete non agendo sul codificatore durante la codificama sfruttando flussi già codificati. Tali strutture si prestano ad essere utilizzate principalmente in applicazioni distreaming video.

I Switching P picture consentono l’accesso casuale al flusso video di destinazione; dal momento che sfruttanola somiglianza di quadri codificati nei diversi flussi richiedono un minor numero di bit e una minore latenza indecodifica rispetto ad un quadro INTRA. Ogni quadro SP ammette due rappresentazioni codificate, una primariaed una secondaria. La modalita di codifica primaria e adottata per quadri scelti ad intervalli regolari nel flussocodificato, ed offre i punti di accesso alla sequenza di destinazione. La modalita di codifica secondaria costituisceuna rappresentazione alternativa di questi stessi quadri, ed e utilizzata, cioe trasmessa, solo all’atto della commutazionefra flussi differenti, come rappresentato in fig. 9.7. La rappresentazione secondaria convoglia il residuo di predizionefra il quadro da rappresentare (appartenente al flusso di destinazione) ed una sua versione predetta, ottenuta a partiredal flusso precedentemente decodificato. La differenza e calcolata direttamente nel dominio dei coefficienti trasformatie quantizzati, al fine di garantire la perfetta uguaglianza fra il quadro decodificato utilizzando la rappresentazioneprimaria e il quadro decodificato utilizzando la rappresentazione secondaria. Lo standard prevede inoltre la definizionedi Switching I picture, che sono utilizzati per commutare fra sequenze a contenuto completamente differente.

Principi base per la codifica e decodifica dei quadri SP primari e secondari.Sia xmn l’area da predire e sia Xk1k2 la sua rappresentazione nel dominio trasformato. Sia poi p(1)

mn la versonepredetta dal flusso 1 e sia P (1)

k1k2la sua rappresentazione nel dominio trasformato; sia inoltre ˜

P(1)k1k2

una versionequantizzata di quest’ultima. Il codificatore calcola il residuo di predizioneE(1)

k1k2= Xk1k2−

˜P

(1)k1k2

, la relativa versio-ne quantizzata E(1)

k1k2, che viene trasmessa insieme ai vettori spostamento nel quadro SP primario. Il decodificatore

a partire dal flusso 1 ricostruisce Xk1k2 = ˜P (1)k1k2

+ E(1)k1k2

.Si supponga ora che sia p(2)

mn la versone predetta dal flusso 2 e sia P (2)k1k2

la sua rappresentazione nel dominiotrasformato; sia inoltre ˜

P(2)k1k2

una versione opportunamente quantizzata di quest’ultimaa. Il codificatore calcola ilresiduo di predizione definito come E(2)

k1k2= Xk1k2 −

˜P (2)k1k2

, che consente la ricostruzione esatta dei coefficientiXk1k2 a partire dal flusso 2; tale residuo viene codificato insieme ai relativi vettori spostamento nel quadro SPsecondario. Nel caso che si voglia abilitare la ricostruzione di Xk1k2 non a partire dal flusso 1 di appartenenzama dal flusso 2, si trasmette il quadro SP secondario. Il decodificatore a partire dal flusso 2 ricostruisce Xk1k2 =˜P (2)k1k2

+ E(2)k1k2

.

aLe predizioni ˜P(1)k1k2

e ˜P(2)k1k2

adottano la stessa quantizzazione, che in definitiva governa l’efficienza di compressione dei quadri SP:tanto piu essa e fine, tanto piu efficiente risulta la compressione dei quadri SP primari, a scapito dell’efficienza di compressione dei quadri SPsecondari.

Page 118: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

118 CAPITOLO 9. LA RACCOMANDAZIONE JVT H.264/AVC

Figura 9.7: Uso di quadri SP per commutazione fra flussi differenti.

9.3 Funzionalita di robustezza agli errori di H.264

H.264 include numerosi strumenti di robustezza agli errori, mutuati da sistemi precedenti, fra i quali citiamo

• la codifica a segmenti indipendenti (Slice),

• l’Adaptive INTRA Refresh,

• il Data Partitioning.

Oltre a tali strumenti l’H.264 introduce tre nuovi strumenti che lo rendono più robusto e adatto alla trasmissionein ambienti di rete differenti, tanto fissi quanto mobili, ovvero

• il Flexible Macroblock Ordering (FMO)

• l’Arbitrary Slice Ordering (ASO),

• l’uso di Redundant Slices (RS),

che saranno brevemente richiamati.Infine, ulteriori caratteristiche di robustezza sono dovute alla particolare architettura sintattica definita in H.264,

in accordo alla quale alcune informazioni essenziali alla decodifica ma condivise a livello di sequenza o di quadroviaggiano in strutture sintattiche indipendenti dette Parameter Set, e possono essere protette in misura maggiorerispetto agli altri dati mantenendo un’elevata efficienza di compressione.

Slice e Data Partitioning

Page 119: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

9.4. LA SINTASSI DEL VCL H.264 119

La struttura fondamentale prodotta dal video coder è la slice, che rappresenta un’evoluzione del concetto di slicedell’H.263 Annex K. Le slice di un quadro sono decodificabili independentemente, ma possono importare tessitureesterne ai confini della slice durante la fase di motocompensazione. Una slice può essere suddivisa in tre partizioni.La partizione A comprende sempre le informazioni di header, i vettori spostamento, i modi di codifica dei singolimacroblocchi. La Partizione B contiene le informazioni di tipo Intra e la Partizione C le informazioni di tipo Inter.In alternativa, tutti i dati possono essere inseriti in un unica partizione. L’informazione sull’adozione della modalitàdi Data Partitioning deve essere trasferita fuori banda. Ciascuna partizione inizia con una parola di codice che indicail tipo di partizione. Si osservi che un errore in tale campo può essere utilizzato per rivelare la perdita di dati edattivare conseguentemente gli algoritmi di mascheramento dell’errore, alla stessa stregua di un errore di numerazionedi sequenza RTP o H.223-AL3 a livello di multiplexing.

Il Flexible Macroblock Ordering e l’Arbitrary Slice Ordering (ASO)

Una Slice può essere costituita da macroblocchi adiacenti estratti in ordine lessicografico, oppure scelti secondoin ordinamento arbitrario, nella modalità Flexible Macroblock Ordering (FMO). Questa modalità di ordinamentodei macroblocchi rende il sistema di codifica più robusto rispetto alla perdita di slice. Usando la modalità FMO,le Slice possono rappresentare regioni di maggiore importanza visuale (Foreground Slice), ovvero regioni costituiteda MB non adiacenti (Scattering Slice, Interleaving Slice). Infatti, la perdita di una Slice costituita da MB nonspazialmente adiacenti può essere meglio fronteggiata con tecniche di mascheramento visuale degli errori e condurread una sequenza decodificata di migliore qualità visuale. Tale miglioramento della robustezza è pagato in terminidi efficienza di compressione, che è lievemente ridotta a causa della minore efficacia dei meccanismi di predizionedella Slice9.5.

L’opzione di codifica Arbitrary Slice Ordering (ASO) consente di utilizzare un ordine arbitrario di trasmissionedelle Slice, anche su piu quadri della sequenza video, realizzando cosi’ una forma di interleaving a livello diapplicazione.

Le Redundant SlicesL’H.264/AVC prevede la possibilità di rappresentazioni ridondanti di Slice, o anche di quadri, particolarmente

importanti. A differenza di una eventuale duplicazione introdotta dallo strato di rete, le Slice ridondanti utilizzanoparametri di codifica differenti rispetto alla rappresentazione primaria. Il decoder utilizza tali Slice ridondanti soloquando la primary slice non é disponibile. Le Slice ridondanti sono particolarmente utili nel caso di trasferimentoa pacchetto su rete mobile. La robustezza offerta dalle Slice ridondanti puo ulteriormente migliorare se adottatacongiuntamente all’interleaving di livello di applicazione realizzato mediante ASO.

9.4 La sintassi del VCL H.264

La sintassi del VCL H.264 e caratterizzata dal fatto che alcune informazioni pertinenti ai livelli di sequenza e di quadrosono trasmessi in strutture sintattiche distinte dal contenuto codificato vero e proprio. In particolare i parametri dicodifica condivisi a livello di sequenza e di quadro sono trasmessi utilizzando le strutture sintattiche dette Parameter

9.5Affinche la Slice sia decodificabile in modo indipendente, il suo contenuto- vettori spostamento, macroblocchi INTRA- non puo essere predettoa partire da dati appartenenti ad altre Slice. Per tanto le tecniche di predizione possono essere applicate in misura minore, diminuendo l’efficienzadi compressione a vantaggio della robustezza agli errori.

Page 120: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

120 CAPITOLO 9. LA RACCOMANDAZIONE JVT H.264/AVC

Figura 9.8: Aree dell’immagine decodificata nel caso di perdita di una slice, al variare della dimensione e dell’ordinamento deimacroblocchi.

Set. I contenuti codificati veri e propri sono organizzati nelle strutture sintattiche di Slice e di macroblocco. Laarchitettura sintattica risultante e riassunta in Tabella 9.1.

Parameter SetsI Parameter Sets H.264, contenenti alcune informazioni essenziali alla decodifica ma condivise a livello di sequenza,

possono essere trasmesse in banda o fuori banda, eventualamente in modo affidabile. I parameter Sets comprendono

• i Sequence Parameter Sets (SPS),

• i Picture Parameter Sets (PPS),

Tali unità sintattiche contengono rispettivamente informazioni necessarie per la decodifica di un insieme di datiprodotti a livello di VCL o NAL (VCL o NAL Access Unit), corrispondenti ad una sequenza consecutiva di qua-dri (Sequence Parameter Set) o ad un quadro (Picture Parameter Set). Pertanto i Parameter Set convogliano, nelcontesto H.264, l’informazione tradizionalmente convogliata da Sequence header, Group-Of-Picture/Group-Of-VOP(GOP/GOV) header, o Picture/VOP header. I Sequence PS e i Picture PS sono trasferiti prima delle VCL Unitcui si riferiscono, tipicamente fuori banda, e utilizzando adeguati meccanismi di protezione. Tali informazioni sonocondivise da più Slice, che le indirizzano mediante un elemento sintattico che identifica il Parameter Set appropriato.

I Parameter set rendono il flusso non autocontenuto, ma presentano alcuni vantaggi:

• efficienza di compressione, in quanto lo scambio di parametri nella fase di capability exchange consente dirisparmiare la trasmissione ripetuta di alcune informazioni, per esempio a livello di quadro (e.g. di pictureheaders);

Page 121: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

9.5. PROFILI E LIVELLI DEL CODIFICATORE H.264 121

• robustezza, in quanto tali parametri possono essere protetti in modo molto piu accurato del flusso principale;

• sicurezza, in quanto la decodifica del bitstream è più ardua in assenza di tali parametri, e ciò consente didiminuire la protezione del flusso del video in un sistema protetto;

• flessibilità, in quanto a valle della fase di capability exchange, il costo del cambio dei parametri di codifica ècontenuto, in quanto cambia solo l’indirizzamento del parameter set corretto.

Il codificatore e il decodificatore devono mantenere la sincronizzazione di un insieme di Parameter Sets, ciascunodei quali convoglia le informazioni a livello di quadro o a livelli sintattici superiori. La sincronizzazione si stabiliscetipicamente per mezzo di protocolli di controllo all’atto dell’apertura del canale logico, e, nei sistemi più complessi,può essere gestita dinamicamente. Nel contesto di servizi conversazionali realizzati mediante H.323, H.324 e H.324/M(3G-324 M) essi sono trasferiti mediante la segnalazione H.2459.6. Nel contesto di servizi di streaming o di serviziconversazionali realizzati mediante pila di controllo SIP/SDP, essi sono trasferiti mediante i protocolli di controllodella sessione, tipicamente in formato SDP o MIME9.7.

Sequence Parameter Set profile idc e level idc pic width in mbs, height in mbs num ref frames arbitra-ry slice order allowed flag, redundant pictures allowed flag seq parameter set id massimo numerodi quadri, metodo di codifica del contatore d'ordine del quadro, modalità field o frame, con o senzaadattamento.

Picture Parameter Set pic parameter set id, seq parameter set id entropy coding mode flag (CAVLC, o CABAC).num slice groups, mb slice group map type numero di macroblocchi consecutivi assegnati al gruppodi slice, estremità di un gruppo di slice valore iniziale del parametro di quantizzazione (modificatoda slice qp delta, o da mb qp delta), chroma qp index offset deblocking filter, constrained intra predflag

Slice Layer first mb in slice, slice type (P, B, I, SI, SP ) pic parameter set id frame num, idr pic id redun-dant pic cnt, direct spatial mv pred flag slice qp delta, slice qs delta disable deblocking filter idc(tutti, nessuno, interni) numero di macroblocchi skipped

Macroblock Layer mb type inter, intra, tipo di predizione (dimensione, direzione) CodedBlockPattern Chroma Lumamb qp delta, numero di coefficienti non nulli e il numero di trailing ones.

Tabella 9.1: Strutture sintattiche utilizzate in H.264.

9.5 Profili e livelli del codificatore H.264

L’H264 è stato disegnato per operare in applicazioni differenti in bit-rate, qualità, risoluzione e servizi. Per efficienzadi implementazione esso presenta una suddivisione in profili estremamente semplificata. I profili introdotti nellaprima fase di standardizzazione H.264 sono tre: il profilo Baseline, il profilo Main e il profilo Extended. I profilinon sono esattamente gerarchici, nel senso che il baseline è un sottoinsieme del profilo extended, ma alcune modalitàpreviste nel baseline non compaiono nel profilo main. Tale profili sono stati successivamente affiancati da profiliper le applicazioni a qualita molto elevata (Fidelity Range Extension, FRExt), per le quali H.264 si propone comesuccessore di MPEG-2.

9.6E’ possibile anche utilizzare la segnalazione estesa H.241.9.7Il formato Multipurpose Internet Mail Extension (MIME) e stato definito in ambito IETF per cooperare con il protocollo SMTP al trasferimento

di e-mail di dati di tipo composito, che utilizzassero, accanto al formato plain text, anche dati di tipo differente. Il formato si e evoluto consentendola descrizione di dati via via piu complessi, corredati da parametri opzionali, fino a rappresentare un’alternativa al protocollo SDP per la descrizionedi dati di tipo multimediale.

Page 122: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

122 CAPITOLO 9. LA RACCOMANDAZIONE JVT H.264/AVC

Il profilo Baseline è destinato ad applicazioni con scansione progressiva in cui si richieda un ridotto ritardo dicodecodifica, ad esempio videotelefonia, video-over-IP, le applicazioni mobili. Il profilo supporta alcuni strumentidi robustezza all’errore, quali l’FMO, l’ASO e le RS. D’altro canto non sfrutta gli strumenti più avanzati come isegmenti di tipo B, la predizione pesata, la codifica CABAC, i segmenti SP e SI.

Il profilo Extended include tutti gli strumenti di codifica più efficiente (segmenti di tipo B, predizione pesata)e di robustezza all’errore. Supporta i quadri SP e SI, finalizzati ad offrire scalabilità in bit-rate basata su flussiprecodificati. E’ particolarmente appropriato per applicazioni di streaming su rete fissa e mobile. Non supporta ilcodificatore entropico CABAC.

Il profilo Main è appropriato per una codifica efficiente sia dei formato progressivi che dei formati televisiviinterallacciati. E’ destinato ad applicazioni in cui la probabilità di errori sui bit o di perdita di pacchetto sianocontenuti, e non siano presenti restrizioni sul ritardo di co-decodifica. Contiene tutti gli strumenti del profilo base adeccezione di quelli specificatamente finalizzati alla robustezza di trasmissione, quali l’FMO, l’ASO e le RedundantSlices. Sono inoltre presenti i segmenti di tipo B, la codifica CABAC e la predizione pesata.

Oltre ai profili sopra definiti, l’H.264 definisce un insieme di livelli e sottolivelli che stabiliscono diversi livellidi complessità del codec. Ciascun livello prevede dei limiti di capacità che possono essere indipendenti dal profilo,come la frequenza di quadro massima, la massima risoluzione, etc., ovvero dipendenti dal profilo, come il massimonumero di Slice per quadro.

9.6 Il Network Adaptation Layer H.264

Lo strato di adattamento alla rete, o NAL, ha l’obiettivo di adattare il formato dei dati codificati alle caratteristichedel trasporto offerto dalla rete. La pacchettizzazione nativa operata dal NAL è esplicitamente disegnata per consentireil trasferimento dati tanto nella modalità a pacchetto che nella modalità a circuito, e per ridurre l’impatto di erroridello strato di trasporto sul video decodificato. I formati di trasporto sono differenti, e fra essi citiamo

• i formati di trasporto byte-oriented, quali i sistemi H.222.0/MPEG-2 TS per servizi diffusivi e H.221 di H.320per video conferenza su ISDN;

• il formato di multiplazione RTP/UDP/IP, per servizi di streaming, con attivazione via RTSP, http, WAP o MMSe servizi conversazionali a pacchetto, con controllo della sessione SIP/SDP o H.323;

• il formato di multiplazione H.223 Annex B di H.324, per servizi conversazionali a circuito, con controllo dellasessione H.324 per videotelefonia e videoconferenza;

• i formati di file basati sul modello ISO MP4 per la memorizzazione e lo streaming su rete fissa e mobile.

Per i formati di trasporto byte-oriented, quali i sistemi H.320 e MPEG-2/H.222.0 per servizi diffusivi, lo standardprevede l’adattamento delle NALU mediante l’inserzione di Start Code di 3 o 4 byte in corrispondenza dei NALUheader, secondo quanto descritto in H.264 Annex B.

Per i formati a pacchetto, non e applicato l’Annex B, ed il NALU header e progettato per cooperare con l’inte-stazione del pacchetto di rete. I formati sopra citati presentano una pila protocollare molto simile, e pertanto ci siriferirà d’ora in poi alla pacchettizzazione RTP/UDP/IP.

Il bit-stream codificato è organizzato in Slice. Ciascuna Slice costituisce il payload di una NALU. Il NALUheader è costituito da un byte che contiene indicazioni sul tipo di dati trasportati nella NALU, sulla integrità dei dati,

Page 123: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

9.6. IL NETWORK ADAPTATION LAYER H.264 123

ed è progettato per integrare l’header del pacchetto RTP nel caso di trasferimento a pacchetto9.8. Mentre nei sistemibyte-oriented ogni NALU contiene tre o quattro byte per la risincronizzazione del decoder in caso di errore, nel casodi trasferimento a pacchetto l’inizio della NALU è identificato dall’header del pacchetto RTP.

L’ header della NALU è formato dai seguenti campi:

• FORBIDDEN BIT (F) (1 bit) indica l’integrità della NALU segnalata dagli strati inferiori;

• NAL REFERENCE IDR (NRI) (2 bit) che segnala l’importanza di una NALU per la ricostruzione del video;il valore a zero indica che la NAL Unit non e’ usata per la predizione e può essere scartata dal decoder o daglielementi della rete senza propagazione di artefatti visuali;

• NALU TYPE (T) (5 bit) che consente di indirizzare 32 differenti tipi di NALU, di cui solo 12 definiti; frai principali tipi di NALU segnaliamo i tipi Slice non partizionata, Partizione A, B o C, Parameter Set, Slicemarcata per essere aggregata ad altre in un solo pacchetto RTP; i rimanenti sono riservati per usi futuri.

Figura 9.9: Pacchettizzazione di NALU nella pila RTP/UDP/IP.

Il Trasferimento delle unità NALU in un contesto di trasporto a pacchetto mediante l’uso della pila di protocolliRTP/UDP/IP sfrutta l’incapsulamento delle NALU in pacchetti RTP in modalità Simple Packetization (una NALU inun pacchetto RTP), Fragmentation (una NALU in diversi pacchetti RTP) o Aggregation (più NALU in un pacchettoRTP); la modalita ottimale, ai fini di minimizzare l’impatto della perdita di un pacchetto RTP sul video decodificato,dipende dal trasporto disponibile.

In primo luogo, la dimensione delle NALU dovrebbe essere adattata alla dimensione della MTU della retesottostante, in modo che il livello IP non frammenti il pacchetto RTP contenente la NALU. Poiche una slice è

9.8Si osservi che l’header non contiene informazioni di sincronizzazione.

Page 124: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

124 CAPITOLO 9. LA RACCOMANDAZIONE JVT H.264/AVC

formata da un numero arbitrario di macroblocchi di un quadro, la lunghezza della Slice puo essere scelta in funzionedella dimensione della Maximum Transfer Unit (MTU) della rete interessata dal trasferimento.

Laddove la NALU ecceda la dimensione delle MTU delle reti sottostanti, è opportuno frammentare la NALU indiversi pacchetti RTP. Cio accade ad esempio quando il flusso trasmesso e di alta qualita, e precodificato, oppurequando si voglia introdurre FEC su segmenti di dati appartenenti a pacchetti RTP di lunghezza fissa. Laddove unao più NALU siano molto piccole, come nel caso di NALU contenenti un Parameter Set, possono essere aggregatein un unico pacchetto RTP in modo tale da contenere l’overhead dovuto alla trasmissione dell’header del pacchettoRTP. Il meccanismo di aggregazione prevede che le NALU del pacchetto possano essere contrassegnate da ununico riferimento temporale, dando luogo ad un Single Time Aggregation Packet (STAP), o da differenti riferimentitemporali, dando luogo al Multi Time Aggregation Packet (MTAP).

Page 125: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Bibliografia

[1] T. Wiegand, G.J. Sullivan, G. Bjøntegaard, A. Luthra, “Overview of the H.264/AVC video coding standard,” IEEE Trans. on Circuits andSystem for Video Technology, Vol. 13, pp. 560-576, July 2003.

[2] S. Wnger, “H.264/AVC over IP,” IEEE Trans. on Circuits and System for Video Technology, Vol. 13, pp. 645-656, July 2003.

[3] RFC 3984, RTP Payload Format for H.264 Video , Wenger S. et al., February 2005.

[4] T. Stockhammer, M.M. Hannuksela, T. Wiegand, “H.264/AVC in Wireless Environment,” IEEE Trans. on Circuits and System for Video

Technology, Vol. 13, pp. 657-673, July 2003.

125

Page 126: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Capitolo 10

Comunicazioni multimediali su retiradiomobili 2.5 e 3 G

10.1 Introduzione

La maturita delle tecnologie di trasmissione e commutazione utilizzate nei sistemi radio mobili 2.5 e 3 G, e l’efficienzadelle tecnologie di compressione dei dati d’utente, ed in particolare del video, abilitano le comunicazioni multimedialiin contesti radiomobili. In tale contesto si possono pertanto progettare servizi complessi riconducibili a finalita di

• comunicazione interpersonale

• distribuzione di contenuti in modalita streaming

• messaggistica avanzata

Ciascuno dei servizi presentera inoltre proprie specifiche rispetto al trasporto, in termini di banda, ritardi, jitter,disponibilita del canale di ritorno. Fra queste, la specifica piu rilevante e quella che concerne il massimo delay/jittertollerabile da ciascun servizio, che ne limita l’effettiva realizzabilita in funzione delle diverse tecnologie di retedisponibili.

Al fine di garantire tanto l’interoperabilita fra terminali e la realizzabilita dei servizi, per ciascuna di questecategorie di servizio, devono essere individuati

• l’architettura protocollare di riferimento, in funzione della tecnologia di commutazione disponibile

• l’insieme dei codec, mandatori od opzionali, per i differenti dati (voce, audio, dati, immagini, video)

Richiameremo nei prossimi paragrafi le caratteristiche dei sistemi di comunicazione 2.5 e 3G, citando gli elementifondamentali dell’architettura di rete ed evidenziando gli aspetti di maggiore impatto sulle comunicazioni multime-diali, cioe la qualita di servizio e l’architettura protocollare dell’interfaccia radio. Successivamente, descriveremol’architettura protocollare e i codec multimediali specificati in ambito 3GPP per le tre categorie di servizo sopra citate.

126

Page 127: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

10.2. IL GENERAL PACKET RADIO SERVICE (GPRS) 127

10.2 Il General Packet Radio Service (GPRS)

Il sistema GPRS e l’estensione dell’architettura GSM per la trasmissione dati in modalità a pacchetto sia a livelloradio che nella core network.

Architettura di Rete GPRSL’architettura del sistema GPRS riutilizza alcuni elementi del sistema GSM, ed in particolare l’interfaccia radioe gli elementi di gestione della mobilita, introducendo gli elementi necessari alla gestione di nuovi servizi ditrasferimento dati a pacchetto. La Mobile Station (MS), e l’entità che accede ai servizi GSM e GPRS. I terminaliGPRS si differenziano in base alla capacita di utilizzo contemporaneo delle risorse GSM e GPRS del sistema.Il Base Station Subsystem (BSS) è l’entità delegata al controllo delle risorse radio e alla ricezione e trasmissione delleinformazioni delle MS in un’area geografica, coperta da una o più celle, ciascuna servita da una Base TransceiverStation (BTS).Nel sistema GSM, il BSS si interfaccia con il Mobile Switching Center (MSC) per il trasferimento del traffico vocea circuito. L’MSC è una centrale di commutazione numerica che serve gli utenti di una rete radiomobile GSMche si trovano nell’area di copertura radio da esso controllata; svolge le funzioni di commutazione per instaurare,controllare, tassare le chiamate da e per una MS nell’area da servita. Tipicamente co-locato con l’MSC e il VisitorLocation Register (VLR), che e un database che memorizza le informazioni relative alle MS gestite dal MSC,e coopera con il database centrale su cui l’operatore memorizza i dati statici relativi agli utenti (Home LocationRegister).Nel sistema GPRS, il BSS si interfaccia con il Serving GPRS Support Node, SGSN, che è uno dei due elementifunzionali (insieme al Gateway GPRS Support Node, GGSN) introdotti per permettere i servizi di trasferimento datia pacchetto. L’SGSN offre servizi di gestione dell’autenticazione, della mobilità, e della connessione a livello dilink logico. L’GGSN (Gateway GSN) opera da interfaccia tra la rete a pacchetto interna e le reti a pacchetto esterne,convertendo il formato dei pacchetti GPRS provenienti dal SGSN verso la rete a pacchetto esterna e instradando ipacchetti in arrivo dalle reti esterne verso l’appropriato SGSN.

10.2.1 Qualita di servizio GPRS

Per utilizzare i servizi GPRS l’utente sottoscrive il servizio e identifica il servizio richiesto mediante un profilo chedefinisce la qualità di servizio che deve essere garantita, in condizioni di sufficiente copertura e di carico normaledella rete. In caso di congestione, tali parametri sono indicativi e la rete è tenuta solo a garantire la priorità fra ivari servizi. I vari parametri suddividono le richieste in classi di servizio, anche se non obbligano gli operatori asupportare tutte le combinazioni possibili delle varie classi.

Classe di prioritaIndica il livello di priorita relativa dei vari servizi in caso di condizioni anomale di funzionamento del sistema. Le

classi di priorità previste dallo standard sono tre, alta, normale e bassa. La rete non utilizza queste classi nel caso incui vi siano risorse sufficienti a servire tutti i flussi.

Classe di ritardo

Page 128: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

128 CAPITOLO 10. COMUNICAZIONI MULTIMEDIALI SU RETI RADIOMOBILI 2.5 E 3 G

Nel caso di servizi interattivi sono stati definiti dei ritardi massimi che la rete deve garantire al flusso di informazionitransitante all’interno del sistema GPRS. I ritardi sono definiti come ritardo medio ed il percentile 95 del ritardo nelflusso di informazioni all’interno della rete GPRS ed includono il ritardo di accesso alla rete in uplink ed il ritardoin downlink. Ad entrambi i tipi di comunicazione va aggiunto il ritardo di transito all’interno della rete GPRS finoall’inoltro del traffico sulle reti esterne. Il minimo vincolo sul ritardo e pari a 500 ms.

Classe di affidabilita

La classe di affidabilita e un parametro che indica le caratteristiche di trasmissione che un’applicazione richiede ailivelli sottostanti. Ciascuna classe si diversifica in base alle richieste di servizio che vengono effettuate sui vari livellidella pila protocollare GPRS, in termini di pacchetti MAC persi, errati, duplicati, o fuori sequenza, ovvero di BERresiduo.

Classe di Throughput

La throughput class è un parametro fornisce un’indicazione quantitativa della banda richiesta per il trasferimento deidati di utente. I parametri di throughput che possono essere specificati si riferiscono al comportamento medio e dipicco della comunicazione. Il parametro Peak Throughput class è scambiato tra BTS e MS in fase di instaurazionedella comunicazione e può essere utilizzato per l’allocazione delle risorse trasmissive. In base a questi parametri,negoziati al momento della sottoscrizione del servizio o in fase di instaurazione del collegamento, il mobile ottienel’assegnazione delle risorse radio ed una priorità che viene utilizzata per la gestione dei flussi informativi. Le possibilipriorità che possono essere assegnate a livello radio sono quattro e vengono utilizzate in fase di instaurazione delcollegamento.L’assegnazione delle risorse radio si basa sulla peak throughput class e sulla capacità di ricezione etrasmissione del mobile.

10.3 L’Universal Mobile Telecommunication System

Le principali innovazioni nei servizi offerti dall’UMTS sono la capacità di supportare servizi eterogenei basati sucomunicazioni di tipo simmetrico e asimmetrico, di tipo real time e non real time, trasportando traffico a commutazionedi circuito con garanzia di QoS e traffico a commutazione di pacchetto con diversi livelli di QoS. Le reti UMTScostituiscono un’evoluzione delle reti di telefonia mobile 2G e 2.5G.

10.3.1 Qualita di servizio UMTS

Sono definite quattro diverse classi di qualità di servizio in base alla sensibilità ai ritardi di trasferimento:

Traffico Conversazionale

E’ la classe più sensibile ai tempi di trasferimento e descrive il traffico real time, sia di tipo telefonico classico, chedi tipo voce su IP. Descrive inoltre il traffico dei servizi di videotelefonia e videoconferenza. Poiche i servizi relativisono le comunicazioni interpersonali, il traffico di questa classe richiede basso ritardo di trasferimento, jitter limitatoe mantenimento delle relazioni temporali tra i diversi flussi multimediali.

Traffico Streaming

Page 129: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

10.3. L’UNIVERSAL MOBILE TELECOMMUNICATION SYSTEM 129

Architettura di Rete UMTSL’architettura di rete UMTS consta di servizi a commutazione di circuito e servizi a commutazione di pacchetto, esi differenzia dal sistema GSM/GPRS principalmente per il tipo di accesso radio utilizzato, mentre la rete utilizzaelementi che rappresentano un’evoluzione del sistema GSM/GPRS. In particolare, il BSC evolve in un’entita dettaRadio Network Controller (RNC), mentre MSC, SGSN e GGSN evolvono verso le corrispettive entita 3G, cioe3G-MSC, 3G-SGSN e 3G-GGSN. Le caratteristiche funzionali delle diverse unita sono riportate in Tabella 10.1.Dall’osservazione della Tabella risulta evidente come alcune funzionalita del 2G SGSN siano state ereditate dal3G SGSN, e/o dal RNC; quest’ultimo risulta pertanto un elemento molto piu complesso del BSC. Sono inoltreevidenziate le funzionalita innovative di telefonia su IP, comunicazioni multimediali real-time, commutazione adalta capacita che caratterizzano le reti di terza generazione.

3G SGSN RNC 2G SGSN BSCAutenticazione X XGTP Tunneling verso il GGSN X XTariffazione e misure di traffico X XInterazione con HLR X XGestione della mobilita X X XInterazione con MSC X X XConversione fra protocollo radio e protocollo IP X XCifratura X XCompressione X XCommutazione ad alta capacita XTelefonia su IP X XComunicazioni multimediali real-time X X

Tabella 10.1: Caratteristiche funzionali dei principali elementi di rete 2.5 e 3 G.

Attualmente il sistema UMTS prevede sia funzionalita di trasferimento a commutazione di pacchetto che a commu-tazione di circuito; in prospettiva, il trasferimento dovrebbe evolvere verso un unico dominio a commutazione dipacchetto. L’interfaccia di accesso dovrebbe prevedere la coesistenza di tecnologia di accesso radio GPRS/EDGE(GERAN) e UMTS (UTRAN).

E’ la classe che caratterizza il trasporto unidirezionale di flussi di dati multimediali. Richiede il mantenimento dellerelazioni temporali tra i diversi flussi e jitter limitato, ma in misura meno stringente rispetto alla classe conversazionale.

Traffico Interattivo

E’ la classe che descrive il traffico generato dall’interazione di un utente con un apparato remoto, per esempio perapplicazioni di Web Browsing o accesso a data base. Il round trip delay deve essere contenuto, e il trasferimento deidati deve essere caratterizzato da un basso tasso d’errore.

Page 130: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

130 CAPITOLO 10. COMUNICAZIONI MULTIMEDIALI SU RETI RADIOMOBILI 2.5 E 3 G

Traffico di BackgroundE’ la classe che descrive il traffico generato da un trasferimento dati in background, per applicazioni quali e-mail,

SMS, MMS, download di file da data base. Questa classe non presenta requisiti di ritardo ma richiede un tassod’errore molto basso.

10.4 Architettura protocollare della rete d’accesso UTRAN e GERAN

L’architettura protocollare dell'interfaccia radio prevede funzionalita di diversi livelli:

Funzionalità di livello 3

• assegnazione, gestione e rilascio di connessioni fra il terminale e la UTRAN;

• gestione degli aspetti di mobilità, allocazione delle risorse, sincronizzazione;

Funzionalità di livello 2

• mapping di unità di rete in unità Radio Link Control (RLC) e realizzazione di protocolli di controllo d'errore,con significativo impatto sulla qualita percepita10.1 ;

• associazione dei canali logici ai canali di trasporto, selezione del formato di trasporto, cambiamento del tipo dicanale di trasporto10.2;

• segmentazione, riassemblaggio, concatenazione, padding;

• gestione delle priorità tra diversi flussi di dati, multiplazione demultiplazione, monitoraggio del volume ditraffico, cifratura;

Funzionalità di livello 1

• multiplazione e demultiplazione dei flussi,

• codifica e decodifica di canale, l’interleaving e de-interleaving dei dati codificati,

• modulazione e demodulazione, sincronizzazione in tempo e frequenza.

10.1I protocolli di RLC consentono di realizzare le funzionalita di trasferimento dei dati video con differenti livelli di qualità. Tipicamente iltraffico conversazionale e di streaming adottano la modalità a basso ritardo mentre la Messaggistica multimediale in modalita download adotta lamodalità piu protetta.

10.2Il livello Medium Access Control (MAC) opera sulle unita dati da trasmettere selezionando il formato di trasporto appropriato in funzione delbit-rate di sorgente e dei parametri selezionati a livello di RLC.

Page 131: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

10.4. ARCHITETTURA PROTOCOLLARE DELLA RETE D’ACCESSO UTRAN E GERAN 131

Funzionalità di RLC nella GERAN e nella UTRANGERAN UTRAN⇒ adattamento al canale radiomobile mediante compressionedell'header e del payload (SNDCP);

⇒ trasferimento in modalita Acknowledged Data transfer,con consegna dei dati trasmessi senza duplicazione, insequenza, e senza errori grazie alla ritrasmissione dellesingole unita;⇒ trasferimento in modalita Unacknowledged Data Transfer,con rivelazione di errori di trasmissione e duplicazione dati.

⇒ adattamento al canale radiomobile mediante compressionedell'header (PDCP);⇒ gestione dei servizi del piano d'utente per dati comuni apiù utenti (BMC);

⇒trasferimento in modalita Acknowledged Data trans-fer, con consegna dei dati trasmessi senza duplicazione,in sequenza, e senza errori grazie alla ritrasmissione dellesingole unita;⇒trasferimento in modalita Unacknowledged Data Transfer,con rivelazione di errori di trasmissione e duplicazione dati;⇒ trasferimento in modalita Transparent Data Transfer,senza funzionalita di correzione o rivelazione d’errore.

Funzionalità di livello 1 nella UTRANI dati arrivano in insiemi di unità elementari dette Trasport Block, associate ad un intervallo di tempo prefissato(Transmission Time Interval, TTI), variabile fra un minimo di 10 ms e un massimo di 80 ms. I dati raccoltinell'ambito di un TTI sono segmentati in blocchi all'ingresso del codificatore di canale. Il codificatore può esserecostituito da un codificatore convoluzionale con rapporto di codice 1/2, o 1/3, o da un Turbo codice di rapporto dicodice 1/3. L'interleaving si estende su una profondità pari al TTI. I dati relativi ad un TTI sono segmentati in trameradio di 10 ms. L'impatto di errori di trasmissione sulle trame radio al livello di bitstream ricevuto dipende tantodalla profondità dell'interleaving che dalla capacità di rivelazione del codice. D'altra parte tali parametri dipendonodal budget disponibile in termini di banda e di ritardo, e variano da applicazione ad applicazione.

Page 132: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

132 CAPITOLO 10. COMUNICAZIONI MULTIMEDIALI SU RETI RADIOMOBILI 2.5 E 3 G

Funzionalità di livello 1 nella GERANNel caso di trasmissione GPRS, sono definiti quattro schemi di codifica di canale associati ad una modulazione ditipo GMSK, riportati in Tabella 10.2. Inoltre e possibile attribuire ad un utente fino ad 8 time-slots, per un data-ratenominale massimo di 160 Kb/s. La modulazione utilizzata e la GMSKa.

Coding Scheme Modulation Code Rate Data rate netto (nominale)CS1 GMSK 1/2 8(9.05)CS2 GMSK 2/3 12(13.4)CS3 GMSK 3/4 14.4(15.6)CS4 GMSK 1 20(21.4)

Tabella 10.2: Schemi di codifica di canale adottati nel GPRS.

Nel caso di trasmissione Enhanced Data rates for GSM Evolution (EDGE), sono definiti nove schemi di modulazionee codifica di protezione decrescente e data rate crescente, riportati in Tabella 10.3. La modulazione utilizzata e laGMSK o la 8PSK.

Coding Scheme Modulation Code Rate Data rateMCS1 GMSK 1/2 8.8MCS2 GMSK 2/3 11.2MCS3 GMSK 3/4 14.8MCS4 GMSK 1 17.6MCS5 8PSK 0.37 22.4MCS6 8PSK 0.49 29.6MCS7 8PSK 0.76 44.8MCS8 8PSK 0.92 54.4MCS9 8PSK 1 59.2

Tabella 10.3: Schemi di modulazione e codifica di canale adottati nel sistema EDGE.aL’interleaving operato in GPRS e EDGE differisce da quello utilizzato nel GSM perche opera su 4 Normal Burst anziche 8, in quanto si

suppone che la qualita del servizio offerto sia maggiormente condizionata dalla percentuale di pacchetti errati che dal BER residuo.

Page 133: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

10.5. SERVIZI MULTIMEDIALI CONVERSAZIONALI IN AMBITO 3GPP 133

10.5 Servizi multimediali conversazionali in ambito 3GPP

I servizi di tipo conversazionale sono servizi real-time, di telefonia, videotelefonia e conferenza audio/video. Iltraffico conversazionale e sensibile ai ritardi di trasferimento, che devono essere contenuti entro i 200 ms. Essi sonorealizzabili nel sistema UMTS sia utilizzando un modo di trasferimento a circuito che un modo di trasferimento apacchetto.

10.5.1 Servizi conversazionali a commutazione di circuito

La descrizione dell’architettura protocollare e dei codec per servizi conversazionali a commutazione di circuito econtenuta in [3]. Il terminale multimediale 3G-324M definito in [3] consente lo scambio informazioni real-time, ditipo video, audio, e dati su reti 3GPP a commutazione di circuito. Le specifiche del terminale 3G-324M si basano sullaRaccomandazione ITU-T H.324 Annex C, e H10.3 per canali soggetti ad errori e per comunicazioni mobili. L’AnnexC di H.324, anche noto come H.324/M, definisce l’uso di terminali H.324 in ambienti di trasmisione soggetti aderrore. In particolare, esso estende le funzionalia di protezione dagli errori previste dal formato di multiplazioneH.223. Le comunicazioni possono essere bidirezionali o unidirezionali, eventualmente supportate da una MultipointCommunication Unit (MCU). I terminali possono essere fissi o mobili. Le modifiche 3GPP all’H.324 sono descrittein principalmente in [4]. L’architettura del terminale 3G-324M per i servizi conversazionali a commutazione dicircuito e descritta in Fig.10.1.

10.5.1.1 Architettura protocollare per servizi conversazionali a commutazione di circuito

Un terminale multimediale 3G-324M dispone di un protocollo di controllo H.245 versione 3 o successive, di unmultiplex di tipo H.223 Annex A e B, e di una interfaccia wireless. I terminali 3G-324M supportano almeno 32kbit/s di bit rate all’interfaccia fra il multiplex e la rete wireless. La multiplazione puo adottare techiche estese di FECe ARQ, descritte negli Annessi tecnici C e D della raccomandazione H.223; in tal caso il formato di multiplazionerobusto prevede l’introduzione di codici a correzione d’errore nell’Adaptation Layer AL-1 e AL-3, e di protocolli diritrasmissione nell’AL-1. Il supporto di H.223 Annex C e D, ovvero dei formati di multiplazione, e opzionale, e cosìil supporto delle altre componenti di H.324 Annex C. Il Multiplexing di dati video nei terminali 3G-324 M è definitoda criteri generali di allineamento dell’inizio di unità sintattiche del bitstream video con l’inizio dei relativi pacchettiH.223, detti AL3 SDU. In un sistema reale, il decodificatore video può scartare le AL3-SDU che risultino erratein base alla loro AL3 checksum o tentare la decodifica dei dati ricevuti, fintantoche non si riscontri una violazionesintattica o semantica. I criteri di pacchettizzazione dei dati in modalita robusta rispetto agli errori di trasmissionesono sostanzialmente analoghi a quelli precedentemente discussi per la pila IP/UDP/RTP. Tuttavia, a differenza dellamultiplazione RTP/UDP/IP, la multiplazione H.223 opera a banda fissa, tipicamente limitata. Inoltre, è progettato perambienti dalla MTU limitata (100 bytes), per cui presenta un minore overhead, e ad elevato tasso d’errore, per cui èdotato di un meccanismo di ritrasmissione per SDU perse o danneggiate. H.223 inoltre non presenta alcuni campidell’RTP header, quali l’RTP timestamp o il marker bit.

10.3L’Annex H definisce la modalita operativa di H.324 su connessioni fisiche indipendenti (multilink), aggregate insieme al fine di fornire unbit-rate complessivo piu elevato.

Page 134: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

134 CAPITOLO 10. COMUNICAZIONI MULTIMEDIALI SU RETI RADIOMOBILI 2.5 E 3 G

10.5.1.2 Codec per servizi conversazionali a commutazione di circuito

I codec raccomandati sono:

• Audio: AMR codec narrowband (mandatario) e G.723.1

• Video: H.263 baseline (mandatorio), H.263 wireless e MPEG-4 Visual SP L0, H.264 baseline

• Testo/Timed Text: ITU-T T.140; la Racc. ITU-T T.140 descrive il trasferimento di dati testuali con informazionidi sincronizzazione, detti Timed Text10.4.

Figura 10.1: Architettura del terminale 3G-324M per servizi conversazionali a commutazione di circuito.

10.4Il Timed text e il formato dei dati testuali utilizzati nel chatting, per il testo presentato con grafica e con eventuali animazioni (effetto karaoke,etc).

Page 135: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

10.5. SERVIZI MULTIMEDIALI CONVERSAZIONALI IN AMBITO 3GPP 135

10.5.2 Servizi conversazionali a commutazione di pacchetto

I servizi di tipo conversazionale a commutazione di pacchetto (Packet Switched Conversational Multimedia Applica-tions) sono definiti in [2].

10.5.2.1 Architettura protocollare per servizi conversazionali a commutazione di pacchetto

L’architettura protocollare per i servizi conversazionali su rete a pacchetto di tipo IMS (IP Multimedia Subsystem)è rappresentata in Fig.10.2.Le procedure di segnalazione per il controllo di chiamata per servizi multimediali sureti IP sono basate sui protocolli SDP e SIP [11]. I flussi di segnalazione sono riportati in [10]. I flussi disegnalazione utilizzano tipicamente una pila protocollare reliable, mentre i dati multimediali codificati utilizzano unapila protocollare unreliableRTP/UDP/IP.

10.5.2.2 Codec per servizi conversazionali a commutazione di pacchetto

I tipi di dati e i relativi codec che possono essere trasferiti sono gli stessi previsti per la commutazione di circuito esono:

• Audio: AMR codec narrowband (mandatario) e G.723.1

• Video: H.263 baseline (mandatorio), H.263 wireless e MPEG-4 Visual SP L0, H.264 baseline

• Testo/Timed Text: ITU-T T.140.

Figura 10.2: Pila protocollare per i servizi conversazionali su rete a pacchetto.

Page 136: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

136 CAPITOLO 10. COMUNICAZIONI MULTIMEDIALI SU RETI RADIOMOBILI 2.5 E 3 G

10.6 Servizi multimediali di streaming in ambito 3GPP

Col termine streaming si identifica la modalità operativa di un’applicazione che presenta media quali audio e video,opportunamente sincronizzati, mentre la ricezione di tali flussi di dati è in corso di da parte delle risorse di retemediante modo di trasferimento a pacchetto. Le applicazioni che operano in modalità streaming possono essere ditipo on-demand (accesso a database) o live. Tali servizi hanno specifiche di ritardo dell’ordine di qualche secondo,ma richiedono tuttavia un jitter contenuto e la sincronizzazione fra media differenti. I servizi di Packet SwitchedStreaming (PSS) sono definiti in [5], e i relativi codec in [6].

10.6.1 Architettura protocollare per servizi di streaming a commutazione di pacchetto

L’architettura protocollare per il supporto dei servizi streaming a pacchetto prevista in sistemi 3G è rappresentatain Figura 10.3. Tale architettura realizza il controllo mediante il protocollo RTSP di strato applicativo, definito inambito IETF, per il controllo della consegna dei dati con requisiti real-time. Il protocollo RTSP consente all’ utentedi agire lato client per richiedere il flusso in streaming al server che distribuisce i contenuti, di controllare la ricezionedel flusso, e di eseguire operazioni come il fast forward, rewind o la pausa del flusso dati. Oltre al recupero econtrollo di flusso da un content server, il protocollo RTSP abilita altre funzionalità quali l’invito di un contentserver ad una conferenza o l’inserimento di nuovi flussi in una sessione già esistente. Tale protocollo e trasferitotipicamente mediante la pila reliable TCP/IP. Il trasferimento dei dati multimediali prevede invece l’adozione di unapila unreliable RTP/UDP/IP per i flussi audio/video e reliable TCP/IP per gli altri dati.

10.6.2 Codec per servizi di streaming a commutazione di pacchetto

I tipi di dati che possono essere trasferiti sono diversificati, e comprendono voce, audio, video, immagini fisse, datinon sincronizzati quali file grafici o testo, o dati sincronizzati, descritti da file multimediali. I formati di codificaprevisti sono:

• Segnale vocale: codec AMR (narrowband o wideband)

• Audio naturale: MPEG4 AAC Low Complexity

• Audio sintetico: Scalable Poliphony MIDI

• Immagini fisse di tipo fotografico: JPEG, JFIF10.5

• Formati grafici di tipo scalare: GIF87a, GIF89a10.6, PNG10.7

• Formati grafici di tipo vettoriale: Scalable Graphic, profili Tiny o Basic

• File multimediali: formato file 3gpp10.5Il formato JFIF e il formato file del bitstream JPEG, ed e tipicamente caratterizzato come un file con estensione .JPG. Esistono tuttavia

applicativi, ad esempio all’uscita di fotocamere digitali, che scrivono l’immagine in accordo al formato del bitstream JPEG senza le informazioniaggiuntive del JFIF.

10.6Il formato GIF e un formato di compressione di immagini basato sull’algoritmo di Lempel-Ziv, coperto da brevetto. Esso risulta senza perditaper immagini con un numero di colori limitato a 256.

10.7Il formato PNG non e protetto da brevetto e non soffre delle limitazioni sul numero di colori rappresentabili senza perdita. E’ lievementemeno efficiente del formato GIF, e non supporta animazione del contenuto.

Page 137: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

10.6. SERVIZI MULTIMEDIALI DI STREAMING IN AMBITO 3GPP 137

• Video: H.263 baseline (mandatorio), H.263 wireless, MPEG-4 visual SP L0, H.264 Baseline

• Testo: formato XHTML o SMIL10.8

• Timed Text: formato file 3gpp

Figura 10.3: Pila protocollare per i servizi di streaming su rete a pacchetto.

10.8Il linguaggio SMIL e un linguaggio simile ad HTML per la descrizione di sessioni multimediali, mentre XHTML e una versione ridotta diHTML.

Page 138: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

138 CAPITOLO 10. COMUNICAZIONI MULTIMEDIALI SU RETI RADIOMOBILI 2.5 E 3 G

10.7 Servizi multimediali in ambito 3GPP: la messaggistica multimediale

La messaggistica multimediale prevede lo scambio di dati compositi; il trasferimento puo avvenire tanto in modalitadownload che in modalita streaming.

I dati multimediali sono combinati in accordo al formato Multipurpose Internet Mail Extension10.9 . I formati deidati codificati sono:

• Segnale vocale: codec AMR (narrowband o wideband)

• Audio naturale: MPEG4 AAC Low Complexity

• Audio sintetico: Scalable Poliphony MIDI

• Immagini fisse di tipo fotografico: JPEG,JFIF

• Formati grafici di tipo scalare: GIF 87a, GIF89a, PNG

• Formati grafici di tipo vettoriale: Scalable Graphic, profili Tiny o Basic

• File multimediali: formato file 3GP

• Video: H.263 baseline (mandatorio), H.263 wireless, MPEG-4 visual SPL0, H.264 Baseline

• Testo: formato plain text

• Presentazione/sincronizzazione: formato XHTML o SMIL

10.8 Il formato file .3gp.

Il formato di file 3GPP (3GP) definisce un tipo di file multimediale basato sul modello dei file ISO MPEG/JPEG.Il file multimediale 3GPP e utilizzato nell’ambito di servizi di Packet Switched Streaming per il trasferimento ditesto sincronizzato e nell’ambito di servizi di Multimedia Messaging. I contenuti multimediali del file 3GPP possonoessere trasferiti sia in modalita download che in modalita streaming. I codec utilizzabili sono H.263, MPEG-4, H.264(AVC) per il video, AMR narrow-band e wide-band per la voce, AMR esteso e MPEG-4 AAC per l’audio, e testosincronizzato (scritte animate, etc.); il formato di file prevede la sintassi per la descrizione dei codec effettivamenteutilizzati. Esso prevede inoltre estensioni per la memorizzazione negli streaming server (RTP hint tracks, SDPdescription, Alternative Tracks), metadati per la descrizione del contenuto, informazioni sulle specifiche richieste peril buffer del decodificatore video, dati criptati.

10.9Il Multipurpose Internet Mail Extension (MIME, RFC 2045, 2046) e un protocollo di descrizione di messaggi che coimvolgano media didiversi tipi, quali testo, immagini, video e audio.

Page 139: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Bibliografia

[1] 3GPP TS 23.140: Multimedia Messaging Service (MMS); Functional description; Stage.

[2] 3GPP TS 26.140: Multimedia Messaging Service (MMS); Media formats and codecs.

[3] 3GPP TS 26.110: Codec for circuit switched multimedia telephony service; General description.

[4] 3GPP TS 26.111: Codec for circuit switched multimedia telephony service; Modifications to H.324.

[5] 3GPP TS 26.233: Transparent end-to-end packet switched streaming service (PSS); General Description.

[6] 3GPP TS 26.234: Transparent end-to-end packet switched streaming service (PSS); Protocols and Codecs.

[7] 3GPP TS 26.244: 3GPP file Format.

[8] IETF RFC 3261: SIP: Session Initiation Protocol.

[9] IETF RFC 2327: SDP: Session Description Protocol.

[10] 3GPP TS 24.228: Signalling flows for the IP multimedia call control based on SIP and SDP.

[11] 3GPP TS 24.229: IP Multimedia Call Control Protocol based on SIP and SDP.

139

Page 140: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno:

Capitolo 11

Conclusioni

11.1 Conclusioni

Il progetto di un sistema di comunicazioni multimediali si basa sulla definizione di un’architettura end-to-end ar-ticolata in strati corrispondenti alla realizzazione di diverse funzionalita, e che coinvolge differenti tecnologie. Inquesto testo sono stati descritti i principi su cui si basa la codifica di sorgente di informazione multimediale, conparticolare riferimento alla codifica della voce, dell’audio, delle immagini, e del video. Attraverso l’esame deglistandard internazionali, sono state quindi esposte le peculiarita degli algoritmi di compressione utilizzati in servizidifferenti, quali i servizi diffusivi e di comunicazione interpersonali su canali di comunicazione differenti, in terminidi capacita, qualita, tecnologia di rete adottata. Sono state inoltre analizzate le strategie di protezione dei dati multi-mediali estremamente differenziate incontrate nell’esame dei diversi contesti in cui sono realizzabili le comunicazionimultimediali, con particolare riferimento alle funzionalita di protezione che possono essere realizzate al livello appli-cativo. Particolare attenzione e stata infine dedicata ai principi e alle diverse modalita di attuazione delle funzionalitadi multiplazione dati, evidenziando il ruolo svolto da tali metodologie tanto nella qualita dei servizi multimedialiquanto nell’affermazione dei servizi stessi. In alcuni casi, si e evidenziato lo stretto legame fra le funzionalita dilivello fisico e di quelle di multiplazione dei dati, ed il successo dei servizi caratterizzati da un adeguato disegnocongiunto di tali funzionalita.

L’ordine scelto nell’esposizione degli argomenti corrisponde fondamentalmente alla successione storica dell’e-mergere dei servizi multimediali; tale ordinamento ha comunque tenuto conto dell’esigenza di presentare in modocompatto l’intero dispiegarsi dello sviluppo di ciascun servizio. Gli argomenti presentati, tuttavia, si prestano ad un’a-nalisi trasversale, concentrata ad esempio sulle differenti applicazioni dei principi generali della teoria della codificadi sorgente e di canale, sull’evoluzione dell’una o dell’altra tecnologia, sul confronto delle particolari realizzazionidella stessa tecnologia dei diversi contesti applicativi; tale analisi e, laddove possibile, suggerita da richiami internial testo. Nel suo complesso, il presente testo risponde all’intento di stimolare l’elaborazione critica dei principi edelle questioni applicative concernenti le comunicazioni multimediali, al fine di consentire l’analisi e la comprensionedelle tecnologie multimediali e del loro sviluppo.

140

Page 141: Dispense del corso di Comunicazioni Multimediali II ...infocom.uniroma1.it/~colonnese/com_mult.pdf · 1.1Gli enti di standardizzazione che saranno piu frequentemente citati saranno: