L’algoritmo di compressione del sistema dts

Reso famoso dalla sua utilizzazione in film di grande successo (il primo dei quali è stato, nel 1993, “Jurassic Park”), e tuttora impiegato in molte nuove produzioni cinematografiche, il sistema DTS Digital Surround sviluppato dalla Digital Theater Systems, Inc., ha avuto scarsa diffusione (e peraltro solo in lingua inglese, giapponese e tedesca) sui supporti per la visione domestica di film con audio digitale (DVD e laserdisc) a causa della definitiva affermazione del sistema Dolby Digital AC-3. Tuttavia rispetto a tale sistema, il DTS può vantare una qualità sonora che molti giudicano migliore e che spiega sia la sua notevole diffusione nelle sale cinematografiche sia la sua utilizzazione per registrazioni musicali multicanale di alta qualità riversate anche sui Compact Disc. Per quanto riguarda quest’ultimo tipo di applicazione, il sistema si può considerare una valida alternativa alla stereofonia e potrebbe incontrare un certo successo a differenza di quanto accadde con la quadrifonia negli anni Settanta.

Fig. 1. Bit rate di un canale 192 kHz/24 bit prima e dopo la codifica DTS.

Fig. 1. Bit rate di un canale 192 kHz/24 bit prima e dopo la codifica DTS.

Nel giugno di quest’anno è stato pubblicato il libro bianco “An Overview of the Coherent Acoustics Coding System” [1] che illustra il processo di compressione del segnale utilizzato nel DTS e fornisce alcuni risultati di misure effettuate per valutare le prestazioni del sistema. Attraverso questo articolo Digital Video home theater intende fare partecipi i propri lettori del contenuto di tale libro, in modo da rendere più approfondita la loro conoscenza del sistema DTS che, come vedremo, presenta diversi aspetti di notevole interesse. Tanto per cominciare, facciamo un piccolo chiarimento riguardo al titolo del libro bianco, nel quale, come avrete notato, non compare l’acronimo DTS bensì, in sua vece, il sistema di codifica Coherent Acoustics. Il motivo risiede nel fatto che, facendo un parallelismo con il Dolby Digital AC-3, si può creare una corrispondenza tra DTS e Dolby (nel senso che sono entrambi nomi che individuano delle aziende) e tra Coherent Acoustics e AC-3 (che sono invece nomi di algoritmi di compressione). A tal proposito, può essere anche utile ricordare che il nome completo del sistema di codifica è DTS Digital Surround e che se attualmente ci si può limitare a chiamarlo DTS è perché la Digital Theater Systems, a differenza della Dolby Laboratories, non ha al momento rilasciato altri sistemi di codifica e quindi non si può creare ambiguità. In altri termini, dire sistema Dolby e basta non avrebbe significato perché di sistemi Dolby ne esistono diversi (A, B, C, S, Surround, Digital, ecc.), mentre dire sistema DTS e basta ha senso in quanto è sufficiente per individuare il DTS Digital Surround. Bene, dopo questo voluto indugio su argomenti di facile lettura, che ha il duplice scopo di riscaldare un po’ i muscoli (la materia cerebrale in questo caso) prima dello sforzo (che ho cercato in tutti i modi, comunque, di rendere molto limitato) e di conseguire il risultato di indurre, sia pure con l’inganno, almeno qualche lettore ad andare un po’ oltre il titolo nella lettura di questo articolo, entriamo un po’ più nel vivo dell’argomento.

Un algoritmo molto flessibile

