Capitolo 4 Codifica del segnale audio

Transcript

Capitolo 4 Codifica del segnale audio
Capitolo 4
Codifica del segnale audio
4.1
Principi di codifica del segnale audio
La compressione del segnale audio é di interesse in numerose applicazioni, quali la memorizzazione, la diffusione, lo
streaming su reti fisse e mobili. La rappresentazione PCM del segnale audio tipicamente adottata nelle applicazioni
di memorizzazione ad alta qualitá (CD audio) prevede il campionamento del segnale stereo a 44.1KHz, quantizzato
a 16 bit per campione, e conduce ad un bit-rate netto 4.1 di 1.4M b/s. A partire dalla fine degli anni ’80 sono state
definite tecniche di codifica in grado di rappresentare il segnale con circa un bit per campione senza degradarne la
qualitá soggettiva. Tali tecniche possono tradursi in algoritmi molto complessi, ma sono riconducibili al principio di
base della riduzione della ridondanza percettiva dal segnale audio.
La rappresentazione delle diverse componenti del segnale puó essere tanto piú parsimoniosa quanto piú esse sono
percettivamente trascurabili. A tal fine, il segnale audio é rappresentato in un dominio in cui le componenti abbiano
diversa importanza percettiva. Poiché la risposta psicoacustica ad uno stimolo presenta una sensibilitá variabile con
la frequenza dello stimolo stesso, il segnale é tipicamente rappresentato come sovrapposizione di componenti allocate
in diverse sottobande di frequenza.
La risposta psicoacustica, oltre che funzione della frequenza dello stimolo, é funzione della presenza concomitante
di piú stimoli. Infatti, la presenza di uno stimolo di significativa potenza causa fenomeni di mascheramento percettivo
di altri stimoli vicini nel tempo e in frequenza.
Richiameremo qui i principi della codifica percettiva, discutendo la rappresentazione in frequenza del segnale
audio e i fenomeni di mascheramento percettivo in frequenza e nel tempo. Nelle sezioni successive descriveremo
le caratteristiche fondamentali dello standard MPEG-1 Layer I e II e Layer III, e dei suoi successori MPEG-2 e
MPEG-4.
4.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 potersi
ritenere stazionario, occupa una banda che puó estendersi fino a piú di 20KHz. Il sistema uditivo umano non ha
4.1 Si
osservi che a valle della codifica di linea necessaria per funzionalitá di sincronizzazione e correzione d’errore, ogni campione a 16 bit é in
definitiva rappresentato da 49 bit, per un bit rate complessivo di 4.32 Mb/s.
28
4.1. PRINCIPI DI CODIFICA DEL SEGNALE AUDIO
29
uguale sensibilitá su tutte le frequenze occupate dal segnale; ad esempio, l’intensitá percepita é maggiore in corrispondenza delle frequenze tipiche della voce umana. Esso puó essere modellato come un banco di filtri passabanda,
parzialmente sovrapposti, di banda passante piú piccola (dell’ordine di 50 − 100Hz) per segnali alle frequenze piú
basse, destinate ad un analisi piú fine, e di banda passante via via crescente (fino a qualche KHz).
In condizioni statiche, per ogni tono sinusoidale ad una frequenza assegnata, é possibile individuare una soglia di
intensitá al di sotto della quale il tono non é percepito (static threshold ). Quando sono presenti piú toni, si verifica
un fenomeno che prende il nome di mascheramento in frequenza. In particolare, la presenza di un tono piú forte
(masker) aumenta la soglia minima di percepibilitá nelle frequenze adiacenti. Pertanto, toni di potenza piú piccola
di frequenza sufficientemente vicina divengono non percepibili (maskee). L’effetto di mascheramento si estende
maggiormente verso le frequenze piú elevate di quella del (masker) e in misura minore verso le frequenze piú basse;
la banda su cui si estende il mascheramento cresce al crescere della frequenza del masker. Inoltre, il rumore ha un
migliore effetto di mascheramento di un tono sinusoidale. Fissato un assegnato spettro a breve termine del segnale,
il fenomeno di mascheramento é tipicamente descritto analiticamente mediante una soglia M variabile in frequenza
che rappresenta la minima potenza percepita. Il rapporto fra la potenza Ps del segnale e la soglia M é anch’esso
funzione della frequenza e prende il nome di Signal to Mask Ratio:
def
SM R =
Ps
M
Supponiamo che sia presente, oltre al segnale, una componente di rumore di potenza Pn , ad esempio dovuta ad errore
di quantizzazione. Fintantoché la potenza di rumore é al di sotto della soglia di udibilitá:
Pn < M
ovvero fintantoché
Ps
Ps
>
= SM R
Pn
M
tale rumore non sará percepito da un ascoltatore. Il SMR rappresenta pertanto il minimo rapporto segnale rumore
SN R =
che deve essere garantito nella rappresentazione codificata della componente di segnale affinché il disturbo non sia
percepibile. Analogamente, si definisce Noise to Mask Ratio il rapporto fra la potenza del rumore e la soglia ad una
assegnata frequenza (NMR), e la condizione di non percepibilitá richiede N M R < 1.
Un altro fenomeno di mascheramento ha luogo nel tempo. L’occorrenza di un suono piú potente puó mascherare
uno piú debole che occorra in un intervallo di tempo successivo di durata variabile fra i 50ms e i 200ms. Il
mascheramento puó avvenire anche quando il suono piú debole precede il masker, ma l’estensione temporale del
fenomeno di mascheramento é di pochi millisecondi.
Consideriamo dunque un segnale audio x(t) rappresentato dalla sequenza dei suoi campioni xn estratti soddisfacendo le condizioni del teorema del campionamento, e rappresentati numericamente mediante un numero di bit per
campione tale da ritenere trascurabile la potenza dell’errore di quantizzazione nel successivo trattamento del segnale.
Il segnale presenta caratteristiche di non stazionarietá. Supponiamo quindi di considerare un frammento del segnale
originario di lunghezza finita xn , n = 0, · · · N − 1. I piú importanti sistemi di codifica del segnale audio si basano
su alcuni principi basilari, qui brevemente riportati.
Rappresentazione del segnale nel dominio della frequenza.
Sub-band coding
30
CAPITOLO 4. CODIFICA DEL SEGNALE AUDIO
Nella codifica a sottobande la rappresentazione é realizzata applicando il segnale all’ingresso di un banco di
filtri 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 coding
In alternativa, alla rappresentazione a sottobande, il segnale puó essere rappresentato operando sui suoi campioni
una trasformata lineare discreta, i cui coefficienti sono successivamente quantizzati e trasmessi. Eventualmente, la
porzione di segnale da analizzare puó essere rappresentato applicando l’operazione di trasformata a blocchi parzialmente sovrapposti, in modo da ridurre eventuali artefatti ai confini fra blocchi trasformati compressi in modo
indipendente.
Hybrid coding
La rappresentazione a sottobande puó essere integrata con la rappresentazione basata su trasformata. In tale approccio, tipicamente, il segnale é preliminarmente rappresentato in sottobande e successivamente ciascuna sottobanda
é trasformata e compressa. Come vedremo nel seguito, questo tipo di rappresentazione é adottata nello standard
MPEG-1 Layer III, Also Known As (AKA) MP3.
Sfruttamento dei fenomeni di mascheramento.
Qualsiasi sia il tipo di rappresentazione adotata, la codifica opera una analisi spettrale a breve termine del segnale
finalizzata ad identificare l’andamento spettrale del SMR. Per un fissato andamento del SMR, é possibile ridurre
l’informazione trasmessa in modo impercepibile se l’errore introdotto presenta una potenza inferiore alla soglia su
tutto la banda del segnale. Pertanto l’analisi consente di individuare, frequenza per frequenza, la massima potenza
per l’errore dovuto alla compressione. Ad esempio, supponendo di rappresentare la componente di frequenza in
questione mediante una codifica PCM, la determinazione della soglia conduce alla determinazione della massima
potenza dell’errore di quantizzazione tollerabile, ed, in definitiva, al numero di bit che devono essere allocati per la
rappresentazione della componente.
Inoltre, la codifica puó trarre vantaggio dall’operare un’adattamento della finestra di analisi temporale per limitare
alcuni fenomeni di distorsione, detti fenomeni di pre-eco, che hanno luogo quando all’interno della finestra temporale
da comprimere é presente un segnale di tipo a gradino, con una netta discontinuitá piano-forte. Infatti in tali casi
l’analisi spettrale della finestra conduce a determinare la soglia di mascheramento tenendo conto della presenza di
tale segnale che funge da masker, e a effettuare la compressione di conseguenza. Tuttavia, data la non stazionarietá
del segnale in questione, il fenomeno di mascheramento percettivo non opera se non pochi millisecondi prima che il
segnale appaia. Quindi, l’errore di quantizzazione non percepibile dopo che é presente il masker, é invece percepibile
prima. Pertanto, nella decodifica del blocco tale errore si manifesta come un artefatto percepibile che precede il
masker, e che prende il nome di pre-eco. La lunghezza delle sezioni di segnale analizzate e codificate deve pertanto
adattarsi, in modo che in presenza di una transizione, la lunghezza della finestra sia piccola. In tal modo il numero di
campioni su cui é presente il preeco sia ridotto; quando tale numero é molto piccolo, il preeco diviene impercepibile
grazie al mascheramento temporale (vedi Fig.4.1).
4.2. LO STANDARD MPEG-1 AUDIO
31
Figura 4.1: Esempio di generazione di un fenomeno di preeco e del suo superamento mediante adattamento della finestra
temporale per l’analisi in frequenza.
4.2
Lo standard MPEG-1 Audio
Lo standard MPEG-1, formalizzato in ambito ISO all’inizio degli anni ’90, si é rapidamente diffuso grazie ad alcune
circostanze favorevoli. In primo luogo é uno standard aperto, realizzabile da chiunque a partire dal documento
di definizione dello standard, acquistabile dall’ISO. In secondo luogo esso é largamente documentato grazie alla
disponibilitá di software pubblico sviluppato durante i lavori di standardizzazione al fine di verificare e esplicitare
le funzionalitá della codifica e decodifica. In terzo luogo, esso prevede uno sbilanciamento della complessitá a
carico del codificatore, mentre il decodificatore é quanto possibile semplificato, cos´ da abilitare la produzione di
riproduttori (player) a basso costo. Infine, la standardizzazione é intervenuta tempestivamente rispetto all’avvento
della digitalizzazione dei contenuti multimediali, anticipando e scoraggiando il proliferare di soluzione proprietarie
di interoperabilitá necessariamente limitata.
Lo standard di codifica audio consta di tre schemi di codifica (Layers) di complessitá ed efficienza di compressione
crescente, 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 codificata
di 384 campioni per il Layer-I e di 1152 per i Layer-II e III. Osserviamo che tali trame sono di lunghezza in bit
variabile con il bit-rate. Ad esempio, per audio Layer-III MPEG audio campionato a 44.1KHz ogni trama rappresenta
un intervallo di 26.12msec. Per un bit-rate 384 kbits/sec la trama corrisponde a 1.25 KBytes. Il bit-rate dell’audio
codificato con MPEG-1 varia da un minimo di 32 Kb/s per segnale mono ad un massimo che dipende dalla complessitá
della codifica adottata e dalla qualitá desiderata. In Tabella sono riportati i bit-rate medi tipicamente richiesti dai
diversi Layer per la codifica percettivamente trasparente, ovvero caratterizzata da artefatti di compressione non
percepibili, di segnale audio stereo; la qualitá del segnale decodificato é pertanto quella di un CD audio.
4.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 sulla
decomposizione del segnale di ingresso in sequenze di lunghezza assegnata pari a 384 o 3 × 384 = 1152 campioni,
32
CAPITOLO 4. CODIFICA DEL SEGNALE AUDIO
corrispondenti ad intervalli temporali di analisi di durata differente in funzione della frequenza di campionamento
del segnale all’ingresso. Fissiamo l’attenzione sulla modalitá operativa per frequenza di campionamento del segnale
di ingresso a 48KHz, ovvero segnale limitato in banda a 24KHz.
La sequenza oggetto della codifica é applicata all’ingresso di un banco di 32 filtri che effettuano la decomposizione
del segnale in 32 sottobande di larghezza uniforme; la larghezza di ciascuna sottobanda é pari ad 1/32 della banda
iniziale, ovvero 24KHz/32 = 750Hz. L’operazione di filtraggio é realizzata ricorrendo ad una struttura di calcolo
molto efficiente, realizzata da un banco di filtri passabanda, denominati polifase, di lunghezza 512 coefficienti e di
larghezza di banda a 3 dB di 750 Hz; i filtri sono pertanto parzialmente sovrapposti in frequenza. Ciascuna delle 32
sequenze in uscita al banco di filtri polifase é sottocampionata nel tempo di un fattore 32, e pertanto é costituita da
384/32 = 12 campioni nel caso del Layer I o da 3 × 12 campioni nei Layer II e III. I filtri di analisi al codificatore ed
i filtri di sintesi al decodificatore sono progettati in modo tale che, in assenza di compressione, il segnale ricostruito
all’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 valore
rappresenta il fattore di scala relativo al blocco. Nel Layer I é trasmesso il fattore di scala, nel Layer II é trasmessa
la tripletta di fattori di scala relativi a blocchi di 12 campioni adiacenti; in questo secondo caso la codifica sfrutta la
correlazione 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 sfrutta
il mascheramento percettivo allocando meno bit per la quantizzazione dei campioni relativi alle sottobande in cui la
soglia di mascheramento dinamico é piú elevata. L’allocazione dei bit parte da un numero di bit pari a zero su tutte
le sottobande, e aumenta selettivamente fintantoché il livello della potenza dell’errore di quantizzazione non scende
al di sotto della soglia in ogni sottobanda.
Osserviamo che la soglia di mascheramento dinamico puó essere calcolata mediante un’analisi FFT della sequenza
da comprimere; il calcolo della soglia di mascheramento non é definito dallo standard -che tuttavia contiene due sezioni
informative che identificano due metodi di calcolo- e puó essere realizzato in modo piú o meno sofisticato, tenendo
eventualmente in conto la natura tonale o rumorosa del mascherante. In definitiva, la determinazione della soglia e
l’allocazione ottima dei bit dal punto di vista della qualitá percepita costituisce un elemento critico della codifica e
distingue le diverse soluzioni sviluppate.
4.2.2
Layer III
Il Layer III é uno schema di codifica ibrido, che coniuga cioé la rappresentazione a sottobande con l’utilizzo di
trasformate, a bit-rate costante o variabile, che opera su blocchi di 1152 campioni del segnale di ingresso. Esso
prevede la divisione in sottobande, realizzata mediante lo stesso banco di filtri polifase descritti per il Layer I e
II, e la decimazione delle componnti di segnale cos´ ottenute. Le sequenze relative alle diverse sottobande sono
quindi costituite da 3 × 12 = 36 campioni. Per ciascuna sequenza di 36 campioni, tre differenti fattori di scala sono
individuati e codificati come nel Layer II.
La sequenza in uscita a ciascuna sottobanda é quindi sottoposta ad una rappresentazione del segnale in frequenza
4.2. LO STANDARD MPEG-1 AUDIO
33
mediante una trasformazione lineare che prende il nome di Modified Discrete Cosine Transform4.2 . Tale trasformazione consente di calcolare, a partire dai 36 campioni del segnale relativo alla singola sottobanda, fino ad un massimo di
18 componenti frequenziali diverse per ciascuna delle 32 sottobande. I coefficienti trasformati sono quindi quantizzati
con allocazione dei bit e dei livelli differenziata non solo fra le diverse sottobande, ma anche, per ciascuna sottobanda,
fra le diverse componenti MDCT4.3 . Ció consente di differenziare la qualitá della codifica all’interno di ciascuna
sottobanda, tenendo conto in modo piú fine dei fenomeni di mascheramento. La quantizzazione é non uniforme, ed é
caratterizzata da livelli piú fitti in corrispondenza dei valori piú piccoli4.4. Quando il segnale presenta caratteristiche
di stazionarietá, la MDCT opera su blocchi di 36 campioni calcolando 18 componenti frequenziali distinte. Quando
il segnale presenta una brusca discontinuitá ,la lunghezza della sequenza su cui opera la MDCT viene ridotta, al fine
di limitare i fenomeni di preeco. In tal caso, la trasformazione opera su blocchi di 12 campioni e consente il calcolo
di 6 componenti frequenziali distinte. Tali componenti sono a loro volta quantizzate in modo differenziato e non
uniforme. I coefficienti MDCT quantizzati sono ulteriormente codificati mediante codice di Huffmann.
Come giá descritto per i Layer I e II, l’allocazione é effettuata sulla base di un’analisi spettrale del segnale
che consenta di calcolare la soglia di mascheramento percettivo. La potenza del rumore di quantizzazione é quindi
mantenuta al di sotto di tale soglia, per cercare di ottimizzare la qualitá finale dell’audio ricostruito.
MPEG-1
Bit-rate
Layer I
384Kb/s
Layer II
192Kb/s
Layer III
128Kb/s
Tabella 4.1: Bit-rate richiesto per la codifica trasparente di segnale audio stereo.
Osserviamo che la codifica MPEG-1 di segnale stereo puó avvalersi di una codifica congiunta dei due canali
audio, 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 é sensibile all’intensitá del segnale e al
bilanciamento di potenza fra i canali destro e sinistro. Pertanto, é possibile approssimare la coppia dei segnali che
costituiscono il segnale stereo codificando un unico segnale di intensitá, generato come somma dei segnali destro e
sinistro, e trasmettendo indipendentemente i fattori di scala relativi ai due canali.
4.2 Indichiamo
con xn , n = 0, · · · N − 1 una sequenza di lunghezza finita N . La trasformata MDCT di tale sequenza é definita come:
XkM DCT =
N
−1
X
„
xn cos
n=0
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 é definita
come
DCT
x̂IM
=
n
2
N
„
N/2−1
X
n=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
la MDCT a sequenze sovrapposte del 50 % e calcolando le relative IMDCT, é possibile ricostruire la sequenza xn mediante tecniche di Overlap
and Add.
4.3 I coefficienti MDCT di ciascuna sottobanda sono divisi in gruppi, ciascuno dei quali corrisponde approssimativamente ad una banda critica; ai
diversi gruppi sono quindi applicati passi di quantizzazione differenti, cosi’ da controllare il rapporto segnale rumore in funzione dell’andamento
della masking threshold.
4.4 La quantizzazione non uniforme é realizzata ricorrendo a un compandor (η(x) = x3/4 ).
34
CAPITOLO 4. CODIFICA DEL SEGNALE AUDIO
I dati relativi a 384 o 1152 campioni sono organizzati in trame audio di lunghezza variabile, dotate di informazioni
aggiuntive di sincronizzazione, protezione (CRC) e descrizione del contenuto (titolo, autore, copyright, etc.).
4.3
Lo standard MPEG-2 Audio
Lo standard MPEG-2 Audio prevede tanto algoritmi di codifica compatibili con quelli definiti da MPEG-1 (MPEG-2
Forward/Backward Compatible), quanto algoritmi di codifica avanzati (MPEG-2 Advanced Audio Coding). Tali
algoritmi sono analoghi a quelli definiti in MPEG-1, ma con alcuni raffinamenti, principalmente riferibili a:
• aumento della risoluzione in frequenza: MPEG-2 AAC opera una codifica a trasformata MDCT che conduce
ad una risoluzione massima in frequenza di 1024 componenti spettrali, che sono raggruppate tipicamente in 43
bande cui vengono assegnati passi di quantizzazione (scale factors) differenti;
• maggiore flessibilitá di adattamento della finestra temporale alle caratteristiche del segnale, che puó variare da
2048 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 AAC
introduce una tecnica di adattativitá temporale della quantizzazione che prende il nome di Temporal Noise
Shaping4.5.
Lo standard MPEG-2 Backward Compatible offre compatibilitá all’indietro, nel senso che consente ad un codificatore MPEG-2 di generare un bit-stream decodificabile da un decodificatore MPEG-1, e lo standard Forward
Compatible offre compatibilitá in avanti, nel senso che consente ad un decodificatore MPEG-2 la decodifica di un
bit-stream MPEG-1.
Un aspetto importante dello standard MPEG-2 Audio é che esso consente una efficiente rappresentazione di audio
di tipo multicanale. Tale audio puó essere codificato per una decodifica simultanea, al fine di generare un contesto
audio multisorgente, o per consentire il trasporto di piú traccie audio alternative, per esempio relative a diverse lingue
di riproduzione. Il contesto multicanale tipico di applicazioni di cinema e HDTV é stato standardizzato in ambito
ITU-R, e e prevede un formato p/q basato su p canali frontali e q canali posteriori. Il formato piú diffuso e’ il
formato 3/2 stereo, con un ulteriore canale opzionale, detto di Low Frequency Enhancement (LFE o subwoofer), che
estende 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 di
garantire la compatibilitá all’indietro verso la decodifica MPEG-1 di segnali stereo. Pertanto, in fase di codifica i
canali sono mixati al fine di ottenere i due canali destro e sinistro di un sistema stereo tradizionale (2/0). Questi
ultimi sono codificati in modo da consentire la decodifica da parte di un deocodificatore MPEG-1. I rimanenti
tre canali sono poi codificati in modo tale che un decodificatore MPEG-2 possa ricostruire i 5 canali del sistema
3/2. E’ interessante osservare che quando si opera la compressione su canali miscelati, si sfruttano i fenomeni di
mascheramento presenti in tali canali. Quando poi, a partire da questi, sono ricostruiti i 5 segnali del sistema 3/2, é
possibile che nel segnale ricostruito all’uno o all’altro dei canali tali mascheramenti non siano piú presenti, e quindi
sul segnale decodificato sia presente una sensibile distorsione. Il mixaggio dei canali a monte della codifica deve
tenere conto di tali fenomeni di unmasking.
4.5 La
tecnica di Temporal Noise Shaping consente di rappresentare in modo compatto picchi transitori nel dominio del tempo utilizzando forme
di predizione nel dominio della frequenza, in modo duale a ció che avviene nel LPC.
4.4. LO STANDARD MPEG-4 AUDIO
4.4
35
Lo standard MPEG-4 Audio
Lo standard MPEG-4 Audio prevede alcuni aspetti innovativi rispetto agli standard di codifica audio precedenti, che
riflettono i principi che hanno ispirato l’attivitá di standardizzazione ISO-MPEG-4. Li richiamiamo qui brevemente.
Integrazione di audio sintetico e naturale
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 flessibilitá di rappresentazione,
e il decodificatore puó in linea di principio essere costituito anche da un sistema MIDI o da un sistema Text-toSpeech. La sintassi consente di rappresentare suoni e musiche mediante un linguaggio simbolico detto Structured
Audio 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 fissati
da appropriate raccomandazioni, ovvero contrattati all’inizio della sessione di comunicazioni, ovvero codificati in un
appropriato formato per applicazioni di memorizzazione.
Supporto di codifica di suoni naturali per bit-rate variabile fra 2 Kb/s e 64 Kb/s
Lo standard consente di selezionare i codificatori di suoni naturali in funzione delle applicazioni, e offre diverse
sintassi di codifica. Puó quindi offrire tanto una sintassi per codifica vocale a basso bit-rate basata su codec CELP
quanto una sintassi per codifica audio compatibile con lo standard MPEG-2 AAC. Come vedremo lo standard MPEG4 AAC che rappresenta il profilo di codifica per l’audio ad alta qualitá é suggerito dal 3GPP per servizi di streaming
nell’UMTS.
Supporto di codifica robusta rispetto agli errori di trasmissione
Per motivi storici, lo standard MPEG-4 audio é stato il primo sviluppato tenendo conto delle possibilitá di diffusione di
audio su canali affetti da errori di trasmissione quali quelli radiomobili. Esso prevede che il bit-stream goda di proprietá
di Resilience, ovvero sia quanto possibile robusto rispetto ad errori sui singoli bit, quando essi siano localizzati. Inoltre
lo standard diverse funzionalitá di protezione mediante codici a correzione o rivelazione d’errore, eventualmente
applicabili in modo mirato a diverse componenti del bit-stream. Rispetto ai casi di protezione dell’informazione
discussi per il segnale vocale, si presenta l’importante differenza che il carico della protezione é affidato alla coppia
codificatore/decodificatore di sorgente.
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.
36