Riassunto tesi di Elvio Magliocca

Titolo

"Metodi e sperimentazione prototipale per l'elaborazione
del segnale audio multicanale in ambienti eterogenei"

 

La tesi tratta l'aspetto innovativo nel campo dell'audio multicanale; con multicanale qui si intendono quei formati audio che supportano un numero superiore di canali rispetto al mono e allo stereo.
Sono state sviluppate differenti implementazioni di formati audio multicanali; questi formati si distinguono per metodo di codifica, applicazione e metodo di compressione/riduzione, se quest'ultimo è impiegato.
Due categorie principali di differenziazione di formati audio sono i formati di trasmissione e i formati di file; i tipi di formati audio multicanali qui considerati sono relati a entrambi i campi, e vengono tuttora utilizzati in trasmissioni, codifiche su media (supporti digitali), applicazioni hardware e software.
Un altro tipo di differenziazione applicata nello studio di questi file è il metodo di codifica; essi generalmente vengono distinti tra file audio con codifiche di tipo PCM (Pulse Code Modulation, sistemi multibit) e codifiche differenziali (sistemi a 1-bit). Il metodo impiegato in questi nuovi formati, richiede lo studio di un modello psicoacustico e la codifica di algoritmi basati su di esso. Inoltre utilizzano differenti tecniche di compressione o di riduzione, che nascono dal concetto base delle tecniche di tipo Lossless (senza perdita di dati, uso di ridondanze) e Lossy (perdita di dati).
L'innovazione della ricerca, consiste nello studio di queste metodologie di codifica, nel confronto tra esse e nella conclusione di una possibile transcodifica tra i formati considerati.
La tesi inizia con un'introduzione sull'audio digitale e i formati di file audio multicanali, con codifiche di tipo PCM e sistemi differenziali. Vengono presentati degli esempi, sia per la codifica PCM, Sound Designer II e AIFF (Audio Interchange File Format), sia per il sistema di codifica differenziale, DSD (Direct Stream Digital), presentata come un'alternativa al PCM multicanale.
Di seguito ci si introduce nella parte principale della tesi. Qui viene trattata la parte relativa agli strumenti di base per codifiche audio multicanali di alta qualit‡, come il modello psicoacustico, il metodo di quantizzazione e di codifica, l'analisi/sintesi Filterbank, la compatibilit‡ con altri sistemi di riproduzione.
Fin dai primi sviluppi dell'audio multicanale, tre tipi di formati sono stati tra i più concorrenziali, cercando tutti di divenire lo standard di impiego, sia in europa che oltre continente. Questi tre formati si differenziano tra loro, oltre che per qualità, per caratteristiche tecniche, e sono:

DTS : Digital Theater System (USA)

AC-3 : Dolby Digital (USA)

MPEG : Moving Picture Expert Group (EUROPE)

Ognuno di essi riproduce un formato di 5.1 canali, cioè un canale sinistro e uno destro frontali, uno centrale frontale, e due canali posteriori di Surround, più un canale per effetti di bassa frequenza, denominato Lower Effect Channel (LFE). I 5 canali riproducono audio con un'ampiezza di banda di frequenza da 20Hz a 20kHz, mentre il .1 (LFE) riproduce audio con un'ampiezza di banda di frequenza in genere da 3Hz a 120Hz.
Un sistema di codifica che si basa su un modello psicoacustico viene definito di tipo perceptual. L'idea base di questa codifica perceptual è nascondere il rumore di quantizzazione al di sotto di una soglia d'ascolto dipendente dal segnale. La più rilevante caratteristica in psicoacustica è masking, cioé il possibile effetto di mascheramento nel dominio delle frequenze. Un segnale debole è completamente mascherato attaverso un mascherante che è più alto e ha un contenuto simile in frequenza.
La struttura base di un codificatore perceptual è composta da:
- un filterbank utilizzato per decomporre il segnale in input entro sottocampionate componenti spettrali (time/frequency domain). Insieme al filterbank corrispondente del decodificatore esso forma un sistema di analisi/sintesi.
- un modello perceptual, che utilizza il segnale in input nel dominio del tempo o in output di un'analisi filterbank, per computare una stima della soglia di mascherazione attuale tramite regole conosciute dalla psicoacustica.
- quantizzazione e codifica delle componenti spettrali con lo scopo di mantenere il rumore, introdotto dalla quantizzazione, al di sotto della soglia di mascherazione. Questo passo è fatto in molti modi differenti, dipendenti dall'algoritmo, da semplice block-companding a sistemi di analysis-by-synthesis utilizzando compressione addizionale senza rumore.
- una formattazione per assemblare il codice in un flusso di bit chiamato bit stream, il quale tipicamente consiste di coefficienti di quantizzazione e codifiche spettrali e alcune informazioni aggiuntive.