Diciamo subito che l’algoritmo di compressione Coherent Acoustics dimostra le sue ambizioni per quanto riguarda la qualità sonora per il fatto che può accettare segnali d’ingresso con frequenza di campionamento fino a 192 kHz (anche se incrementando la complessità del codificatore con l’aggiunta di repliche del modulo base) e campioni fino a 24 bit. L’algoritmo è quindi in grado di gestire anche i nuovi formati audio che permettono di andare ben oltre la qualità offerta dal Compact Disc, il quale, come è noto, è caratterizzato da una frequenza di campionamento pari a 44,1 kHz e da campioni a 16 bit. La conseguenza di quanto appena detto è che, se l’algoritmo di compressione, nonostante venga normalmente impiegato nella modalità di funzionamento “con perdita” per quanto riguarda i dati digitali (i quali, dopo la decompressione, così come nei sistemi Dolby Digital e MPEG2, non possono ritornare identici a quelli di partenza), riuscisse ad essere “senza perdita” dal punto di vista percettivo (e quindi a non far sentire il suo intervento in sede di ascolto), il risultato sonoro finale fornito dal DTS potrebbe essere migliore di quello ottenibile con la normale tecnica di registrazione impiegata nei Compact Disc (qualora, ovviamente, il flusso da codificare sia in un formato audio di qualità superiore). Questa circostanza viene alquanto rimarcata dagli ideatori del DTS, per i quali uno dei pregi del sistema è la possibilità di utilizzare la compressione non per ridurre la quantità di dati rispetto al CD ma per migliorarne la qualità sonora. Questo è ciò che emerge anche dall’analisi della fig. 1 che mostra nella parte superiore l’effetto di una tradizionale tecnica di compressione ed in quella inferiore la possibilità, offerta dal DTS, di mantenere inalterata la quantità di dati rispetto al CD gestendo però un formato audio 192 kHz/24 bit. Quest’ultimo, come evidenziato graficamente nella figura, qualora non fosse compresso darebbe luogo ad un flusso di dati numerici circa sei volte e mezzo maggiore di quello del CD. Infatti per ciascun canale il flusso sarebbe pari a 192.000×24=4,608 Mbit/s contro i 44.100×16=0,706 Mbit/s del Compact Disc. In effetti, con un fattore di compressione pari a 6,5, e quindi non particolarmente spinto, non si può escludere che, nella modalità d’impiego del DTS appena citata, gli effetti all’ascolto della compressione siano poco avvertibili e comunque non tali da annullare il vantaggio derivante dall’eccellenza del formato audio d’ingresso, il migliore fino ad oggi definito per l’audio digitale. A parte questo eventuale modo d’impiego, si può comunque affermare in generale che una delle caratteristiche dell’algoritmo Coherent Acoustics è la flessibilità, intesa come la capacità di gestire in ingresso praticamente tutti i formati audio attualmente in uso o proposti.  La normale modalità d’impiego del DTS è comunque quella che porta a far entrare su una normale pista stereofonica PCM nel formato audio 44,1 kHz/16 bit (che quindi può essere inserita, oltre che in un DVD, anche in un CD o in un laserdisc) 5.1 canali a 20 bit, il che corrisponde ad un fattore di compressione all’incirca pari a 3, e quindi pari a circa un terzo di quello del Dolby Digital. Quest’ultimo, infatti, avendo un bit rate d’uscita pari a soli 384 kbit/s, comprime il segnale con un fattore superiore a 9. La notevole qualità sonora che generalmente viene riconosciuta alle colonne sonore codificate in DTS può quindi spiegarsi con il basso fattore di compressione e con la gestione di un formato audio a 20 bit, migliore quindi di quello del CD. Il prezzo che viene pagato a fronte di questo vantaggio è la rinuncia all’audio multilingua nel caso di riversamento su DVD e, nel caso dei Laserdisc, la necessaria eliminazione della colonna sonora PCM che rende non più disponibile l’audio digitale su lettori privi di decodificatore DTS.

Fig. 2. Area di mascheramento corrispondente ad un singolo tono mascherante.

Fig. 2. Area di mascheramento corrispondente ad un singolo tono mascherante.

Principi di funzionamento

I principi su cui si basa il funzionamento del codificatore Coherent Acoustics sono sia di tipo percettivo che di tipo oggettivo. Per quanto riguarda i principi del primo tipo, si può affermare che sono propri di tutte le moderne tecniche di compressione digitale del segnale audio e che consistono nello sfruttare ai fini della compressione sia i fenomeni di mascheramento che, sotto certe condizioni, ingannano l’udito umano, sia la soglia di udibilità, che fissa alle varie frequenze il livello minimo che deve avere un tono perché venga percepito. Più precisamente, gli studi di psicoacustica relativi ai fenomeni di mascheramento hanno evidenziato che a livello percettivo un suono può nascondere la presenza di un altro suono in misura crescente con la differenza di intensità e decrescente con la differenza di frequenza. Ciò significa, ad esempio, che se due suoni hanno frequenze molto diverse, è necessario che quello più forte abbia una intensità molto maggiore di quello più debole affinché quest’ultimo non risulti avvertibile all’ascolto. Viceversa, se le frequenze differiscono di poco può essere sufficiente una differenza d’intensità non elevata perché l’orecchio umano non si accorga della presenza del suono più debole. Quanto fin qui detto a parole risulta forse di più immediata comprensione se si fa uso della fig. 2 nella quale, nell’intorno di un singolo tono, che rappresenta il tono mascherante, è stata tracciata un’area triangolare che contiene tutte le possibili coppie (ampiezza, frequenza) dei toni che risulterebbero mascherati. Come si può osservare il tono mascherante divide l’area triangolare in due sotto-aree di diversa grandezza. Più precisamente la sotto-area di maggiori dimensioni è quella corrispondente alle frequenze superiori a quella del tono mascherante, il che significa che tali frequenze sono maggiormente mascherate rispetto a quelle al di sotto della frequenza del tono mascherante. Sulla curva che fornisce la soglia di udibilità dell’orecchio umano, non c’è invece molto da dire se non che la sensibilità dell’orecchio umano diminuisce alle basse e alle alte frequenze. In fig. 3 sono rappresentate contemporaneamente la soglia d’udibilità e l’area di mascheramento cumulativa in presenza di vari toni mascheranti. Come si può osservare, tre toni risultano inudibili a causa del mascheramento da parte degli altri toni, mentre altri due toni, collocati nella regione delle alte frequenze, non vengono percepiti perché di livello inferiore alla soglia di udibilità. Per quanto riguarda invece i principi di funzionamento oggettivi del codificatore Coherent Acoustics, ciò che si cerca di sfruttare è principalmente la correlazione a breve termine che possiede statisticamente il segnale musicale e vocale in ristretti intervalli di frequenza. È importante notare che quest’ultimo principio di compressione è del tipo “senza perdita”, nel senso che mira a rappresentare il segnale con una codifica più efficiente, senza però compromettere la sua ricostruzione dopo la decompressione. Dal momento che l’algoritmo Coherent Acoustics può operare anche con valori del fattore di compressione molto bassi, man mano che si riduce tale fattore l’algoritmo provvede a utilizzare sempre meno i principi di compressione percettivi fino ad arrivare ad una codifica senza perdita nella quale la compressione viene fatta utilizzando esclusivamente i principi oggettivi.

Fig. 3. Soglia di udibilità e area cumulativa di mascheramento corrispondente ad una pluralità di toni mascheranti.

Fig. 3. Soglia di udibilità e area cumulativa di mascheramento corrispondente ad una pluralità di toni mascheranti.

Struttura del codificatore

Come risulta da quanto fin qui detto, per mettere in pratica i principi di funzionamento descritti nel precedente paragrafo occorre innanzitutto effettuare delle analisi del segnale su ristretti intervalli di frequenza. All’interno di questi intervalli si potranno riscontrare infatti alquanto spesso periodicità a breve termine che consentono l’applicazione del principio che abbiamo definito oggettivo. Inoltre, sempre all’interno di tali intervalli, si potrà confrontare il livello delle componenti in frequenza del segnale con la soglia di udibilità e con l’area di mascheramento cumulativa applicando così i principi percettivi. Nel diagramma a blocchi di fig. 4, che fornisce la struttura del codificatore Coherent Acoustics, se si eccettua il buffer d’ingresso sul quale torneremo tra poco, il primo blocco funzionale che si incontra è quindi costituito da un banco di filtri polifase che suddivide l’intera banda audio in 32 sotto-bande di uguale ampiezza. Il risultato del filtraggio viene quindi inviato sia ad un blocco di analisi oggettiva e percettiva (blocco che riceve anche i dati digitali non filtrati provenienti dal buffer d’ingresso) sia ad un blocco che effettua invece su ciascuna sotto-banda una codifica ADPCM, ossia una codifica PCM adattativa differenziale. Questo tipo di codifica, come vedremo meglio nel seguito, automaticamente riduce il numero di bit con cui codificare quando vi sono nel segnale correlazioni a breve termine e quindi rappresenta un mezzo attraverso il quale viene applicato il principio di compressione oggettivo. Il mezzo utilizzato invece per applicare i principi di compressione percettivi consiste nell’opportuna scelta del numero di bit con il quale effettuare la codifica ADPCM in ciascuna sotto-banda. Infatti più è elevato tale numero, più verrà conservata traccia delle componenti di minore ampiezza nella sottobanda considerata. È evidente, quindi, che sarà necessario codificare con un numero rilevante di bit, rinunciando a conseguire sensibili vantaggi in termini di compressione del segnale, nel caso in cui le suddette componenti, pur essendo di piccola ampiezza, possono comunque essere percepite (in quanto al di fuori dell’area di mascheramento e al di sopra della soglia di udibilità). Per quanto appena detto, è necessario che il blocco ADPCM riceva indicazioni dall’esterno circa il numero di bit con cui effettuare la codifica in ciascuna sotto-banda, ed infatti nel diagramma del codificatore si vede che tale blocco è controllato sia dal corrispondente blocco di analisi oggettiva e percettiva, sia da un blocco che gestisce globalmente il numero di bit con i quali codificare. L’ultimo blocco è infine il multiplexer che ricompone in un flusso seriale organizzato in frame i pacchetti di bit uscenti dai codificatori di ciascuna sotto-banda e di ciascun canale. Vediamo ora un po’ più in dettaglio i blocchi che compongono il codificatore.