Confronto delle strategie di codifica

Il motivo dello sviluppo degli algoritmi per i formati DTS, AC-3 e MPEG era aumentare la qualità di riproduzione dell'audio multicanale. Scopo di ognuno di essi é un'alta riduzione del data rate; questo viene attuato tramite: studio di un modello psicoacustico, analisi/sintesi con filterbank, bit allocation adattativa, un sistema di compatibilità per effettuare downmix, e uso di tecniche avanzate come l'accoppiamento di canali in alte frequenze (coupling) o crosstalk dinamico, nel caso di bit rate molto ridotti. Tutti e tre gli algoritmi impiegano questi metodi di compressione/riduzione (compressione fa uso di ridondanze, riduzione elimina ciò che é considerato irrilevante), ognuno con implemetazione differente.
Prima considerazione da fare é che DTS impiega un algoritmo, nominato coherent acoustics, che si basa su una tecnica di codifica di tipo Lossless, cioé fa uso di ridondanze per ridurre il data rate; mentre AC-3 e MPEG impiegano una codifica di tipo Lossy, cioé eliminano informazione dal segnale sorgente considerata irrilevante con una minore qualità in riproduzione, ma un'alto rapporto di compressione.
Frequenze di campionamento diverse possono essere supportate dai differenti formati, DTS ha un range che va da 8kHz a 192kHz, AC-3 campiona a frequenze standard di 32, 44.1 e 48kHz, mentre MPEG può essere implementato a frequenze minori (1/2 di quelle standard) per bit rate molto bassi, oppure a quelle standard. Differenti bit rate variabili sono inoltre impiegati da ognuno dei formati a seconda dell'impiego, DTS ha un range da 32kbit/s a 4096kbit/s, AC-3 varia da 32kbit/s a 640kbit/s, mentre MPEG varia da 48kHz a 1152kbit/s, per questo tipo di formato esistono differenti implementazioni con reciproci aumenti di costi all'aumentare della qualità di codifica. Naturalmente differenze esistono anche nella lunghezza delle parole di risoluzione e di precisione di calcolo, DTS computa la codifica con parole a una precisione di 40bit e una risoluzione da 16 a 24bit (fino a 138dB di dynamic range), nel caso impieghi una codifica floating-point essa può arrivare fino a 32bit di risoluzione, con il dovuto aumento di data rate; AC-3 computa la codifica a 24 bit e può effettuare risoluzioni fino a 20bit, per MPEG viene usata una risoluzione solo di 16bit e una computazione a 24bit, bisogna evidenziare il fatto che la codifca attuata da questi ultimi due algoritmi é di tipo block companding (compressione block floating-point) e quindi permettono un dynamic range superiore al PCM con stessa qualità di risoluzione, mentre DTS impiega una codifica differenziale.
Filterbank differenti vengono utilizzati, per il medesimo scopo, a suddividere il segnale in ingresso in sottobande di frequenza di uguale ampiezza, da tutti e tre gli algoritmi. Il numero di tali sottobande dipende dalla frequenza di campionamento del segnale sorgente, per frequenze inferiori o uguali a 48kHz, DTS e MPEG suddividono il segnale in 32 sottobande portando così una risoluzione di frequenza di 750Hz, mentre per AC-3 la risoluzione di frequenza di default é di 93.75Hz, questi valori sono modificabili in concomitanza con il bit rate. Per quanto DTS e MPEG impieghino medesimo numero di sottobande essi trattano un modello differente di codifica portando ad un numero di campioni nel frame differente. Il frame DTS può contenere da 256 a 4096 campioni per canale, MPEG può contenere fino a 1152 campioni per canale e il frame AC-3 può arrivare a 1536 campioni per canale; tutto questo porta a differenti bit rate con dimensione differente del buffer al decoder.
Per ciò che riguarda il modello psicoacustico, tutti e tre gli algoritmi impiegano un'analisi del segnale sorgente per determinare informazioni rilevanti, lo scopo di questo é rimuovere bit dalla rappresentazione del segnale in maniera che sia inaudibile; dovuto alle proprietà di mascherazione di frequenza la migliore rappresentazione dell'audio é nel dominio delle frequenze. La tecnologia qui adottata si basa sul principio che non é quali bit devono essere rimossi, ma bensì, quali bit devono essere portati via e quali allocati, e in che modo. Tutto questo porta ad una forma di bit allocation adattativa che opera sulla singola sottobanda. In questi formati multicanali la routine di bit allocation opera su tutti i canali codificati, e adatta con il passare del tempo, frequenza e canali, per ottimizzare la qualità dell'audio, con l'impiego di una comune bit pool e del modello di mascherazione si può allocare i bit ai canali in maniera più saggia, permettendo di ridurre il data rate, dato che tipicamente 5 programmi di canali richiedono 5 differenti data rate tra tutti loro.
Dopo un'analisi psicoacustica ne viene effettuata una sui transienti, questo porta gli algoritmi a cambiare la loro risoluzione di frequenza e di tempo in relazione al comportamento del segnale. Segnali audio a stato costante beneficiano di una risoluzione di frequenza fine, mentre segnali transienti richiedono una più fine risoluzione di tempo. Non é possibili atttivare contemporaneamente alta risoluzione di tempo e di frequenza, quindi bisogna raggiungere un compromesso.
Differenti sono gli aprocci impiegati per la codifica delle parti rilevanti del segnale; il processo utilizzato da DTS coinvolge un metodo di codifica adattativo-predittivo tipo ADPCM, dove si impiega una predizione lineare adattativa su tutti i coefficienti ottimali calcolati per tutti i tipi di sottobande di campioni. AC-3 fa uso di un inviluppo spettrale, cioé ogni coefficiente indivuale é codificato entro un esponente e una mantissa e l'insieme di questi esponenti forma una rappresentazione dello spettro del segnale completo, questo spettro viene codificato in una forma differenziale in frequenza. MPEG utilizza una metodologia di codifica che cambia a seconda del livello impiegato, basata su una codifica a blocchi; da una codifica lineare a una codifica con tabelle di codici di Huffman, con l'impiego di fattori di scala e compattazione di triple di parole in un'unica parola di codice.
Tutti i formati hanno proprietà di effettuare downmix (un missaggio verso il basso), cioé la conversione dei 6 canali di trasmissione entro il formato stereo e mono. Per DTS funzioni di donwmix sono incluse nel decoder, il quale include coefficienti di mix preinseriti, ma modificabili da coefficienti inseriti nel bit stream, questo permette al programma una grande flessibilità nel determinare l'ottimo mix di parametri, ma un decoder più complesso. In AC-3 il downmix é permesso con la codifica di tutti i canali entro una rappresentazione nel dominio delle frequenze. Solo il downmix dei segnali sono trasformati nel dominio del tempo, questa tecnica riduce la complessità del decoder 2 canali significantemente, dato che la porzione più complessa dell'algoritmo, l'inversa filterbank, viene rappresentata solo su due canali. Comparandola con la compatibilità di tipo matriciale, questa tecnica porta ad un incremento modesto nell'ammontare di memoria del buffer di input (rispetto a solo due canali di dati di input bufferizzati di un decoder due canali). C'è inoltre bisogno di rappresentare bit allocation su 5 canali invece che solo due. Questo incremento in complessità é pensato essere uno scambio eccellente nel provvedere un singolo segnale il quale può ugualmente servire un'ampia varietà di decoder con differente numero di canali di riproduzione e differenti ottimizzazioni di donwmix. Dato che AC-3 distribuisce tutti i canali al decoder codificati discretamente, il decoder ha piena flessibilità a effettuare downmix dei canali nel modo più appropriato alla situazione d'ascolto. MPEG impiega un approccio di tipo matriciale, codificando informazione di downmix nei canali sinistro e destro, ma questo vincola grandemente il disegno multicanale; quindi é possibile anche provvedere in aggiunta al bit stream multicanale le due codifiche monofoniche, il vantaggio é che non é imposto nessun tipo di vincolo, lo svantaggio é l'incremento di capacità di dati richiesto.
Sebbene queste tecniche di codifica sono molto potenti, ci sono casi che richiedono un'ulteriore riduzione dei dati (bit rate molto bassi). Quando questo accade DTS e AC-3 applicano una tecnica nominata coupling, cioé la codifica di una somma di sottobande di segnale di alte frequenze di 2 o più canali audio. A frequenze audio alte (oltre 2kHz) l'orecchio é fisicamente inabile a scoprire cicli individuali della forma d'onda audio, e invece risponde all'inviluppo della forma d'onda. Direzionalità é determinata attraverso il ritardo di tempo inter-aurale dell'inviluppo del segnale, e attraverso la risposta di frequenza percepita la quale é affetta attraverso l'oscurazione della testa con le orecchie. Coupling prende vantaggio dal fatto che l'orecchio non é abile a scoprire indipendetemente la direzione di due segnali ad alta frequenza i quali sono molto vicini spaziati in frequenza. Il comportamento di MPEG é differente, però anch'esso basato sulle caratteristiche di spazializzazione dell'orecchio umano. Secondo il modello di ascolto biauricolare, é possibile determinare la porzione del segnale stereofonico irrilevantemente rispetto alla percezione spaziale della presentazione stereofonica. I componenti del segnale stereo irrilevanti non sono mascherati, ma non contribuiscono alla localizzazione della sorgente del suono; essi sono ignorati nel processo biauricolare del sistema auditorio umano. Perciò, i componenti irrilevanti di ogni segnale stereo possono essere riprodotti da qualsiasi altro altoparlante, senza influenzare l'impressione stereofonica. Questo può essere fatto indipendentemente per ogni numero di regioni di frequenza. Questo fenomeno permette l'uso di un metodo di riduzione di dati, denominato CrossTalk dinamico, per audio multicanale, nel quale le componenti irrilevanti sono copiate ad altri canali.
Parte rilevante di un confronto tra i tre algoritmi é la definizione di una possibile transcodifica tra essi, senza dovere ritornare al PCM sorgente. E' bene tenere in considerazione che i formati AC-3 e MPEG, facenti uso di una tecnica di tipo Lossy, portano a una perdita di informazione irrecuperabile; anche se ritenuta irrilevante essa, é pur sempre udita dall'ascoltatore; più per il formato MPEG, ritenuto per questo motivo di discreta qualità, mentre in minore misura per AC-3 cosiderato di buona qualità soggettiva. DTS impiega invece una tecnica di tipo Lossless il che fa uso di ridondanze e non comporta perdita di informazione. Naturalmente, i primi due formati hanno il vantaggio di effettuare una grande compressione, fino a 14 volte. E' lecito quindi pensare, che una transcodifica da MPEG o AC-3 verso DTS comporti, se ammissibile, una qualità audio scadente rispetto a quella supportata dal formato in questione. E' possibile invece, prendere in considerazione una conversione dal formato DTS verso i formati AC-3 e MPEG.
Come si é visto sopra, tutti gli algoritmi utilizzano lo stesso metodo teorico: lo studio di un modello psicoacustico, analisi/sintesi con filterbank, bit allocation adattativa, un sistema di compatibilità per effettuare downmix, e uso di tecniche avanzate come l'accoppiamento di canali in alte frequenze (coupling) o crosstalk dinamico. Ma una implementazione del codice differente.
Non é possibile effettuare una conversione diretta dal bit stream di DTS a AC-3 o MPEG perché questi ultimi impiegano un metodo di rilevazione del modello psicoacustico differente dal primo, e tra loro. Cioé ognuno di essi, per quanto simile, impiega una codifica differente delle parti rilevanti del segnale. Si può pensare la possibilità di effettuare una conversione a livello di campioni quantizzati, cioé si applica, non completamente, la decodifica del formato DTS a recuperare le sottobande differenziali del segnale di ogni canale audio, a questo punto due casi sono possibili, o si impiega la trasformata inversa del filterbank a recuperare lo spettro del segnale, in questo modo si può processare il segnale audio nuovamente con le tecniche di MPEG e AC-3, oppure; si effettua la codifica dalle sottobande di campioni ripristinate. Teoricamente, se si impiegano risoluzioni di tempo e di frequenza compatibili tra il formato sorgente e quello finale, questo é possibile, non é però garantita una qualità audio soggettiva allo stesso livello di una coversione effettuata dal PCM sorgente. Il problema esiste anche nella possibile transcodifica tra il formato AC-3 e MPEG.
Bisogna anche considerare che essi impiegano una dimensione del frame differente, anche in casi di stessa frequenza di campionamento e risoluzione di campioni, questo comporta l'impiego di un buffer di dimensioni abbastanza grande da permettere l'immagazzinamento dei campioni da trattare.
Ad oggi non esistono ancora applicazioni software che effettuano codifiche dal formato PCM a quelli qui trattati, ma solo applicazioni di tipo hardware. Tra quest'ultime solo alcune effettuano codifiche di più formati, tipo MPEG e AC-3, queste però solo dal sorgente PCM e non da una transcodifica tra essi. Tutto questo ci fa pensare che se esiste la possibilità di un'implementazione di transcodifica hardware o software essa é molto complessa.