Fig. 4. Diagramma a blocchi del codificatore Coherent Acoustics.

Fig. 4. Diagramma a blocchi del codificatore Coherent Acoustics.

Il buffer di analisi

Il numero di campioni PCM d’ingresso che vengono immagazzinati nel buffer di analisi, ossia il numero di campioni sui quali il codificatore opera per produrre una sequenza di bit codificati in uscita, costituisce un parametro che influisce sensibilmente sul comportamento del codificatore e può assumere cinque possibili valori (256, 512, 1024, 2048 e 4096). I valori più elevati consentono di ottenere fattori di compressione più elevati, sia pure a prezzo di un comportamento non ottimale nei transienti, e quindi sono utilizzati solo quando è necessario ridurre il più possibile il bit rate. Viceversa, quando interessa maggiormente la qualità della riproduzione piuttosto che una compressione molto spinta del segnale la dimensione del buffer di analisi viene opportunamente ridotta.

Il banco di filtri

Per frequenze di campionamento fino a 48 kHz la banda del segnale d’ingresso è suddivisa in 32 sotto-bande uniformi utilizzando banchi di filtri polifase. Per la frequenza di campionamento di 96 kHz, adottando la modalità di codifica descritta nel libro bianco, il numero di sotto-bande di fatto raddoppia in quanto vengono impiegati due codificatori Coherent Acoustics, ciascuno dei quali suddivide in 32 sotto-bande la metà della banda. Per la frequenza di campionamento di 192 kHz non vengono invece fornite indicazioni nel libro bianco né riguardo al numero di sotto-bande utilizzate né riguardo alla procedura di codifica che può essere impiegata. A seconda delle applicazioni si può poi scegliere di utilizzare filtri polifase di tipo Perfect o Non-Perfect Reconstructing (PR o NPR). I primi, come il nome lascia facilmente intuire, garantiscono una riproduzione più accurata ma, introducendo una minore attenuazione sulle bande filtrate, non consentono di ottenere fattori di compressione particolarmente elevati.

Il codificatore ADPCM

Questo blocco del codificatore Coherent Acoustics è realizzato secondo la struttura rappresentata in fig. 5, che si riferisce ad una singola sotto-banda e che in realtà contiene, come si può notare, un doppio codificatore ADPCM. Prima di descrivere la figura è utile premettere che la codifica ADPCM viene effettuata codificando in PCM la differenza tra il campione d’ingresso ed una sua stima effettuata sulla base dei campioni precedenti. Tale stima, che viene eseguita nel codificatore da un apposito codificatore ADPCM (quello situato in basso nella fig. 5), è tanto più accurata quanto più vi è correlazione tra campioni consecutivi del segnale e può essere ricalcolata dal decodificatore una volta che a quest’ultimo vengano forniti i valori dei cosiddetti “coefficienti predittivi” utilizzati per generarla. Ovviamente quando esiste una rilevante correlazione tra i campioni del segnale, la differenza tra il campione d’ingresso e la sua stima assume piccoli valori, la codifica PCM richiede conseguentemente pochi bit e diventa quindi possibile realizzare un risparmio di bit nonostante vi sia bisogno di utilizzare altri bit per comunicare al decodificatore i valori dei coefficienti predittivi. Nei momenti in cui la correlazione è alquanto debole, però, essendo la stima poco accurata, può accadere che nel codificare la differenza non si risparmi un numero di bit sufficiente a compensare almeno i bit aggiuntivi che è necessario trasmettere al decodificatore ed allora invece che un guadagno si realizzerebbe una perdita. Per evitare che ciò si verifichi, viene costantemente confrontata la varianza dei campioni d’ingresso, nella finestra corrispondente alla dimensione del buffer d’analisi, con la varianza della differenza tra campioni e stime. Quando quest’ultima varianza non risulta sufficientemente minore della prima, il codificatore decide di rinunciare alla codifica ADPCM e di effettuare la normale codifica PCM. Praticamente ciò viene ottenuto forzando a zero i coefficienti predittivi forniti al codificatore ADPCM posto nella parte superiore di fig. 5, ossia al codificatore che effettua la vera e propria codifica del segnale. In tal modo diventa nulla la stima effettuata dal codificatore e quest’ultimo si comporta quindi come un normale codificatore PCM. Ovviamente in questo caso i coefficienti predittivi non vengono inviati al decodificatore e quest’ultimo viene informato tramite un flag, denominato Pmode, della disabilitazione dell’ADPCM. Un altro parametro che viene considerato durante la codifica, è il cosiddetto fattore di scala che può essere calcolato mediando l’energia del segnale differenza nell’ambito della finestra temporale d’analisi. Poiché però in presenza di transienti che si collochino dopo l’inizio della finestra d’analisi l’applicazione di un unico fattore di scala per tutta la durata della finestra comporterebbe un fastidioso aumento del rumore prima che inizi il transiente stesso (fenomeno questo denominato pre-eco), viene utilizzato un parametro chiamato Tmode che può assumere solo 4 valori indicanti la posizione approssimativa del transiente all’interno della finestra d’analisi. Utilizzando questo parametro diventa possibile in fase di decodifica passare nel momento giusto dal fattore di scala corrispondente all’assenza del transiente a quello relativo alla presenza del transiente. Prima di chiudere la descrizione del codificatore ADPCM torniamo per un attimo sulla fig. 5 per chiarire che le informazioni collaterali (side information) che il blocco di stima fornisce al multiplexer affinché quest’ultimo le inserisca nel flusso di dati per il decodificatore, altro non sono che il flag Pmode, il parametro Tmode ed i fattori di scala.

Fig. 5. La codifica ADPCM nell’algoritmo Coherent Acoustics.

Fig. 5. La codifica ADPCM nell’algoritmo Coherent Acoustics.

Il blocco di analisi oggettiva e percettiva

Per quanto riguarda il modo di operare di questo blocco nell’esecuzione dell’analisi percettiva si rimanda a quanto detto nei paragrafi Principi di funzionamento e Struttura del codificatore. Per quanto riguarda invece l’analisi oggettiva, che comprende l’analisi dei transienti, il calcolo dei fattori di scala e l’applicazione dei criteri con i quali scegliere tra la codifica ADPCM e la normale codifica PCM, ci si può rifare al precedente paragrafo, in quanto il commento della fig. 5, contenente un diagramma a blocchi del codificatore ADPCM, ha richiesto l’anticipazione di tali argomenti.

Il blocco di gestione globale dei bit

Questo blocco introduce alcune correzioni rispetto alle indicazioni fornite dall’analisi percettiva, per tener conto degli effetti della codifica ADPCM impiegata. Inoltre, quando il fattore di compressione è molto elevato il blocco non altera le indicazioni circa il numero di bit con cui codificare ciascuna sotto-banda provenienti dai rispettivi blocchi di analisi se non nella situazione limite, corrispondente a fattori di compressione estremamente elevati (in effetti l’algoritmo può funzionare con fattori fino a 40), in cui non vi siano sufficienti bit disponibili. In tal caso, infatti, il blocco può essere costretto a non dedicare alcun bit al campionamento di alcune sotto-bande, riducendo così di fatto la larghezza di banda del segnale decodificato. Quando invece il numero di bit disponibili supera quello che risulta dalla somma dei numeri di bit richiesti per ciascuna sotto-banda dai relativi blocchi di analisi, il blocco di gestione globale dei bit ridistribuisce ulteriori bit ai codificatori delle sotto-bande per diminuire l’entità della compressione basata sul principio che abbiamo definito di tipo percettivo.

Il multiplexer

L’insieme dei campioni di ingresso contenuti nel buffer d’analisi (il primo blocco del codificatore rappresentato in fig. 4) produce in uscita una sequenza di bit denominata frame. Il frame rappresenta la più piccola unità che può essere trattata dal decodificatore e corrisponde, per quanto detto a proposito della dimensione del buffer d’analisi, ad un numero di campioni d’ingresso che può variare da un minimo di 256 ad un massimo di 4096. Il blocco che provvede alla costruzione del frame organizzando opportunamente i bit codificati corrispondenti a ciascun canale d’ingresso è il multiplexer. Nel Libro Bianco viene descritta la struttura di un frame dicendo che quest’ultimo è composto da cinque parti: una parola di sincronizzazione, che individua l’inizio del frame, un’intestazione del frame, che specifica la configurazione del codificatore, fino a 16 sub-frame contenenti il nucleo dei dati codificati relativi ai 5.1 canali, dati d’utente opzionali, quali ad esempio codici temporali per la sincronizzazione con il video, ed infine dati estensione, contenenti gli eventuali bit codificati che non abbiano trovato posto nel nucleo di base suddetto. Questa descrizione, alla quale non viene aggiunta alcuna nota esplicativa, lascia aperti alcuni dubbi che solo in parte vengono chiariti leggendo la successiva parte del documento specificamente dedicata ai dati estensione. In tale parte, infatti, sono contenute informazioni utili per comprendere il significato di ciò che è stato definito “nucleo” dei bit codificati relativi ai 5.1 canali. Sostanzialmente ciò che si è voluto realizzare è un sistema che mediante il nucleo di bit codificati è in grado di trattare la gamma audio, ossia le frequenze che arrivano fino a poco oltre i 20 kHz, mentre con i bit codificati contenuti nei dati estensione è in grado di ricostruire la banda al di sopra di quella audio, nei casi in cui il formato audio d’ingresso abbia una frequenza di campionamento cui corrisponde una banda che eccede quella audio. In tale modo si riescono a gestire le frequenze di campionamento di 96 e 192 kHz, senza compromettere la compatibilità con i decoder di prima generazione. Questi ultimi si limitano infatti a ricostruire la banda audio, ignorando del tutto i dati estensione. Questo aspetto risulta quindi alla fine sufficientemente chiaro. Dove invece permane l’incertezza è riguardo al numero di canali che l’algoritmo di compressione può gestire. Da un lato, infatti, viene dichiarato che si è voluto realizzare un sistema il più possibile flessibile, dall’altro, se ci si attiene esattamente alla descrizione fornita per il frame d’uscita, si deve concludere che l’unica modalità di funzionamento possibile è quella multicanale 5.1. Se così fosse, non sarebbe ad esempio ipotizzabile utilizzare l’algoritmo Coherent Acoustics in modalità stereofonica per inserire in un normale CD registrazioni effettuate nel formato 192 kHz/24 bit nonostante, come detto nella prima parte di quest’articolo, il bit rate dopo la compressione sia in questo caso identico a quello di una normale registrazione stereofonica su CD.

Fig. 6. Diagramma a blocchi del decodificatore Coherent Acoustics.

Fig. 6. Diagramma a blocchi del decodificatore Coherent Acoustics.

Struttura del decodificatore

Prima di chiudere, un rapidissimo cenno al decodificatore, rappresentato in fig. 6, che è stato reso il più semplice possibile includendo tutte le operazioni più critiche ed onerose nel codificatore. Sui dati codificati d’ingresso agisce per primo un de-multiplexer che seziona ogni frame estraendo i dati di pertinenza di ciascun canale. Per ognuno di questi viene quindi effettuata una riquantizzazione differenziale che restituisce i campioni PCM relativi a ciascuna sotto-banda ed infine, mediante un banco di filtri polifase inverso, vengono ricostruiti i segnali PCM relativi all’intera banda audio. Come si può notare, nel diagramma a blocchi del decodificatore compare anche un DSP opzionale che può svolgere funzioni quali il down-mixing (per convogliare su due soli canali il contenuto di tutti i canali), il controllo della dinamica, l’introduzione di ritardi tra i canali, ecc.

di Franco Guida

da Digital Video n. 7 novembre 1999

Author:

Share This Post On

Submit a Comment