UNIVERSITÀ DEGLI STUDI DI PARMA FACOLTÀ DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA ELETTRONICA DA MPEG ALLE WEB RADIO Relatore Chiar.mo Prof. Ing. A. POGGI Tesi di Laurea di ALBERTO CALOROSI Ringraziamenti C’è qualcosa di intrinsecamente anacronistico nel capitolo dei ringraziamenti, tradizionalmente posti a principio di una tesi e sovente scritti al termine della stessa. Viene istintivo viaggiare a ritroso nel tempo, vagolare con la memoria, ripensando a quella formula che proprio non voleva uscire, a quel capitolo scritto e riscritto mille volte, a quell’intuizione notturna che fa sobbalzare e correre ad accendere il PC. E’ ciò che faccio ora, viaggiare, nel profondo di questa notte sferzata dalla pioggia e dal vento che agita i ricordi come lenzuola di fantasmi. Chiudo gli occhi e mi abbandono contro lo schienale. Chiudo gli occhi e navigo nella notte. Con me ci sono tutti i miei amici. Li saluto con un’occhiata. I miei amici, quelli che hanno saputo soffiare a pieni polmoni nelle mie vele sgonfie in occasione dei (numerosi, ahimè) momenti di bonaccia creativa. Vi ringrazierò uno per uno, statene certi. Ma non qui. Lo farò di persona, a tempo debito. In questa sede mi limiterò a menzionare le tre persone che più di chiunque altro hanno desiderato che terminassi questo percorso lungo e accidentato: mamma, papà e Sara. Non lo nascondo: senza di loro, quella dei ringraziamenti sarebbe l’unica pagina di questa tesi. Ringrazio infine il professor Agostino Poggi per tutto ciò che è fattivamente legato ai contenuti di questa tesi, ma soprattutto per la sua straordinaria capacità di fornirmi, nei momenti di difficoltà, stimoli rapidi e risolutori. Senza i quali, alla pagina dei ringraziamenti, verosimilmente non sarei mai arrivato. i Indice Prefazione ………………………………………………………………... vi 1 Sistemi audio digitali …………………………………………………….. 2 Psicoacustica ……………………………………………………………... 16 3 L’algoritmo di compressione Mp3 ………………………………………. 28 4 Un’applicazione: la web radio …………………………………………… 57 1 Conclusioni ……………………………………………………………..... 69 Appendice A: L’acustica e l’orecchio umano ……………………………. 71 Appendice B: Filtri polifase …………………………………………….... 84 Appendice C: Trasformata Discreta a Coseni Modificata ……………….. 89 Appendice D: Intervista a Dalse di Yastaradio.com ……………………... 92 Bibliografia …………………………………………………………….. ii 99 Indice delle figure 2.01 Le curve di Fletcher-Munson ……………………………..……………....... 18 2.02 Minimum Audible Field in funzione dell’età e del sesso ..…………………. 20 2.03 Differente percezione del tono diffuso vs. tono diretto ..………………….. 20 2.04 Bande critiche: banda di frequenze ……………………..………………..... 21 2.05 Intensità percepita in funzione della larghezza di banda ..…………………. 21 2.06 Diagramma di Stevens …………………………………..……………….... 23 2.07 Legame tra altezza sonora soggettiva e bande critiche ..…………………... 24 2.08 Alterazione della curva MAF di Fletcher-Munson in presenza di più toni .. 25 2.09 Curve di attenuazione di pre-mascheratura e post-mascheratura …………. 26 3.01 Schema a blocchi di un encoder Mp3…………………..………………..... 31 3.02 Sottobande del banco di filtri vs. bande critiche psicoacustiche ………….. 34 3.03 Il banco di filtri polifase Mp3 …………………………..………………..... 35 3.04 Diagramma di flusso di un banco di filtri polifase Mp3 ..…………………. 35 3.05 Ampiezza del filtro FIR in banda base …………………..………………... 38 3.06 Trasformazione di un tono vicino al confine tra due sottobande …………. 39 3.07 Diagramma di stato del blocco MDCT ………………..…………………... 42 3.08 Differenti PE in funzione del segnale in ingresso ……..…………………… 47 3.09 Algoritmo di quantizzazione. Diagramma di flusso …..…………………… 49 3.10 Quantizzazione: ciclo esterno. Diagramma di flusso .…..…………………. 51 3.11 Tipico aspetto di un sub-frame dell’encoder entropico …..………………... 53 3.12 Struttura del frame: implementazione reservoir bit ……..…………………. 53 3.13 Schema a blocchi di un encoder MPEG-2 ……………..………………...... 55 4.01 Internet: bacino di utenza complessivo negli Stati Uniti nel 2009 ………… 59 iii 4.02 Web radio: bacino di utenza complessivo negli Stati Uniti nel 2009………. 60 4.03 Web radio: utenti abituali negli ultimi dieci anni…………………………… 60 4.04 Web radio: preferenza radio web rispetto alla radio tradizionale ………….. 61 4.05 Il plugin Shoutcast source e Shoutcast D.N.A.S. ………..……………….... 66 4.06 Il logo di Yastaradio.com .………………………………..……………...... 67 A.1 Propagazione del suono con sorgente puntiforme o sferica ………………. 73 A.2 L’orecchio umano ………………………………………..……………...... 74 A.3 Movimento degli ossicoli ………………………………..……………….. 76 A.4 Saturazione degli ossicoli ………………………………..……………….. 76 A.5 Canali semicircolari ……………………………………..………………... 77 A.6 Coclea …………………………………………………..……………….... 77 A.7 Sezione della coclea ……………………………………..……………….. 78 A.8 Organo di Corti …………………………………………..……………..... 78 A.9 Disposizione delle celle filamentose …………………..…………………. 78 A.10 Cella filamentosa ………………………………………..………………... 78 A.11 Disegno “raddrizzato” della coclea ……………………..………………... 79 A.12 Oscillazione della coclea a differenti frequenze ………..…………………. 80 A.13 Oscillazione della coclea a differenti frequenze ………..…………………. 80 A.14 Sharpening nella coclea ………………………………..………………...... 80 A.15 Oscillazioni della membrana di base a differenti frequenze ……………… 82 B.1 Sottobande lineari ………………………………………..……………...... 84 B.2 Sottobande logaritmiche ………………………………..……………….... 84 B.3 Banco di filtri PQF ……………………………………..……………….... 86 iv Indice delle tabelle 1.1 Fattori di compressione per “layer” ……………………..………………..... 10 1.2 Livelli di qualità percepita in funzione del fattore di compressione ………. 11 2.1 Le 27 bande critiche della psicoacustica: caratteristiche …………………... 22 B.1 I coefficienti di un filtro polifase nel caso dell’Mp3 ………………………. 86 v Prefazione Nei ventidue anni che intercorrono tra la fondazione del Moving Picture Experts Group (MPEG) e oggi, un interesse sempre crescente è gravitato attorno alla digitalizzazione “intelligente” di segnali multimediali, audio e video. Agli albori, la ricerca prese impulso dalla impellente necessità di trasmettere informazioni dotate di una banda più grande della capacità del canale a disposizione. Nel caso specifico, la trasmissione di un segnale parlato su un cavo telegrafico. L’impressione iniziale che all’aumentare della capacità del canale la necessità di comprimere il segnale sarebbe stata sempre meno impellente, si rivelò profondamente sbagliata. Al contrario, nonostante l’avvento di fibre ottiche, linee DSL e supporti di stivaggio di grandi capacità (il DVD o il recente Blu-ray), la compressione oggi è più importante che mai, in virtù della crescita esponenziale della domanda di trasmissione di contenuti multimediali su canali wireless e su reti a pacchetti di dati. Una ulteriore criticità è costituita dalle elevate aspettative da parte dell’utente. Vale a dire che soltanto applicazioni in grado di fornire un servizio di alta qualità risultano, alla luce dei fatti, commerciabili. L’avvento del Compact Disc nei primi anni 80 congelò di fatto lo standard per l’alta fedeltà audio, ma alle spese di due gravi limitazioni: una elevatissima ridondanza di segnale e l’impossibilità da parte dell’algoritmo di evolvere. La ricerca effettuata principalmente (ma non solo) dal MPEG negli anni immediatamente successivi è avvenuta nella direzione del superamento di questi due limiti, creando un algoritmo capace di mantenere una elevata qualità percepita del segnale ricostruito in termini di fedeltà e spazialità, e al contempo versatile in termini di adattività al segnale in ingresso. Inoltre, l’algoritmo deve essere facile da processare, pertanto cruciali sono la scalabilità di banda, la complessità vi dell’algoritmo, la latenza di codifica e il consumo di risorse. Infine, nel caso di applicazioni broadcast, è richiesta una certa robustezza all’errore di canale, che si accompagni possibilmente a una degradazione “gradevole” in presenza di un incremento di errori di canale. Lo stato dell’arte oggi è rappresentato da encoder capaci di generare suoni percettivamente trasparenti con un rapporto di compressione vicino a 1 a 10 e, in caso di applicazioni network, fornire una discreta qualità sottocampionando fino a 1 bit per campione. Lo scopo di questa tesi è fornire un’analisi top-down dei presupposti tecnici e scientifici che hanno fattivamente contribuito al raggiungimento degli scopi summenzionati decretando il successo mondiale dell’Mp3, lanciando un’occhiata alle modalità evolutive dell’algoritmo nella forma dei suoi successori, cioè l’AAC e l’Mp4 e a una delle applicazioni oggigiorno più interessanti, la radio web. vii Capitolo 1 Sistemi audio digitali Questo capitolo fornisce un compendio storico-sociale delle motivazioni che hanno condotto alla sperimentazione e successiva standardizzazione di algoritmi di compressione audio. Fornisce altresì una breve descrizione dei presupposti tecnici soggiacenti alla realizzazione di un algoritmo di compressione audio. 1.1 Dalla scoperta dell’America allo standard MPEG “I l caso aiuta soltanto la mente preparata al nuovo e all'inconsueto”. Così commentava il grande scienziato Louis Pasteur a chi gli chiedeva di spiegare il ruolo giocato dal destino per quanto riguarda le sue brillanti scoperte sulla fermentazione e sulla vaccinazione. E’ un dato di fatto che numerose tappe fondamentali del progresso scientifico siano consistite in scoperte meramente casuali, quando addirittura non generate da grossolani errori E’ il caso del geniale (ma imprudente) chimico svizzero Christian Schönbein. Schönbein soleva condurre esperimenti chimici nella cucina di casa, con grande Sistemi audio digitali 2 disappunto della moglie. Un giorno gli capitò di rompere sbadatamente l’ampolla in cui stava distillando acido nitrico e acido solforico: le due sostanze corrosive si versarono sul pavimento della cucina. In preda al panico, il chimico si affannò a pulire in giro utilizzando la prima cosa che gli capitò a tiro: il grembiule della moglie, composto in gran parte di cellulosa. Il grembiule prese inaspettatamente fuoco. Stupefatto, Schönbein, analizzò l’accaduto e capì che la cellulosa del grembiule, unita ai due acidi, si era trasformata in una nuova sostanza che, oltre a essere estremamente infiammabile, poteva essere modellata col calore per assumere qualsiasi forma. Si trattava della nitrocellulosa, l’antenato della plastica. O il signor Percy Spencer, intraprendente tecnico di una grande azienda produttrice di radar. Un giorno il signor Spencer si rese conto che le valvole dei radar scioglievano le caramelle che teneva nella tasca dei pantaloni. Colpito dal fenomeno, mandò a prendere un sacchetto di granoturco, lo sistemò davanti alla valvola e in breve tempo ottenne i popcorn. Era evidente che le microonde prodotte dalla valvola radar avevano la proprietà di cuocere i cibi istantaneamente. Percy Spencer aveva appena inventato il forno a microonde. Oppure il signor Arthur Fry, impiegato alla società americana 3M, ingegnere chimico per professione e appassionato corista per hobby. I foglietti segnalibro che Fry soleva inserire tra i suoi spartiti cadevano a terra ogniqualvolta egli si accingesse a poggiare il plico sul leggio, con grande frustrazione del Signor Fry. Egli si ricordò, dunque, di un collante blando realizzato per errore da un collega e successivamente scartato in quanto non commerciabile. Pensò di spennellarne un po’ sui foglietti segnalibro in modo che non cadessero. In quel modo, Fry aveva risolto tutti i suoi problemi con gli spartiti e contemporaneamente inventato il post-it. Percepire il progresso alla stregua di una fortuita successione di effetti collaterali, come una sorta di reiterato (invero affatto illuministico) “buscar l’oriente par l’occidente”1, è certamente un approccio capzioso e riduttivo 1 Le parole con cui Cristoforo Colombo ebbe modo di convincere la regina Isabella di Spagna a finanziare il suo ambizioso progetto di circumnavigare il globo così da raggiungere da ovest quell’estremo oriente la cui opulenza era già favoleggiata da Marco Polo duecento anni addietro. Colombo, grande avventuriero ma mediocre navigatore, aveva stimato la circonferenza terreste inferiore di circa il 40% al valore reale (peraltro già calcolato con eccellente approssimazione dallo scienziato egiziano Eratostene indietro nel terzo secolo a.C.). Dopo il 1492, Colombo compì altri Sistemi audio digitali 3 ancorché marginalmente faceto. Fornisce in questa sede il pretesto per una breve inciso sulla genesi del “fenomeno” Mp3, i cui primi vagiti avvengono all’interno di un progetto tanto importante quanto innovativo, ma certamente di portata minore, perlomeno negli intenti iniziali: la trasmissione radiofonica digitale via etere2. Il primo progetto orientato alla creazione di un algoritmo di compressione per flussi multimediali audio risale all’anno 1987. In quell’anno la “Fraunhofer IISA”, in collaborazione con l’università di Erlangen diede vita a un progetto finalizzato allo sviluppo di uno standard per broadcast digitale radiofonico (DAB – Digital Audio Broadcast) denominato EU-1473, all’interno del progetto di ricerca EUREKA finanziato dalla Comunità Europea. EU-147 si fonda principalmente su un algoritmo di codifica detto MUSICAM (Masking pattern Universal Sub-band Integrated Coding And Multiplexing), una sorta di bisnonno dell’Mp3, e da uno schema di modulazione digitale detto COFDM (Coded Orthogonal Frequency Division Multiplexing), caratterizzato da un elevatissimo numero di portanti (fino a 1536, spaziate di 1 KHz) e ottimizzato in modo da essere robusto agli errori di multipath (echi) e piuttosto agile in termini di occupazione di banda. L’obiettivo di EU-147 era di fornire un servizio radiofonico più affidabile e di maggiore qualità, più versatile e capace di fornire servizi supplementari rispetto al servizio analogico. Oggi EU-147 dà voce a un migliaio di radio digitali che raggiungono circa 500 milioni di utenti in tutto il tre viaggi (nel 1493, nel 1498 e nel 1503) senza mai riconoscere l’errore. Sembra che nel corso dell’ultimo dei suoi viaggi, dopo aver esplorato per cinquanta giorni l'isola di Cuba, abbia costretto i marinai a giurare, di fronte ad un notaio, che quella che stavano calpestando era la Cina. 2 Ritenere la trasmissione radiofonica digitale via etere un progetto di scarsa portata è un punto di vista strettamente personale e assolutamente discutibile. La radio digitale via etere mi appare come una sorta di ibrido digitale/analogico da collocare storicamente di fianco a tecnologie già superate quali, in tempi non lontani, il videodisco o il DCC. Tutt’altro discorso per quanto riguarda la radio digitale via internet (web radio), che, anzi, a giudicare dall’estensione dei servizi è già da qualche anno un’interessante realtà (si confronti l’ultimo capitolo di questa tesi). 3 Si confrontino: - “Audio in digital radio -- the Eureka 147 DAB system”, pubblicato in “Electronic Engineering”, April 1998. Autore AJ Bower (BBC) - A technical overview of digital radio, autore Stephen Baily, BBC research and development, Kingswood Warren, Tadworth, KT20 6NP, United Kingdom Sistemi audio digitali 4 mondo4. La BBC inglese, la prima ad abbracciare questa tecnologia, fornisce oltre 300 servizi commerciali in DAB dal 20015. Mi sia consentito aggiungere per dovere di cronaca che tutto questo rappresenta solamente metà del firmamento: gli Americani (precisamente gli Stati Uniti: il Canada si è conformato al modello Europeo) hanno preferito invece perseguire un modello ibrido analogico/digitale denominato IBOC (In-Band OnChannel) che consiste nell’aggiungere una sottoportante digitale all’interno del segnale analogico AM o FM. Questa scelta ha permesso di evitare il problema di ulteriori assegnazioni di banda; d’altro canto vi sono però forti limitazioni in termini di prestazioni: la maggiore energia complessiva del segnale RF genera interferenze tra canali adiacenti, inoltre la comunque scarsa banda a disposizione per il segnale digitale (che in molti casi è stato sovrapposto a quello analogico) permette prestazioni sicuramente scarse. Nonostante l’iniziale svantaggio in termini di prestazioni col rivale EU-147 negli ultimi anni IBOC, sotto la guida di Ibiquity6, ha recuperato parecchio terreno, complice la scelta di sfruttare nuovi e più efficienti algoritmi di compressione audio. Questi primi tentativi di compressione audio fornirono risultati più che incoraggianti: gli streaming ottenuti erano di ottima qualità e di dimensioni molto ridotte rispetto ai fratelli maggiori, i file audio cosiddetti “a qualità compact disc/disk”7. La compressione audio acquisì crescente fama e cominciò a essere 4 Si confronti: http://www.worlddab.org/ Si confronti: www.bbc.co.uk/digitalradio/ 6 Si confronti: http://www.ibiquity.com/technology/index.htm 7 Capita sovente che l’ingresso nel linguaggio comune di nuovi termini generi un transitorio temporale di... confusione toponomastica. Nella maggioranza dei casi è proprio la consuetudine, più che gli standard, a definire ciò che è corretto e ciò che non lo è. In certi casi il periodo transitorio è inaspettatamente lungo. La dicotomia disc/disk rappresenta un ottimo esempio. Il termine disk entrò a far parte della lingua inglese verso al metà del 17-esimo secolo. Il vocabolo era originariamente scritto con la k finale, sul modello di parecchie altre parole più vecchie (es: whisk). La versione con la c arrivò soltanto mezzo secolo più tardi, diretta derivazione del termine latino discus. Entrambi i vocaboli disc e disk furono usati in maniera intercambiabile ed equivalente durante tutto il 20-esimo secolo nell’universo anglofono, con una certa preponderanza del termine disc in Inghilterra, mentre oltreoceano si preferiva disk. Alla fine del 19-esimo secolo si cominciò a utilizzare il termine disc in riferimento alle registrazioni fonografiche realizzate con una nuova tecnica di incisione fonografica su dischetti piatti: una tecnica nata in Europa e poi esportata in America. Lo spelling con c divenne convenzionale in questo contesto, al di là delle divisioni geografiche poco prima evidenziate: chi mette i dischi alla radio è un disc jockey, non un disk jockey. Negli anni ’40, agli albori dell’era informatica, gli scienziati Americani, scelsero 5 Sistemi audio digitali 5 oggetto di interesse più generale: non più soltanto finalizzato alla trasmissione radio digitale, ma come parte di un progetto di ottimizzazione dei flussi digitali multimediali, cioè sia audio che video. Il Moving Picture Experts Group (MPEG) fu creato nel Maggio 1988 da parte di 25 membri fondatori, con l’obiettivo di sviluppare standard per rappresentazioni codificate di immagini in movimento, audio e combinazione dei due. Il MPEG lavora sotto la direzione congiunta dell’International Standards Organization (ISO) e dell’International Electro-Technical Commission (IEC), designazione ufficiale: ISO/IEC JTC1/SC29 WG11. La comunità MPEG annovera ora circa 350 esperti appartenenti a 200 aziende/enti di 20 nazioni differenti. Nonostante la sua struttura ancora informale, il gruppo MPEG emette standard di alta rilevanza strategica. In questo senso non sorprende il fatto che tra i membri del gruppo vi siano eminenti team di ricerca e sviluppo delle più importanti aziende di informatica e telecomunicazioni8. Un gruppo di lavoro si sviluppò attorno alle persone di Karlheinz Brandenburg9 e Jürgen Herre. Essi cominciarono i loro studi partendo dai due principali algoritmi dell’epoca, il MUSICAM (noto anche come MPEG layer II o invece lo spelling disk, a loro più congeniale, per dare nome ai dispositivi di immagazzinamento portatili, da cui, successivamente, hard disk e floppy disk. Quando apparvero sul mercato i primi compact disk/c, entrambe le forme furono inizialmente mantenute. Gli informatici tendevano a preferire lo spelling familiare con la k mentre i discografici, che vedevano i CD come una evoluzione delle vecchie tecniche di registrazione fonografiche, vi si riferivano come compact disc. Questa differenza, anziché scomparire, si ampliò mano a mano che l’oggetto prendeva piede nei due differenti mondi discografico e informatico. Oggi si compera un compact disk in un negozio di informatica e un compact disc in un negozio di musica. Qualche anno dopo comparve un nuovo supporto molto versatile ampiamente utilizzato sia dagli addetti dell’informatica che da quelli del’entertainment. Curioso osservare che primi lo chiamarono optical disk, i secondi, videodisc. (fonte: http://www.bartleby.com) 8 Per ulteriori informazioni sul modus operandi del MPEG group si confronti http://www.chiariglione.org/mpeg/about_mpeg.htm 9 Karlheinz Brandenburg è da molti considerato il papà dell’Mp3 per via del contributo massivo fornito nel definire i parametri dello standard MPEG layer 3 (l’Mp3, appunto) e, successivamente, per aver gettato le basi teoriche per lo sviluppo del successore dell’Mp3, lo standard AAC. Ma soprattutto per avere precorso i tempi, occupandosi di compressione musicale già nel lontano 1977, quando ebbe modo di confrontarsi con le teorie del professor Dieter Seitzer finalizzate al trasferimento di musica su una linea telefonica standard. Sul piano personale non posso che condividere col professor Brandenburg il suo disinteresse per il profitto in confronto con la scienza e il progresso (“Non mi interessano i numeri sul mio conto in banca: io sono soddisfatto del mio lavoro, delle persone con le quali lo porto avanti e dei risultati ottenuti”) nonché la sua passione per Suzanne Vega. Si confronti: www.ieee.org/portal/pages/about/awards/bios/2004ibuka.html http://www.iis.fraunhofer.de/EN/bf/amm/products/Mp3/Mp3history/Mp3history01.jsp Sistemi audio digitali 6 MP2) e l’ASPEC, che integrarono con una serie di intuizioni nuove. E’ storia che il brano prescelto da Brandenburg per testare la bontà della propria creatura fosse “Tom’s diner” nella versione originale a cappella10, brano scelto per la sua leggerezza e semplicità che lo rendevano ideale per percepire eventuali imperfezioni nella riproduzione. Nacque così lo standard MPEG layer III, altrimenti (arci)noto come Mp3. E Suzanne Vega passò alla storia, tra le altre cose, per essere la prima artista codificata in Mp3. Nel 1992 entrambi gli algoritmi (MUSICAM alias MPEG layer II e Mp3 alias MPEG layer III) furono finalizzati e standardizzati nella norma ISO/IEC-11172-3, pubblicata poi l’anno successivo. Una doverosa puntualizzazione, prima di proseguire. In questa sede sovente si fa riferimento allo standard MPEG in termini di compressione audio. Ciò è inesatto in quanto, come detto, MPEG sviluppa standard per la codifica sia audio che video. A parte qualche eccezione che mi periterò di segnalare, è mia concentrarmi soltanto sulla codifica audio. Nella sua forma definitiva lo standard MPEG è costituito da tre differenti strati (“layers” in inglese) cronologicamente successivi l’uno all’altro e di crescente complessità e prestazioni. Ogni strato successivo è compatibile con i precedenti in forma gerarchica e ne estende le caratteristiche. La forma più semplice è il layer 1 (chiamato anche PASC), concepito per il formato DCC11. Si tratta del protocollo più vecchio e più elementare. Ha prestazioni di compressione e fedeltà limitate per quanto già sorprendenti, dal 10 “Tom’s diner” è la prima traccia del secondo album di Suzanne Vega “Solitude standing”, pubblicato nel 1987. A metà anni ottanta, in un contesto musicale mai come allora tanto ipertrofico quanto povero d’idee, Suzanne irruppe con le sue liriche intimiste, sovente autobiografiche, dotate di arrangiamenti limpidi in grado di emozionare al primo ascolto. A mio umile modo di vedere, in quegli anni fracassoni, Suzanne era seconda soltanto a Patti Smith per impatto emotivo e personalità. 11 DCC: Digital Compact Cassette. Formato di registrazione digitale su nastro magnetico sviluppato dalla Philips nel 1992 e dismesso pochi anni più tardi. Facendo uso di testine statiche garantiva una maggior resistenza agli urti e alle vibrazioni. La velocità della testina era la medesima dei nastri analogici, il che garantiva una retro compatibilità. Implementava un codec di compressione audio MPEG-1 audio layer 1 (MP1) chiamato PASC, a bitrate costante384 kbps: un rapporto di compressione di 1 a 4 in confronto al CD audio. Davanti a ogni traccia era possibile anteporre una tag testuale. Sistemi audio digitali 7 momento che garantisce una qualità12 analoga a quella del CD con un rapporto di compressione approssimativamente di 1 a 4. Il layer 2 introduce parecchie delle caratteristiche tipiche dei moderni algoritmi di compressione. La possibilità di definire la qualità del suono compresso, per esempio, permette l’utilizzo di questo standard nel broadcasting digitale via etere, come sopra accennato. Dal momento che il fattore di compressione minimo è 1:4 (come il layer 1: la cosiddetta qualità CD) mentre il massima è 1:192 (48 volte maggiore rispetto al layer 1: qualità paragonabile a quella di un segnale telefonico), è stato possibile creare radio digitali con differenti prestazioni: minima compressione per le radio musicali, in grado così di superare di gran lunga la qualità raggiunta dalle “sorelle” analogiche, elevata compressione – e quindi ridotta occupazione di banda – per le radio “parlate” (radiocronache sportive, sedute parlamentari)13. Inoltre un migliore algoritmo permette di ottenere con un fattore di compressione 1 a 6 le medesime prestazioni raggiunte dal layer 1 con compressione 1 a 4. D’altro canto, è opinione comune che per rapporti di compressione inferiori a 1 a 6 l’algoritmo ceda il passo, in termini di qualità sonora. Il layer 3 (detto anche Mp3) introduce un certo numero di caratteristiche avanzate. Una risoluzione di frequenze molto maggiore rispetto ai predecessori, per esempio, rende lo standard molto più “snello” in termini di adattività al segnale in ingresso con conseguente riduzione del rumore di quantizzazione. L’utilizzo poi di una codifica entropica permette una ulteriore compressione di segnale laddove vi siano delle ridondanze numeriche dovute alla codifica stessa. L’introduzione di un “reservoir” system che permette una maggiore flessibilità 12 Il termine qualità, nel contesto di questa tesi, intende quantificare la riproducibilità di un segnale, o meglio, la fedeltà di una riproduzione (audio) in riferimento a una (sovente ipotetica) esecuzione originale. Sottintende implicazioni sia sensoriali, quindi soggettive, che oggettive, cioè la riproduzione della forma d’onda stessa. Nella reciproca compenetrazione di queste due differenti aree, il termine acquisisce implicazioni talvolta non banali. E’ compito di questa tesi cercare di fare luce su questo aspetto. Una prima definizione, invero piuttosto euristica, della cosiddetta qualità CD potrebbe essere l’attitudine, da parte di un determinato flusso audio compresso, di mantenere una sorta di indistinguibilità percettiva nei confronti del medesimo segnale audio codificato tramite lo standard dei CD audio commerciali. 13 Di nuovo: - “Audio in digital radio -- the Eureka 147 DAB system”, pubblicato in “Electronic Engineering”, April 1998. Autore AJ Bower (BBC) - A technical overview of digital radio, autore Stephen Baily, BBC research and development, Kingswood Warren, Tadworth, KT20 6NP, United Kingdom Sistemi audio digitali 8 nella compressione medesima negli istanti temporali in cui il segnale dovesse essere particolarmente “difficile”. Queste e altre caratteristiche hanno di fatto trasformato l’Mp3 in un algoritmo estremamente potente e versatile per lo stivaggio e la trasmissione via internet di file audio. A pochi mesi dalla finalizzazione e dalla successiva standardizzazione, l’Mp3 godeva già di indiscussa fama mondiale non solo negli ambienti dedicati ma anche e soprattutto all’interno dell’immensa comunità dei soldati semplici dell’informatica: gli utenti. I risultati ancora una volta sorprendenti diedero ulteriore impulso a queste attività: l’MPEG acquisiva di giorno in giorno maggiore autorità e credibilità; i suoi membri erano sempre più numerosi e sempre più influenti. In aggiunta, molteplici altri gruppi facenti capo a entità locali o addirittura ad iniziative personali cominciavano a sviluppare i loro personali algoritmi, in conformità con la specifica ISO-11172, o talvolta in disaccordo con essa. Il primogenito dell’Mp3, sviluppato da un gruppo di lavoro MPEG composto dal Fraunhofer institute IIS in collaborazione con aziende del calibro di AT&T, Sony e Dolby, fu dichiarato standard internazionale (ISO/IEC 13818) con il nome di MPEG-2. Composto di vari strati, il più evoluto dei quali denominato AAC (Advanced Audio Coding) standardizzato nell’Aprile 1997, rappresenta una evoluzione considerevole nei confronti del predecessore MPEG layer 3. L’implementazione di un supporto fino a 48 canali laddove l’Mp3 ne prevedeva solamente 1 (mono) oppure 2 (stereo) rende AAC adeguato per standard commerciali quali per esempio il DVD14, che necessita di 5+1 canali distinti in combinazione “surround” (sinistro, destro, centrale, surround destro, surround sinistro + subwoofer) esattamente come nei cinema di oggi. Una maggiore robustezza nel formato bit-stream ha permesso l’utilizzo di AAC come algoritmo 14 DVD: Digital Versatile Disc. Da molti considerato lo ‘standard definitivo’ poiché frutto della sofferta accensione del calumet della pace tra Toshiba, Philips e Sony a seguito della annosa e infruttuosa guerra di standard che ha visto coinvolti, tra gli altri, le tre major negli anni passati. Nel formato audio supporta varie configurazioni (da mono a 7.1 surround) a varie frequenze di campionamento, fino a 24 bit / 192 kHz (il ‘nonno’ CD audio si fermava a 16 bit / 44 kHz). La pace fu oltremodo breve. Solo pochi anni più tardi la guerra dei formati riprese con la disputa Blu ray (Sony/Philips) vs. HD-DVD (Toshiba). Wikipedia fornisce un gustoso excursus sulla guerra dei formati al link http://en.wikipedia.org/wiki/Format_war Sistemi audio digitali 9 di codifica audio per vari formati di TV satellite digitale e TV via cavo. MPEG-2 è lo standard prescelto per la compressione audio e video per il DVB (Digital Video Broadcasting), lo standard di trasmissione digitale terrestre, satellitare e via cavo attualmente più avanzato e performante. Un ulteriore affinamento dell’algoritmo di compressione permette, infine, un rapporto di compressione di 2 a 1 rispetto all’Mp3 a parità di prestazioni. Naturale evoluzione dell’MPEG-2, l’MPEG-4 rappresenta ad oggi, nell’autorevole opinione del laboratorio di ricerca MPEG, lo stato dell’arte riguardo alla compressione audio e video. Si tratta di un contenitore estremamente complesso suddiviso in differenti profili, anch’essi definiti “layers” ma dal significato profondamente diverso. Tra le prerogative di questo nuovo standard vi sono la multiplazione di vari streaming audio e video in un solo file, il supporto per immagini ferme e per sottotitoli, un encoder parametrico per il parlato con conversione text-to-speech e persino un rudimentale sintetizzatore sonoro e vocale. La assoluta versatilità di questo standard lo rende ottimale per applicazioni multimediali quali lo streaming via web, il videotelefono e la televisione digitale ad alta qualità. La (relativa) giovinezza combinata con la estrema complessità di questo standard fa sì che ad oggi non vi siano applicazioni concrete che gli rendano giustizia. Come già accennato, al fianco di (in certi casi in contrasto con) il laboratorio MPEG sono stati sviluppati altri algoritmi, ciascuno dei quali, a detta del rispettivo fautore, rappresenta il non plus ultra nel campo della compressione audio. E’ chiaro che un piccolo team di sviluppo intraprendente, talentuoso e, laddove lo ritenesse opportuno, slegato dall’osservanza pedissequa degli standard generali MPEG, può produrre un algoritmo estremamente potente in termini di efficienza e fedeltà, magari in grado, nell’immediato, di mettere sotto scacco gli standard MPEG. Dall’altro lato, a lungo termine, difficilmente il medesimo team riuscirà a restare al passo coi tempi. Sistemi audio digitali 10 1.2 L’algoritmo di compressione Il parametro principale per dare una prima quantificazione della compressione di un algoritmo è il bitrate, ovvero il numero di bit processati per unità di tempo. Il successo commerciale a livello mondiale del CD audio avvenuto a cavallo tra gli anni ottanta e novanta lo ha reso, de facto, il termine di paragone universale nel giudizio della bontà di un algoritmo di compressione15 in termini di qualità e occupazione di banda. La codifica digitale del CD commerciale ha le seguenti caratteristiche: - codifica PCM - frequenza di campionamento a 44.1 kHz - risoluzione a 16 bit per campione - 2 canali (segnale stereo) Quindi un secondo di segnale audio non compresso è pari a 44100 * 16 * 2: quasi 1400 chilo-bit al secondo (da qui in poi 1 chilo-bit al secondo = 1 kbps). Nei primi encoder Mp3 della Fraunhofer, ente in prima linea nello sviluppo degli standard Mp3 ed AAC, il fattore di compressione tra un segnale audio in qualità CD ed un segnale Mp3 a “qualità CD” è stabilito in 1 a 12, come mostra la tabella 1. 1:4 by Layer 1 (corresponds to 384 kbps for a stereo signal), 1:6...1:8 by Layer 2 (corresponds to 256..192 kbps for a stereo signal), 1:10...1:12 by Layer 3 (corresponds to 128..112 kbps for a stereo signal), Tabella 1.1. Fattori di compressione per “layer”. Gli autori si affrettano ad aggiungere che anche a fattori di compressione più elevati la qualità del suono si deteriora impercettibilmente; inoltre, qualora il sistema possa tollerare una riduzione di banda attorno ai 10 kHz, una buona qualità stereo può essere ottenuta con un fattore di compressione 1 a 24. 15 La definizione stessa di algoritmo di compressione presuppone implicitamente un confronto in termini di occupazione di banda con uno standard audio digitale non compresso. Tipicamente, il formato CD audio. Sistemi audio digitali sound quality 11 bandwidth mode bitrate reduction ratio telephone sound 2.5 kHz mono 8 kbps * 96:1 better than short wave 4.5 kHz mono 16 kbps 48:1 better than AM radio 7.5 kHz mono 32 kbps 24:1 similar to FM radio 11 kHz stereo 56...64 kbps 26...24:1 near-CD 15 kHz stereo 96 kbps 16:1 CD >15 kHz stereo 112..128kbps 14..12:1 *) Fraunhofer IIS uses a non-ISO extension of MPEG Layer-3 for enhanced performance ("MPEG 2.5") Tabella 1.2. Livelli di qualità percepita in funzione del fattore di compressione Forse sospinti dall’entusiasmo nei confronti della propria creatura, forse indotti da motivazioni promozionali, o magari solamente un po’ duri d’orecchio, i signori della Fraunhofer hanno decisamente sovrastimato le loro valutazioni contribuendo a creare la diatriba tra puristi audiofili, i quali rifuggono l’Mp3 nel modo in cui un antiquario teme le tarme, e oltranzisti Mp3, principalmente teenagers, i quali dell’Mp3 apprezzano principalmente la maneggevolezza in termini di chilobytes… Come spesso accade la verità sta nel mezzo, e se da un lato è vero che basta un impianto con discrete prestazioni per percepire le differenze tra una file audio non compresso ed uno compresso in “qualità CD” a 128 kbps, dall’altro è altrettanto vero che un buon encoder può creare file indistinguibili anche all’orecchio più attento già a 224 / 256 kbps. Si tratta, naturalmente, di una valutazione assolutamente sommaria, non essendo specificato né l’encoder né il tipo di segnale né le apparecchiature di riproduzione, ma generalmente vera. La contesa pro-Mp3 / anti-Mp3 è destinata a protrarsi per qualche anno ancora, dividendo in due opposte fazioni il villaggio globale dell’informatica così Sistemi audio digitali 12 come fece in Italia il dualismo tra Bartali e Coppi negli anni ’50 o quello tra Duran duran e Spandau ballet negli anni ’8016. Come è stato possibile implementare caratteristiche di compressione elevate e al contempo ottenere una buona qualità? I fattori che contribuiscono a questo brillante risultato sono molteplici e correlati tra loro: innanzitutto uno studio accurato della psicoacustica, cioè della scienza che studia l’acustica in termini di percezione umana. In secondo luogo una maggiore versatilità nei confronti della forma del segnale: il segnale acustico ha un maggiore contenuto energetico attorno ad alcune frequenze e minore attorno ad altre. Infine l’implementazione di un algoritmo di compressione entropica lossless finalizzato ad eliminare le ridondanze più “tradizionali”. Le considerazioni di base che conducono ad un accurato studio di modelli psicoacustici per aumentare la compressione muove da due postulati principali: - E’ cosa ben nota che l’orecchio può essere considerato, in termini ingegneristici, alla stregua di un filtro passabanda il cui ingresso è un segnale sotto forma di oscillazione del dielettrico in cui l’orecchio stesso è immerso e la cui uscita è un segnale elettrico collegato direttamente al sistema percettivo umano che risiede nel cervello. La banda passante è (ottimisticamente) stimata tra i 20Hz e i 20kHz. Si tratta di una approssimazione piuttosto grossolana dal momento che le capacità uditive variano da individuo a individuo, e mutano a seconda dell’età: un maschio adulto generalmente non è in grado di percepire suoni oltre i 16 kHz mentre in una donna le facoltà uditive tendono a degradarsi più lentamente. Inoltre la capacità uditiva è generalmente più accentuata tra i 16 Sulla rivalità Coppi/Bartali e su una “Italia anno zero” ridotta in macerie e volonterosa di rinascere e voltare pagina una volta per tutte ha recentemente scritto un piacevole amarcord Leonardo Coen. Si confronti: http://www.repubblica.it/2004/e/rubriche/sulleantichestradedelgiro/co5/co5.html. Per quanto concerne invece la diatriba Duran duran / Spandau ballet, epigoni rivali di quel pop facilone e televisivo che imperversò per un intero decennio; e per quanto concerne gli anni ottanta in generale, i consumistici, disimpegnati anglofili anni ottanta, quegli ultimi ludici anni immediatamente antecedenti alla tardiva consapevolezza di un miracolo italiano effettivamente mai concretizzato; per tutto ciò che riguarda quello strano sberluccicante decennio mi riservo di non dire nulla, giacché a quei tempi ero troppo giovane per ritenermi dotato di una qualche coscienza critica. E poi, a quei tempi, a me piacevano i Pink floyd. Sistemi audio digitali 13 2kHz e i 4 kHz come conseguenza, si pensa, di una mutazione evolutiva relativa al fatto che la voce umana si colloca più o meno in quella medesima banda. - E’ altrettanto noto che il cervello compie un ulteriore filtraggio dei dati in ingresso che riceve dai cinque sensi. Si stima che un cervello sano processi un miliardesimo delle informazioni provenienti dall’apparato sensoriale, trascurando tutto ciò che viene considerato irrilevante o superfluo. In particolare si parla di “mascheratura” in riferimento a questo processo spontaneo di filtraggio delle informazioni. Proprio in virtù del fatto di aver rimosso tutto ciò che l’uomo non sarebbe comunque in grado di sentire tramite una accurata e complessa selezione del contenuto sonoro, gli algoritmi di compressione di questo tipo sono detti “algoritmi percettivi”. Aprendo la scatola Mp3 e volendo dare un’occhiata tanto macroscopica quanto guardare la Terra dalla Luna17, possiamo individuare un certo numero di blocchi logici: - Analisi del segnale in frequenza al fine di determinare la sua distribuzione di energia spettrale. In questa fase il segnale viene suddiviso in un certo numero di sottobande che vengono processate in modo indipendente. 17 La terra vista dalla Luna: uno spettacolo di rara bellezza (www.earth.google.it), ma anche archetipo immaginifico per eccellenza. Basti pensare al primo film della storia del cinema: il “Viaggio nella Luna” di George Méliès, del 1902. Più in generale, metafora del cambio di prospettiva che conduce alla presa di coscienza, da parte dell’essere umano, di una nullità appartenente a un universo infinito e spietato dove antropocentrismo e finalismo sono soltanto risibili assurdità. “…e quando miro Quegli ancor più senz’alcun fin remoti Nodi quasi di stelle, Ch’a noi paion qual nebbia, a cui non l’uomo E non la terra sol, ma tutte in uno, Del numero infinite e della mole, Con l’aureo sole insiem, le nostre stelle O sono ignote, o così paion come Essi alla terra, un punto Di luce nebulosa; al pensier mio Che sembri allora, o prole Dell’uomo?” [G. Leopardi “La Ginestra”] Infine, allegoria di un’altra espressione di sé, oscura eppure non malvagia, tanto lontana dalla realtà quanto vicina alla verità. Si confronti “La terra vista dalla Luna” di Pier Paolo Pasolini http://www.pasolini.net/cinema_terra_vistadallaluna.htm, discusso episodio del film “Le Streghe” nonché (bellissimo) inno alla lunaticità come forma di ribellione. Sistemi audio digitali 14 L’algoritmo di compressione è il medesimo, anche se ottimizzato tramite alcuni parametri per migliorare l’efficienza sottobanda per sottobanda. - Definizione del contenuto di ciascuna sottobanda in base ai parametri di compressione definiti dall’utente (generalmente il bitrate massimo). In questi termini il numero di bit per unità di tempo diventa una risorsa limitata da distribuire tra le varie sottobande in relazione alle loro necessità, cioè proporzionalmente al contenuto energetico percentuale di ciascuna sottobanda. - Definizione del contenuto di ciascuna sottobanda tramite confronto con il modello psicoacustico, generalmente integrato all’interno dell’encoder stesso, come riferimento. Questo blocco logico esegue un’operazione analoga a quella del blocco precedente; in questo caso però la distribuzione dei preziosi bit avviene tramite un criterio differente: il confronto col modello psicoacustico nei termini accennati qualche pagina più su. Viene in questo modo scartato tutto ciò che l’orecchio non può sentire (o che può sentire poco ma ingombra molto…). E’ intuitivo che un buon algoritmo di compressione deve la sua fortuna non solo a una efficiente implementazione di questi ultimi due blocchi, ma anche e soprattutto ad una ottimale interazione tra i medesimi. Nella realtà, infatti, gli encoder Mp3 implementano una iterazione ciclica tra questi due blocchi funzionali dalla quale si esce solamente quando la distribuzione dei bit è ottimale. Resta inteso che ogni valutazione sull’efficienza di un algoritmo a partire dal parametro oggettivo di compressione (il bitrate) non può prescindere da considerazioni di tipo assolutamente personale in funzione, soprattutto, del tipo di segnale audio sorgente: una esecuzione di Rostropovich richiede un trattamento ben diverso rispetto a una schitarrata metal18 di Yngwie J. Malmsteen! 18 Heavy metal. Termine di uso comune identificativo di un genere musicale tanto snobbato da certa critica musicale quanto amato dagli appassionati, caratterizzato da sonorità aggressive costituite da ritmiche incalzanti e spericolati virtuosismi (eminentemente chitarristici). Nonostante la varietà stilistica e di approccio formale alle liriche, l’heavy metal è caratterizzato da un certo numero di tematiche ricorrenti. Fra tutte, l’eterna lotta tra Bene e Male diventa metafora di una dicotomia tra due contrapposte seppur sovrapposte anime umane, una delle quali oscura, nascosta, latente, ma non meno reale. La (discutibile) esaltazione di questo dualismo si innesta su un tessuto sociale discontinuo, disgregato, incomprensibile, e su un materialismo-nichilismo dove Sistemi audio digitali - 15 Codifica di Huffman. Al fine di aumentare ulteriormente il fattore di compressione è utile applicare una codifica lossless, generalmente una codifica di Huffman, che riduca le ridondanze più tradizionali. Tanto per rendere l’idea: un passaggio musicale molto complesso con un elevato livello di polifonia potrà trarre vantaggio dalla codifica percettiva. Una singola nota sostenuta a lungo certamente no. In virtù però dell’elevato tasso di ridondanza, in quest’ultimo caso tornerà utile la codifica di Huffman. Mediamente, la codifica di Huffman permette di risparmiare un altro 20% sulle dimensioni totali del file. - Bitstream. Una volta compresso in tutti i modi possibili il segnale viene suddiviso il pacchetti, detti “frames”, della durata di una frazione di secondo, etichettati con un header di 32 bit. Il file è composto dalla globalità dei pacchetti in forma sequenziale cui viene applicata una “tag”, un’etichetta contenente informazioni di tipo testuale sul contenuto del file medesimo. La tag può essere posizionata all’inizio oppure al termine del file, a seconda del tipo di tag. proprio l’individuo è protagonista e unico/duplice attore. Ciò che ha dato luogo a numerosi equivoci e fraintendimenti. “Abbiamo massacrato quei bastardi al suono della vostra musica” ha raccontato un soldato Americano di ritorno dall’Iraq a un allibito Al Jourgensen, frontman dei Ministry, band di spicco del metal estremo quali precursori, sul finire degli anni ottanta, del cosiddetto industrial-metal, band da sempre critica nei confronti della politica imperialistica occidentale. Infine, paradossalmente, nell’estetica riflessa negli utenti medesimi, potente strumento di aggregazione e condivisione, quantomeno a livello inconscio, di una comune disperazione esistenziale. Comprensibile, e condivisibile, da parte di chi, come me, appartiene alla prima generazione del secolo scorso che non ha mai vissuto una rivoluzione. Per una interessante storia dell’heavy metal si confronti: http://www.anus.com/metal/about/history.html E’ storia che il termine sia stato polemicamente attribuito da un noto critico musicale dell’epoca agli Steppenwolf coll’intenzione di liquidare lo stile musicale grezzo della band, prelevandolo proprio dal loro hit più famoso: “Born to be wild” “I like smoke and lightning Heavy metal thunder Racin' with the wind And the feelin' that I'm under” [Born to be wild, Steppenwolf, 1968] Per quanto già William Burroughs si esprimesse in termini simili già nel 1964: “With their diseases and orgasm drugs and their sexless parasite life forms - Heavy Metal People of Uranus wrapped in cool blue mist of vaporized bank notes - And the Insect People of Minraud with metal music” [Nova express, William Burroughs, 1964] Capitolo 2 Psicoacustica La psicoacustica è la scienza che studia l’acustica percepita dall’orecchio umano. Questo capitolo analizza i concetti fondamentali che vedono applicazione in un algoritmo di compressione audio. 2.1 La psicoacustica L addove l’acustica è per definizione quella scienza che si occupa di studiare le caratteristiche intrinseche delle onde sonore, la psicoacustica si occupa invece della percezione umana del suono. La psicoacustica affonda le proprie basi necessariamente nell’acustica, ma ne sviluppa i contenuti nella direzione di una comprensione il più possibile dettagliata di quali suoni sono percepiti da parte dell’orecchio umano, e in quale modo. Le grandezze di riferimento sono quindi grandezze “percepite” e non assolute. Una (spero) interessante carrellata sulle leggi principali dell’acustica e sul funzionamento dell’orecchio umano è fornita in appendice A. Ciò che segue è una analisi degli aspetti macroscopici della psicoacustica nell’ottica della comprensione del modello percettivo incluso negli algoritmi di compressione audio. La psicoacustica 17 Una quantificazione della intensità del suono percepito viene espressa tramite una grandezza detta SPL (Sound Pressure Level), espressa in dB rispetto ad una grandezza di riferimento. p p2 SPL = 20 log10 1 = 10 log10 12 [dBSPL] p0 p0 dove: - p1 è il valore di pressione sonora relativamente al quale si intende valutare il SPL - p0 è il valore di pressione sonora di riferimento pari a 2 * 10-5 Pascal Il Phon è l’intensità sonora percepita. Alla frequenza di 1 KHz, 1 Phon è definito uguale a 1 dB di SPL al di sopra del valore di riferimento di 2 * 10-5 Pascal, per un segnale a 1 kHz.. Suddetto valore era inizialmente considerato essere la soglia uditiva di riferimento a 1 KHz., definizione obsoleta che verrà chiarita e corretta nel paragrafo successivo. In letteratura (nei testi più obsoleti, in verità) si trova anche l’unità di misura del Sone. 1 Sone = 2 L − 40 10 dove L è espresso in Phon. 2.2 Le curve di Fletcher-Munson Il livello di intensità della sensazione uditiva con suoni sinusoidali, diretti e non diffusi, viene espresso significativamente dalle curve di Fletcher-Munson. In una camera anecoica, scelta come campione del livello di intensità uditiva la sensazione ottenuta con la frequenza di 1000 Hz a un dato livello di pressione sonora (dato oggettivo), il livello di intensità uditiva di un altro suono (dato soggettivo) viene determinato per confronto con il campione; il valore ottenuto viene espresso in Phon. Va aggiunto che le curve risultanti sono di natura soggettiva ma anche statistica, perciò dipendenti da come viene selezionata la popolazione-campione. La psicoacustica 18 Figura 2.1. Le curve di Fletcher-Munson E’ possibile quindi definire (statisticamente), per ogni frequenza udibile, qual è l’intensità sonora necessaria affinché quella frequenza venga percepita di intensità uguale rispetto a quella campione di 1 kHz. Questa analisi può essere ripetuta per diversi livelli di intensità del campione, ottenendo le curve “isofoniche” dette appunto di Fletcher-Munson di figura 2.1. Tutti i punti appartenenti a una curva isofonica sono percepiti dall’uomo con la stessa intensità. Dall’andamento delle curve si osserva che l’orecchio è più sensibile a frequenze tra 1 kHz e 4 kHz. In particolare la sensibilità massima viene raggiunta attorno ai 3.7 kHz. Per una interessante spiegazione di ciò nonché del perché esiste un secondo picco di sensibilità ad una frequenza approssimativamente tripla si veda l’Appendice A. La psicoacustica 19 Le curve sopra riportate fanno riferimento ad una condizione assolutamente ideale e ottimale: camera anecoica e confronto tra due toni continui e diretti. La curva inferiore, denominata MAF (Minimum Audible Field)19, riporta la soglia di udibilità binaurale in un campo frontale di toni puri per persone otologicamente normali di età compresa tra i 18 ed i 30 anni. A 1000 Hz la soglia vale 4,2 dB. Una buona ancorché empirica approssimazione dell’andamento del MAF in funzione della frequenza è determinato dalla formula seguente, in cui la frequenza è espressa in Hertz e la pressione sonora in dB SPL f 0.8 ) − 6.5e Tq ( f ) ≅ 3.64( 1000 f − 0.6 − 3.3 1000 2 f + 10 1000 4 −3 Escludendo patologie specifiche e considerando una esposizione al rumore “normale”, si osserva che la sensibilità dell’orecchio umano varia a seconda dell’età e del sesso. In Figura 2.2 è visualizzata la curva MAF in funzione dell’età e del sesso20. E’ curioso osservare che l’orecchio maschile è decisamente meno sensibile di quello femminile a frequenze superiori ai 2 KHz, mentre è vero l’opposto a frequenze inferiori. E’ opportuno ipotizzare che l’uomo nei secoli abbia sviluppato geneticamente una sorta di protezione naturale nei confronti degli strilli della moglie! 19 In alcuni testi altrimenti denominata ATH (Absolute Threshold of Hearing) fonte: “United States Occupational Health and Environment Control, Standard Number: 1910.95 App F” 20 La psicoacustica 20 Figura 2.2. Minimum Audible Field in funzione dell’età e del sesso E’ interessante osservare che il comportamento delle curve cambia qualora si confronti il solito tono diretto a con un tono diffuso in modo che supponiamo uniforme in tutte le direzioni. Figura 2.3. Differente percezione del tono diffuso vs. tono diretto La psicoacustica 21 In figura 2.3 è mostrato il risultato di un esperimento di questo tipo. La scala riportata sulle ordinate fa riferimento alla pressione sonora reale in rapporto a quella del tono campione. Si osserva che tra gli 1.5 e i 4 kHz è necessaria una pressione minore del tono diffuso rispetto ad tono campione di analoga frequenza per avere uguale percezione, mentre al di fuori di questo intervallo è vero l’opposto. 2.3 Bande critiche Le curve di Fletcher-Munson sono valide per i toni puri. Per la determinazione della curva del livello di intensità acustica percepita prodotta da un suono composto da una banda di frequenze si faccia riferimento alla figura 2.4. Figura 2.4. Bande critiche: banda di frequenze Figura 2.5. Intensità percepita in funzione della larghezza di banda La psicoacustica 22 Si consideri un segnale il cui contenuto in frequenza sia uniformemente distribuito all’interno di una banda, e si ipotizzi che l’energia sonora complessiva sia la medesima, risultando in valore massimo decrescente, al crescere della banda di segnale. Il risultato di questa esperienza è visibile in figura 2.5: fino ad una certa ampiezza di banda l’intensità percepita è la medesima; da un certo punto in relativo Largh. di banda banda Larghezza di centrale Frequenza banda Numero di relativo Largh. di banda banda Larghezza di centrale Frequenza banda Numero di poi invece comincia a crescere, in funzione della larghezza di banda stessa. N Fc B B/Fc N Fc B B/Fc 1 25 50 2 15 1853 235 0,1269 2 73 45 0,6207 16 2155 370 0,1717 3 118 45 0,383 17 2530 380 0,1502 4 188 95 0,5067 18 3000 560 0,1867 5 283 95 0,3363 19 3560 560 0,1573 6 375 90 0,24 20 4265 850 0,1993 7 490 140 0,2857 21 5065 750 0,1481 8 610 100 0,1639 22 5908 935 0,1583 9 730 140 0,1918 23 7033 1315 0,187 10 870 140 0,1609 24 8533 1685 0,1975 11 1033 185 0,1792 25 10500 2250 0,2143 12 1195 140 0,1172 26 13500 3750 0,2778 13 1383 235 0,17 27 17813 4875 0,2737 14 1618 235 0,1453 Tabella 2.1. Le 27 bande critiche della psicoacustica: caratteristiche La larghezza della banda all’interno della quale vengono mantenute le medesime caratteristiche di percezione è detta “banda critica”. A 1000 Hz la banda critica è di circa 160 Hz.. Si può dividere lo spettro sonoro in 27 bande critiche a cui corrispondono altrettante frequenze critiche. La larghezza di La psicoacustica 23 ciascuna banda critica è crescente con la sua frequenza di centro banda. In tabella 2.1 sono mostrate le caratteristiche principali delle 27 bande psicoacustiche21. 2.4 Altezza sonora soggettiva Si definisce “altezza sonora soggettiva” un ordinamento di suoni dal basso verso l’alto, in termini di contenuto frequenziale, L’unità di misura che fa riferimento a questa grandezza è il Mel, definito semplicemente come la frequenza percepita. In figura 2.6 è illustrato il cosiddetto “Diagramma di Stevens” che quantifica la frequenza percepita in funzione della frequenza reale. Figura 2.6. Diagramma di Stevens Si tratta di una curva ricavata empiricamente e rielaborata statisticamente, in camera anecoica: si fanno ascoltare a un opportuno campione di persone due toni puri generati da oscillatori elettronici, uno a frequenza molto bassa L ed un ad una 21 Si confronti D. Y. Pan, "Digital Audio Compression", Digital Technical Journal Vol. 5/ No. 2, Spring 1993 La psicoacustica 24 frequenza definita F. Si chiede poi a ciascuna persona di generare tramite un terzo oscillatore un tono che secondo lei si collochi a metà tra i il tono L e il tono F. Fino approssimativamente ad 2 kHz la risposta è lineare con la frequenza media reale (L+F)/2; oltre i 2 Khz la risposta sarà generalmente inferiore a (L+F)/2. E’ importante osservare che le bande critiche hanno un contenuto approssimativo di 100 Mel ciascuna. Figura 2.7. Legame tra altezza sonora soggettiva e bande critiche Si tratta di una curva ricavata empiricamente e rielaborata statisticamente, in camera anecoica: si fanno ascoltare a un opportuno campione di persone due toni puri generati da oscillatori elettronici, uno a frequenza molto bassa L ed un ad una frequenza definita F. Si chiede poi a ciascuna persona di generare tramite un terzo oscillatore un tono che secondo lei si collochi a metà tra i il tono L e il tono F. Fino approssimativamente ad 2 kHz la risposta è lineare con la frequenza media reale (L+F)/2; oltre i 2 Khz la risposta sarà generalmente inferiore a (L+F)/2. E’ importante osservare che le bande critiche hanno un contenuto approssimativo di 100 Mel ciascuna. In figura 2.7 è mostrato il legame dell’altezza sonora soggettiva con le bande critiche: si osserva facilmente che ad ogni banda corrisponde un incremento di circa 1 Bark22. 22 Unità di misura in stato di avanzata obsolescenza: 1 Bark = 100 Mel La psicoacustica 25 2.5 Effetto mascheratura Empiricamente, si è osservato che l’intensità sonora percepita complessiva dipende fortemente dalle distanza in Mel tra i toni. In altre parole: un segnale sonoro composto da più toni contemporanei è percepito come una predominanza del tono più intenso nei confronti di quello più debole. Ad esempio: - due toni a 13 Sone appartenenti alla 2° e 12° banda critica rispettivamente vengono percepiti come un suono a 26 Sone. - due toni a 13 Sone appartenenti alla 7° e 9° banda critica rispettivamente vengono percepiti come un suono a 19 Sone. - due toni a 13 Sone appartenenti entrambi all’ 8° banda critica vengono percepiti come un suono di appena 16 Sone. Figura 2.8. Alterazione subita dalla curva MAF di Fletcher-Munson in presenza di più toni L’entità di questo fenomeno dipende dalla frequenza di riferimento (la frequenza del tono più intenso) e dal livello di pressione sonora. Questo fenomeno prende il nome di ‘mascheratura in frequenza’. La psicoacustica 26 In figura 2.8 è mostrata l’alterazione subita dalla curva MAF di FletcherMunson in presenza di più toni. In presenza del tono S0 la soglia di udibilità MAF viene alterata in modo significativo. Il tono s1, altrimenti udibile in circostanze di quiete, in presenza di s0 scende al disotto della soglia di udibilità MAF e non viene più udito dall’orecchio. Il suono SL viene ancora percepito ma in maniera minore rispetto al caso di quiete. Figura 2.9. Curve di attenuazione di pre-mascheratura e post-mascheratura Un fenomeno del tutto analogo ha luogo nel dominio duale del tempo: un tono intenso ha la facoltà di mascherare toni più deboli percepiti nelle immediate vicinanze temporali del tono dominante. Qualora il tono debole precede temporalmente il tono dominante si parla di pre-mascheratura: Si parla invece di post-mascheratura nel caso opposto. E’ opportuno osservare che i periodi di premascheartura e post-mascheratura sono significativamente differenti. Nella fattispecie l’intervallo di post-mascheratura è approssimativamente 8 volte più lungo (circa 160 ms contro circa 20ms). Le aree grigie in figura 9 mostrano le curve di attenuazione generate dai due intervalli summenzionati. La durata di questi intervalli ha anche una debole dipendenza dalla frequenza del tono I segnali audio generici sono caratterizzati da uno spettro estremamente complesso e da una quantità innumerevole di scenari di mascheratura. La psicoacustica 27 Nell’ambito della codifica audio compressa lo studio di questi fenomeni diventa di vitale importanza per una buona riuscita. Si identificano tre scenari differenti: - Rumore maschera tono. Un rumore a banda stretta (1 Bark) maschera un tono nella medesima banda critica. Il rapporto segnale-rumore tra il tono e la soglia di mascheratura (SMR) è minimo quando la frequenza del tono è uguale alla frequenza centrale della banda di rumore. Il SMR minimo varia nel range da -5 dB a +5 dB - Tono maschera rumore. Un tono puro che si colloca al centro di una banda critica maschera il rumore di qualunque sottobanda Il SMR minimo avviene quando la frequenza del tono è vicina al centro della banda di rumore. Il SMR minimo, in questo caso, è nel range di 21 – 28 dB - Rumore maschera rumore. Scenari di rumore mascherato da rumore sono più difficili da concettualizzare in virtù della complicata correlazione tra i due segnali. Alcuni risultati hanno dimostrato che il SMR si colloca attorno ai 26 dB Un altro importante aspetto della psicoacustica riguarda la percezione della direzionalità in funzione della frequenza. Si è dimostrato che a frequenze ai limiti della banda uditiva, la direzionalità percepita è molto inferiore che a centro banda. Alcuni algoritmi di compressione sfruttano questa caratteristica dell’orecchio umano per comprimere ulteriormente il segnale sonoro. Capitolo 3 L’algoritmo di compressione Mp3 Questo capitolo illustra lo schema a blocchi di un algoritmo di compressione Mp3 e analizza nel dettaglio i singoli blocchi. 3.1 Caratteristiche generali L’ algoritmo di compressione MPEG rappresenta il primo standard internazionale di compressione audio ad alta fedeltà operante per segnali audio generici. Altri algoritmi di compressione audio precedenti facevano riferimento ad applicazioni dedicate quali la codifica di segnali vocali oppure di segnali generici a media fedeltà. - Algoritmo CELP (Code excited Linear prediction (CELP). E’ un algoritmo di codifica relativo al parlato. La sua efficacia è dovuta a una serie di assunzioni relative al contenuto del segnale da processare. - Algoritmo a legge-µ. E’ un algoritmo di codifica piuttosto semplice in grado di mantenere una discreta fedeltà del segnale. Non è possibile L’algoritmo di compressione Mp3 29 mantenere l’indistinguibilità col segnale non compresso, prerogativa dell’alta fedeltà. - Algoritmo ADPCM (Adaptive Differential Pulse Code Modulation). E’ un algoritmo basato sul una variante PCM-delta adattiva della codifica PCM dei segnali non compressi. Anche in questo caso è possibile mantenere una discreta fedeltà del segnale ma non è possibile mantenere l’indistinguibilità in termini percettivi col segnale non processato. L’algoritmo di compressione MPEG audio non è univoco. Esso unisce le due contrapposte filosofie di uniformità e flessibilità. - Uniformità laddove sia necessaria interazione. Ad esempio: l’algoritmo è rigido nella sintassi del bitstream codificato, nella definizione del processo di decodifica e delle procedure necessarie a definire l’accuratezza del decoder stesso. Questa scelta è finalizzata alla possibilità, o meglio, necessità che ogni decoder conforme MPEG audio possa processare correttamente un bitstream MPEG audio senza errori. E’ un dato di fatto che oggi ogni applicazione di riproduzione audio digitale debba fare i conti con questo standard. - Flessibilità laddove l’iniziativa personale e la ricerca permettano miglioramenti continui. E’ il caso dell’algoritmo di codifica che, basandosi su elementi di elaborazione dei segnali e analisi psicoacustica, è a tutt’oggi un work-in-progress nelle mani di svariati team di sviluppo. Trattandosi di un algoritmo di compressione per segnali audio generici, MPEG audio offre una vasta panoramica di modalità di compressione diverse: - Frequenza di campionamento audio: 32 kHz, 44.1 kHz e 48 kHz. In base al teorema di Nyquist significa ottenere in uscita un segnale con cutoff a 16 kHz, 22.05 kHz e 24 kHz rispettivamente. Ricordando che il limite superiore della banda uditiva è circa 20 kHz, risulta abbastanza facile L’algoritmo di compressione Mp3 30 comprendere il motivo per cui la frequenza di campionamento a 44.1 kHz sia divenuta lo standard per i CD audio23. - Canali audio: due canali in stereofonia utilizzabili in 4 differenti modalità: o Modo monofonico per segnali audio a canale singolo o Modo stereofonico per segnali audio a due canali indipendenti o Modo stereofonico con condivisione dei bit per segnali audio a due canali con una certa correlazione o Modo “joint-stereo” per segnali audio a due canali con una certa correlazione e considerando l’irrilevanza di fase tra i due canali24 - Bitrate: sono disponibili parecchi valori di bitrate da 32 kbps per canale a 224 kbps per canale con un risultato in termini di fattore di compressione da 2.7 a 24. In aggiunta è presa in considerazione una modalità detta “free bitrate” che permette allo sviluppatore dell’encoder di implementare una bitrate differente da quelle standard - Strati di compressione (“layers”). Sono permessi tre differenti strati di compressione facenti riferimento a tre differenti algoritmi o Layer 1. Fa riferimento all’algoritmo di compressione più semplice, che utilizza un bitrate fisso a 192 kbps per canale. Un esempio di applicazione di questo tipo è il Digital Compact Cassette Philips (DCC) o Layer 2. Fa riferimento ad un algoritmo di compressione intermedio, utilizzato da varie applicazioni quali Digital Audio Broadcasting (DAB), CD-I (Compact Disc Interactive) e Video CD 23 Alcune applicazioni audio successive, come il DAT, utilizzano una frequenza di campionamento leggermente ridondante di 48 kHz. Questo aspetto è giustamente tenuto in considerazione dallo standard MPEG 24 Chiunque abbia sperimentato un sistema audio 5+1 avrà certamente osservato che a differenza delle casse satellite, altamente direzionali, il subwoofer ha una posizione generalmente irrilevante nella dinamica della fedeltà sonora. Il motivo è dovuto al fatto che l’orecchio umano è insensibile alla provenienza delle sorgenti sonore molto alte e molto basse (agli estremi, cioè della banda uditiva). Alla luce di ciò l’effetto joint-stereo si perita di combinare il contenuto sonoro dei due canali destro e sinistro in un'unica traccia riducendo di fatto della metà il contenuto in bit. Alcuni encoder introducono una certa quantità di informazione aggiuntiva finalizzata a collocare spazialmente i toni alti e bassi, ovviamente con un certo grado di approssimazione, alla fine di ricrearne parzialmente la direzionalità. Questa funzionalità è particolarmente utile all’estremità alta dello spettro di basse frequenze, dove l’orecchio comincia ad avere una certa sensibilità alla locazione spaziale dei suoni. L’algoritmo di compressione Mp3 31 o Layer 3. Fa riferimento all’algoritmo di compressione più complesso, altrimenti noto come Mp3. - Codice per la rivelazione di errori. Il bitsream supporta in opzione il CRC (Cyclic Redundancy Check) - Dati aggiuntivi. E’ previsto l’eventuale inserimento di dati aggiuntivi (“ancillary data”), da trattare separatamente al bitstream stesso. 3.2 Lo schema a blocchi Figura 3.1. Schema a blocchi di un encoder Mp325 La figura 3.1 schematizza il funzionamento di un encoder Mp3, evidenziando gli schemi a blocchi principali. - Filter bank. Il banco di filtri ha la funzione di suddividere il segnale PCM in ingresso in 32 sottobande di egual dimensione. Esso consiste in un 25 Lo schema proviene dal sito http://www.iis.fraunhofer.de L’algoritmo di compressione Mp3 32 ibrido tra un banco di filtri polifase e una MDTC (Modified Discrete Cosine Transform). - Perceptual model. Il modello psicoacustico è l’elemento principale che determina la bontà dell’encoder. Analizza in ingresso il flusso di dati non compresso e definisce in uscita, per ciascuna sottobanda, il valore massimo accettabile di rumore di quantizzazione ad sotto del quale il segnale è “ben codificato” e (teoricamente) indistinguibile da parte dell’orecchio umano. A valle di questo blocco vi è il blocco di quantizzazione e codifica, che si occuperà di rispettare questi valori di soglia. - Joint stereo. La funzione di questo blocco è quella di implementare la modalità “joint-stereo” che opera sulle sottobande più alte e più basse nella quale, lo ricordo, il contenuto delle due canali destro e sinistro viene fuso per acquistare efficienza a scapito della perdita di direzionalità su suddette sottobande. - Scale factors / Quantizer / Noiseless coding. L’algoritmo di quantizzazione e codifica consiste nella iterazione di due differenti blocchi, annidati l’uno nell’altro. Il blocco più interno è costituito da: o Scale factors. Questo blocco imposta il fattore di scala per la quantizzazione, cioè il numero di livelli di quantizzazione. E’ il parametro principale che determina la “grossolanità” della quantizzazione sul quale agire per variare il trade-off compressione/qualità o Quantizer. Si utilizza un quantizzatore a legge esponenziale. In questo modo, il contenuto a frequenze più alte è quantizzato più grossolanamente. o Noiseless coding. I valori quantizzati sono ulteriormente compressi tramite codifica di entropica, che assegna parole più brevi ai valori più frequenti Al termine di questa serie di operazioni viene controllato il bitrate risultante. Se questo è superiore al bitrate target assegnato dal loop più esterno il ciclo L’algoritmo di compressione Mp3 33 interno viene reiterato con un fattore di scala maggiore che renderà più “grossolano” il quantizzatore ma che risulterà in un bitrate finale minore. Quando il bitrate target è stato ottentuto interviene il ciclo più esterno, composto dal Rate/distortion control process. Questo controlla il rumore di quantizzazione di ciascuna sottobanda. Se il rumore è maggiore della soglia definita dal modello psicoacustico è necessario ridefinire i bitrate per ciascuna banda e reiterare il ciclo interno, che modificherà di nuovo i fattori di scala per convergere nuovamente al bitrate target - Bitstream multiplex. Si tratta della fase finale, in cui i campioni compressi sono già stati definiti e generati. Questo blocco si occupa di generare il bitstream in conformità al protocollo definito dalla norma. 3.3 Il banco di filtri La funzione del banco di filtri è quella di suddividere il segnale in 32 sottobande di egual dimensione. Si tratta di un filtro di relativa semplicità con una buona risoluzione temporale ed una adeguata risposta in frequenza. Tenendo in considerazione il dominio di applicazione vi sono tre aspetti principali, che ne limitano le prestazioni: - L’equidimensionalità delle bande non rispecchia accuratamente il comportamento dell’orecchio umano nel dominio delle frequenze. Il comportamento in termini di percezione dell’orecchio umano è funzione di 27 bande critiche. Molti effetti psicoacustici sono prerogativa di una o più bande critiche. In figura 3.2 è mostrata una comparazione qualitativa tra le 32 sottobande generate dal filtro polifase e le bande critiche psicoacustiche. A basse frequenza si nota facilmente che una sottobanda fa riferimento a parecchie bande critiche psicoacustiche, ciascuna con una propria peculiarità. In questo caso non è possibile una sintonizzazione ottimale tra sottobanda e modello psicoacustico; anzi, la sottobanda dovrà fare riferimento alla banda critica con il minor rumore di mascheratura, il che si traduce in uno spreco di bit. Oppostamente, ad alte frequenze in cui L’algoritmo di compressione Mp3 34 più sottobande corrispondono ad una sola banda critica il problema non si pone. Figura 3.2. Sottobande del banco di filtri vs. bande critiche psicoacustiche26 - La trasformazione del segnale operata dal banco di filtri non è oggettivamente lossless, pertanto anche senza quantizzazione non sarebbe possibile ricostruire perfettamente il segnale. L’errore introdotto dal banco di filtri è comunque trascurabile in quanto trasparente all’orecchio umano. - Le bande non sono perfettamente adiacenti e separate; sono invece sovrapposte, pertanto medesime porzioni di segnale possono essere collocate in due sottobande differenti. Lo standard ISO MPEG audio descrive la procedura di computazione del banco di filtri polifase27. Nello stesso frame vengono filtrati 1152 campioni audio PCM, così che ciascuna sottobanda contiene 36 campioni, In figura 3.3 è fornita 26 Si confronti D. Y. Pan, "Digital Audio Compression", Digital Technical Journal Vol. 5/ No. 2, Spring 1993 27 Lo standard MPEG audio si basa sul metodo descritto da J.H. Rothweiler in “Polyphase Quadrature Filters – a New Subband Coding Technique”, Proc of the Int. Conf. IEEE ASSP, 27.2, pp 1280-1283, Boston, 1983. Si confrontino anche Phil Schitner in http://cnx.rice.edu/content/m10931/latest/#footnote1 e l’Appendice B di questa tesi. L’algoritmo di compressione Mp3 35 una chiara rappresentazione a blocchi del banco di filtri polifase utilizzato, mentre in figura 3.4 è rappresentato il diagramma di flusso esplicativo del funzionamento. Figura 3.3. Il banco di filtri polifase Mp3 Figura 3.4. Diagramma di flusso di un banco di filtri polifase Mp3 L’algoritmo di compressione Mp3 36 Come illustra la figura 3.4 il filtro funziona con un buffer FIFO di 512 campioni. Ad ogni step vengono inseriti 32 campioni. Essi vengono moltiplicati per 512 coefficienti definiti nello standard ISO MPEG e raggruppati in 64 somme di 8 elementi distanti 64 posizioni l’uno dall’altro. I 64 coefficienti ottenuti vengono così modulati tramite una matrice di analisi Mi,k risultando in 32 campioni in uscita, ciascuno appartenente ad una delle 32 sottobande. Il segnale in uscita è quindi: 63 st [i] =∑ k =0 7 ∑ M [i][k ] * (C[k + 64] * x[k + 64 j]) j =0 (1) dove: - i è l’indice di ciascuna sottobanda (varia da 1 a 32) - st[i] è il campione in uscita dal banco di filtri nell’istante temporale t. E’ opportuno osservare che t = 32/r dove r è la frequenza di campionamento - C[n] è l’n-esimo coefficiente della finestra di analisi - x[n] è il segnale in ingresso letto nella posizione n-esima del buffer, all’istante t - M[i][k] è la matrice dei coefficienti di analisi definita come: M [i ][k ] = cos[ (2 * i + 1) * (k − 16) * π ] 64 (2) L’equazione (1) è ottimizzata in termini di step di computazione: essendo il termine tra parentesi tonde indipendente dal valore di i, ed essendo la matrice M[i][k] indipendente da j, per ottenere l’uscita del filtro è necessario fare 512+32*64 = 2560 moltiplicazioni e 64*7+32*63 addizioni, cioè circa 80 somme e 80 moltiplicazioni per ciascun campione di ciascuna sottobanda. Per capire meglio la natura dell’equazione (1) è possibile ottenere, tramite alcuni passaggi matematici: L’algoritmo di compressione Mp3 37 511 st [i ] = ∑ x[t − n] * H i [n] n =0 (3) dove: - x[τ] è il campione in ingresso nell’istante τ = t-n - H i [n] = h[n] * cos[ - − C[n] se la parte intera di (n/64) è dispari con h[ n] = se la parte intera di (n/64) è pari C[n] (2 * i + 1) * (n − 16) * π ] 64 (4) (5) L’equazione scritta nella forma (3) non è ottimizzata in termini di step di computazione dal momento che sono necessari3 32*512 = 16384 moltiplicazioni e 32*511 = 16352 addizioni. Permette però di comprendere meglio la natura del filtro in questione. Si tratta di un banco di filtri Hi[n] convoluzionali, ciascuno riferito alla i-esima sottobanda (per i=1 to 32, ovviamente). Si tratta di un banco di filtri polifase. Infatti ciascun filtro Hi[n] è passabanda, costituito da - un filtro banda base FIR (Finite Impulse Response) la cui risposta all’impulso è h[n] - un termine in coseno (4) che opera lo spostamento nella opportuna banda di frequenza Gli Hi[n] hanno frequenza di centro banda in multipli dispari di (πr)/64 dove r è la frequenza di campionamento e hanno una banda nominale di (πr)/32. Alcune considerazioni: - Aliasing. In virtù del pesante sottocampionamento operato dal filtro (da 32 campioni per il segnale in ingresso a 1 campione per ciascuna sottobanda del segnale in uscita). Non è possibile rimuovere completamente il rumore di aliasing, ma è possibile dimensionare i coefficienti C[n] del filtro in L’algoritmo di compressione Mp3 38 modo da ottimizzare la risposta in frequenza complessiva28. Per queste ragioni il filtro non è oggettivamente lossless, ma è comunque possibile controllare la distorsione introdotta in modo che essa sia impercettibile all’orecchio umano. Figura 3.5. Ampiezza del filtro FIR in banda base - Cutoff. In figura 3.5 è mostrata, invero con scarsa precisione, l’ampiezza del filtro h[n] normalizzata. Si può in ogni caso osservare che il cutoff non è molto ripido in prossimità del valore nominale. Ciò implica una consistente sovrapposizione di sottobande adiacenti. Un tono vicino al confine tra due sottobande risulterà, in uscita, parte di entrambe, con differenti contenuti di energia. La figura 3.6 mostra come un tono a 28 Si confrontino: Henrique S. Malvar: “Signal Processing With Lapped Transforms” (Artech House: Norwood MA, 1992) - John P. Princen e Alan B. Bradley: “Analysis/synthesis filter bank design based on time domain aliasing cancellation", IEEE Trans. Acoust. Speech Sig. Proc. ASSP-34 (5), pp. 1153-1161 (1986) - A.W. Johnson and A. B. Bradley: “Adaptive transform coding incorporating time domain aliasing cancellation" Speech Comm. 6, 299-308 (1987). - L’algoritmo di compressione Mp3 39 1.5kHz campionato a 32 kHz sviluppi, una volta trasformato, un contenuto di energia consistente nella sottobanda adiacente a quella di appartenenza. Ogni componente in frequenza del segnale in ingresso influenza due sottobande adiacenti in uscita al banco di filtri. Considerando alla stregua di segnale la componente contenuta all’interno della sottobanda originaria e aliasing la componente di segnale contenuta nella banda adiacente, è possibile compensare quest’ultima all’interno di ciascuna sottobanda sottraendovi la componente di segnale del filtro adiacente moltiplicata per un opportuno fattore di scala. Questo compito viene espletato dalla h[n] così come definito nella (5). Figura3.6. Trasformazione di un tono vicino al confine tra due sottobande L’algoritmo di compressione Mp3 40 In Appendice B è descritto un tipico filtro polifase. Ciascuna sequenza di 36 campioni appartenenti a ciascuna delle 32 sottobande viene quindi mappata in una Trasformata Discreta a Coseni Modificata (MDCT). La (6) mostra la formula della MDCT29: [( )( 1 n=1 yk = ∑ f j cos j + 1 k + 1 + n 2 2 2 n j =0 )] (6) Prima della MDCT medesima, quattro differenti finestre vengono applicate a ciascuna sequenza. Lo standard MPEG-1 layer 3 specifica due finestre lunghe da 18 campioni e due corte da 6 campioni. Se la sequenza mostra un comportamento stazionario, allora viene applicata la finestra lunga (tipo 0); in caso contrario, cioè in presenza di transitori significativi, viene applicata la finestra corta (tipo 2) in modo da aumentare la risoluzione temporale a scapito della risoluzione in frequenza ed eliminare eventuali effetti pre-eco. Le altre due finestre utilizzate sono le cosiddette finestra di inizio e finestra di termine. Si osserva che la finestra corta è un terzo della finestra lunga e, in presenza di transitori, viene applicata tre volte consecutivamente in modo che il numero di campioni MDCT all’interno della medesima sottobanda rimanga il medesimo. All’interno di un frame audio la MDCT può avere soltanto blocchi lunghi, oppure soltanto blocchi corti, oppure una modalità mista. La modalità mista prevede una finestra lunga per le due sottobande a più bassa frequenza e tre finestre brevi per le rimanenti 30 sottobande. Le funzioni che descrivono le finestre sono descritte dalle formule sottostanti: 1) Blocco 0 (finestra lunga) ( ) π f j = xi sin i+ 1 2 36 2) Blocco 1 (finestra di inizio) 29 Si confronti l’appendice C di questa tesi. i = 0 → 35 (7) L’algoritmo di compressione Mp3 ( 41 ) π 1 x sin i 36 i + 2 xi fj = xi sin π i − 18 + 1 2 12 0 ( ) i = 0 →17 i =18→23 i = 24→29 i = 30→35 (8) 3) Blocco 2 (finestra corta) ( ) π f j = xi sin i + 1 2 12 i = 0 → 11 (9) 4) Blocco 3 (finestra di arresto) 0 π 1 x sin i 12 i − 18 + 2 fj = xi x sin π i + 1 2 i 33 ( ) ( ) i = 0 →5 i = 6 →11 i = 12 →17 i = 18→35 (10) Come detto, in presenza di un segnale eminentemente stazionario, lo stato di default è il tipo 0. Le transizioni verso lo stato 2 e indietro allo stato 0 avvengono tramite due stati intermedi 1 e 3 secondo il diagramma di stato in figura 3.7. la funzione degli stati intermedi è quella di preservare la proprietà di perfetta ricostruibilità della MDCT. Le transizioni da uno stato all’altro vengono sollecitate da un segnale attack / no attack che proviene dal modello psicoacustico. In particolare, il segnale attack viene generato quando la grandezza PE (entropia percettiva) è superiore al valore empirico di 1800. Il significato della grandezza PE è ampiamente illustrato nel paragrafo successivo. L’algoritmo di compressione Mp3 42 Figura 3.7 – Diagramma di stato del blocco MDCT 3.4 Il modello psicoacustico In virtù della sua natura limitata in tempo e frequenza, il meccanismo uditivo umano è (estremamente) selettivo. Al cervello umano giunge solamente una parte dello stimolo sonoro iniziale. Si definisce PE una quantità denominata entropia percettiva. Si tratta del minimo numero di bit necessario per rappresentare la parte rilevante del segnale audio; escludendo pertanto il rumore e la parte di segnale mascherata. Utilizzando al meglio un numero di bit pari al PE l’algoritmo, sì, è lossy, ma è trasparente dal punto di vista percettivo. Il compito di questo blocco dell’algoritmo di compressione consiste proprio nel determinare, per ciascuna banda critica, le soglie di mascheratura al di sotto delle quali è possibile scartare le componenti di segnale e rumore. Vediamo come. L’energia di segnale contenuta all’interno di ciascuna banda critica è definita come: L’algoritmo di compressione Mp3 43 bh Bz = ∑ P( f ) f =blz (11) Dove: - blz e bhz sono rispettivamente i limiti in frequenza della z-esima banda critica. - P(f) = Re2(f) + Im2(f) è lo spettro di potenza del segnale La funzione di eccitazione della membrana base posta nella coclea dell’orecchio interno, per ciascuna banda critica z, si può descrivere come convoluzione di due grandezze: C z =Bz * SpFz (12) Dove: - Bz è l’energia di segnale all’interno della banda critica z - SpFz è la funzione di distribuzione di risposta dell’eccitazione a un singolo tono per una banda critica z Nel caso del modello psicoacustico utilizzato nel MPEG layer 3 (Mp3) la SpFz è una funzione triangolare indipendente dalla frequenza con una pendenza di 25 dB/Bark a basse frequenze e -10dB/Bark ad alte frequenze. Analiticamente: SpF ( z ) = 15.81 + 7.5( z + 0.474) − 7.5 1 + ( z + 0.474) 2 (13) La soglia di mascheratura si determina sottraendo un offset dalla funzione di eccitazione Cz. Come evidenziato nel capitolo 2, la soglia di mascheratura dovuta a un tono è ben differente dalla soglia di mascheratura dovuta a un rumore a banda stretta. Pertanto il valore dell’offset è fortemente dipendente da quale dei due fenomeni si stia verificando. Le due soglie si possono calcolare in questo modo: THN = ET – OT THT = EN – ON Dove: L’algoritmo di compressione Mp3 - 44 ET è l’energia del tono ‘mascherante’ all’interno della banda critica presa in considerazione - EN è l’energia del rumore ‘mascherante’ all’interno della banda critica presa in considerazione - OT = (14.5 + z) è l’offset in caso di mascheratura di tono - ON = K è l’offset in caso di mascheratura di rumore. Tipicamente, un valore compreso tra 3 e 5 dB Per determinare quale dei due casi si stia verificando in quel momento all’interno banda critica z, è opportuno definire un parametro che quantifichi la piattezza dello spettro di segnale. Sia SFM (Specral Flatness Measurement): SFM = µg µa dove µg e µa sono rispettivamente la media aritmetica e geometrica del segnale. E’ intuitivo osservare che valori di SFM vicini a zero coincidono con uno spettro a banda stretta, di natura tipicamente tonale, mentre valori vicini a uno sono indicativi di spettro piatto, cioè rumore. Traslando nella scala dB, otteniamo un più intuitivo coefficiente di tonalità definito come: α = min( SFM dB ,1) − 60 Ora, le componenti tonali hanno valori vicino all’unità mentre componenti di rumore hanno valori vicino a zero. A questo punto, l’offset relativo a una determinata banda critica z è definibile come Oz = αOT+(1-α)ON = α(14.5 + z) + (1-α)K [dB] (14) Si osserva quindi che l’offset di mascheratura è funzione del numero di banda critica e del coefficiente di mascheratura di rumore, entrambi pesati con il coefficiente di tonalità. L’algoritmo di compressione Mp3 45 Nel modello ISO/MPEG, la soglia di mascheratura per ciascuna banda critica z è definita come: C Tz = max[ Ozz ; Tq ( z )] 10 10 (14) Dove: - Cz rappresenta la funzione di eccitazione relativa alla banda critica z - Oz rappresenta l’offset relativo alla banda critica z - Tq(z) è il MAF (minimum audible field) come definito nel paragrafo 2.3 La soglia di mascheratura Tz testé calcolata è l’estremo superiore al di sopra del quale il rumore di quantizzazione diventa percepibile dall’orecchio umano. 3.5 Il quantizzatore La soglia di mascheratura Tz, calcolata nel dominio Bark, permette di calcolare la potenza di mascheratura in funzione della frequenza, nel seguente modo: Pm ( f ) = Tz 2(bhz − blz ) (15) Dove: - Tz è la soglia di mascheratura - bhz e blz sono i limiti superiore/inferiore in frequenza della banda critica z Il fattore 2 al denominatore proviene dal fatto che la FFT è una operazione nel dominio dei numeri complessi. In un quantizzatore uniforme, se supponiamo che il quantizzatore abbia un numero di livelli di quantizzazione abbastanza grande da poter considerare uniforme il rumore all’interno di ciascun livello di quantizzazione, la potenza del rumore di quantizzazione è definibile come L’algoritmo di compressione Mp3 46 ∆2 σ = 12 2 Condizione (16) necessaria affinché l’algoritmo di compressione sia percettivamente trasparente, è che: σ 2 ≤ Pm ( f ) (17) Cioé ∆n ( f ) ≤ 6Tz bhz − blz (18) Questa formula può essere utilizzata iterativamente per variare gli step di quantizzazione fino a quando non si ottiene una soddisfazione ottimale dell’equazione (18) Il numero richiesto di livelli di quantizzazione vale: Re( f ) LRe ( f ) = int ∆ ( ) f n Im( f ) LIm ( f ) = int ∆ ( f ) n Supponendo di utilizzare un quantizzatore uniforme il numero di bit per la parte reale e immaginaria del segnale diventa bRe ( f ) = log 2 (2 LRe ( f ) + 1) bIm ( f ) = log 2 (2 LIm ( f ) + 1) Per una FFT a N elementi, il numero totale di bit necessari per quantizzare tutti gli elementi con un rumore di quantizzazione inferiore alla soglia di mascheratura è pari a: N ∑ (b f =1 Re ( f ) + bIm ( f ) ) L’algoritmo di compressione Mp3 Figura 3.8. Differenti PE in funzione del segnale in ingresso Pertanto la PE (entropia percettiva) si definisce come: 47 L’algoritmo di compressione Mp3 1 PE = N N ∑ (b f =1 Re 48 ( f ) + bIm ( f ) ) = Re( f ) Im( f ) + 1 + log 2 2 int + 1 = log 2 2 int ∑ ∆ ( f ) ∆ ( f ) f =1 n n N Im( f ) Re( f ) 1 log 2 int + 1 + log 2 int + 1 ∑ 2 2 N f =1 6 6 T T z z bh − bl bh − bl z z z z N 1 N (19) Essendo quindi PE come il numero di bit necessari per ciascun frame della TTF. Sulla base di studi estensivi, si è valutato che il valore di PE si aggira attorno a 2.1 bit/campione. Naturalmente il valore di PE è pesantemente dipendente dalla natura del segnale medesimo. La figura 3.8 dà un’idea delle curiose fluttuazioni di PE in funzione dei tipi di segnale audio in ingresso. L’MPEG 1 layer 3 utilizza un algoritmo di quantizzazione non uniforme a legge esponenziale per quantizzare i coefficienti della trasformata MDCT. Questa legge è data dalla formula 3 4 X (i) X q (i) = int ∆ − 0.0946 2 4 (20) Dove: - X(i) è l’i-esimo coefficiente della MDCT proveniente dalle (6) – (10) - ∆ è lo step di quantizzazione La funzione dell’elevamento a potenza ¾ è quella di quantizzare in modo più grezzo grandi ampiezze e di quantizzare più finemente piccole ampiezze. Questo L’algoritmo di compressione Mp3 49 fornisce un miglior rapporto segnale/rumore complessivo nel range di quantizzazione. L’MPEG 1 layer 3 quantizza i valori di spettro allocando a ciascuna sottobanda esattamente il numero di bit necessario a mantenere una trasparenza percettiva a una determinata bitrate. In altre parole modella lo spettro del rumore quantizzato in modo che questi rimanga al di sotto del livello di udibilità. Codifica entropica Figura 3.9. Algoritmo di quantizzazione. Diagramma di flusso L’algoritmo di compressione Mp3 50 Questa fase avviene iterativamente, mediante l’implementazione di due cicli annidati uno dentro l’altro. Il ciclo esterno, detto anche ciclo di controllo della distorsione, controlla il rumore di quantizzazione prodotto dal ciclo interno. Quest’ultimo, detto anche ciclo di controllo di banda si occupa di effettuare la miglior quantizzazione per una determinata bitrate. Quindi: il ciclo interno sceglie un quantizzatore, effettua la quantizzazione sui valori di segnale e conta il numero di bit necessari dopo la codifica entropica. Se il bitrate risultante è troppo alto, iterativamente incrementa il gradino del quantizzatore (diminuendo di fatto il numero di livelli) ricalcola il bitrate e se ancora sfora effettua un ulteriore ciclo (cfr. figura 3.9). Il ciclo esterno calcola il rumore di quantizzazione di ciascuna sottobanda. Nel caso in cui il rumore di quantizzazione di qualcuna di queste ecceda il limite imposto dal modello psicoacustico, vengono modificati i fattori di scala per quella sottobanda e viene riconvocato il loop interno. (cfr. figura 3.10). Questo processo continua finché - Non ci sono più sottobande con distorsione maggiore di quanto consentito - Tutte le sottobande sono già state amplificate fino al limite consentito - Viene raggiunto un time-out (sono nel caso di implementazioni real-time) L’algoritmo di compressione Mp3 51 Figura 3.10. Quantizzazione: ciclo esterno. Diagramma di flusso. 3.6 La codifica entropica La codifica entropica è applicata sulla base di un encoder di Huffman. L’encoder di Huffman fornisce una codifica lossless, cioè riduce il numero di bit a parità di qualità del segnale. L’algoritmo di compressione Mp3 52 Nella codifica di Huffman l’entropia è basata sulla conoscenza della distribuzione statistica dei dati in ingresso. Dalle statistiche sui dati vengono compilate delle tabelle di conversione. In linea di principio, valori con un’altra probabilità di essere rappresentati sono associati a parole corte mentre i valori scarsamente probabili sono associati a parole più lunghe. Analogamente al modello psicoacustico, l’encoder entropico divide il frame in due sub-frames di 576 campioni. In virtù delle caratteristiche di un generico segnale audio, le componenti in alta frequenza hanno contenuto energetico nullo o trascurabile. Pertanto all’interno del frame i campioni devono essere ordinati per frequenza crescente, così da ottenere una lunga sequenza di zeri alla fine. Ciò è banale in caso di finestra lunga [cfr. le (7) - (10)]; in caso di finestra breve l’ordinamento avviene prima per frequenza e poi per finestra. Ora, vengono identificate tre aree differenti: 1) Partendo dalla frequenza di Nyquist, viene individuata la più lunga sequenza di zeri. Questa area viene identificata col nome di rzero. Questa regione non deve essere codificata poiché il contenuto è banale e la lunghezza può essere calcolata semplicemente deducendola dalle dimensioni delle altre due. Unico accorgimento: deve contenere un numero pari di zeri poiché le altre regioni non lavorano su bit singoli ma su un numero pari di bit. 2) Successivamente vengono identificati i quartetti di valori quantizzati non più grandi di 1 in valore assoluto (-1, 0 e 1). Questa area è chiamata count1. 3) Infine, la restante porzione di banda, contenente la maggior parte del contenuto energetico del segnale, viene detta bigvalues. In figura 3.11 è possibile osservare il tipico aspetto di un sub-frame (576 coefficienti MDCT quantizzati per un target di 128 kbps). L’area detta bigvalues viene successivamente suddivisa in altre tre sottoaree, a ciascuna delle quali viene applicata una codifica di Huffman ottimizzata sulla base delle statistiche di quella regione di banda (cfr. ancora figura 3.9). L’algoritmo di compressione Mp3 53 Figura 3.11. Tipico aspetto di un sub-frame dell’encoder entropico 3.7 Bitstream Figura 3.12. Struttura del frame: implementazione reservoir bit L’ultimo blocco di un encoder è quello che si occupa di produrre il flusso di dati secondo la specifica MPEG-1 layer 3. Contiene i bit codificati secondo Huffman e una intestazione. L’algoritmo di compressione Mp3 54 Il bitstream è partizionato in frame, ciascuno dei quali rappresenta 1152 campioni audio. L’intestazione descrive quale bitrate e frequenza di campionamento è stata utilizzata per la codifica (oltre a un certo numero di informazioni accessorie)30. Quando un frame viene codificato con un numero di bit inferiore al bitrate imposto, l’encoder “dona” i bit risparmiati a un apposito guardaroba (reservoir). Qualora un frame successivo si trovi in difficoltà a mantenere il bitrate, questi può ricevere indietro i bit extra e utilizzarli in modo da mantenere la qualità percepita del suono. La gestione all’interno del bitstream avviene con un puntatore a 9 bit chiamato main_data_begin che indirizza al punto di inizio di ciascun frame (cfr. figura 3.12). 3.8 MPEG-2 e MPEG-4 Lo standard MPEG-2 (fig. 3.13) rappresenta un miglioramento delle caratteristiche dell’MPEG-1 e implementa una serie di strumenti aggiuntivi per abbracciare un range più ampio di applicazioni. L’MPEG-2 BC [ISO/IEC 13818-3] rappresenta un’estensione dell’MPEG-1 a basso bitrate. Supporta tre formati di campionamento a 16, 22.05 e 24 kHz. Supporta bitrate da 32 a 256 kbps per il Layer 1 e da 8 a 160 kbps per i Layer 2 e 3. Supporta anche una estensione multicanale per applicazioni sonore surround fino a 5 canali principali (Destro, Sinistro, Centrale, Destro surround e Sinistro surround) e un canale addizionale comunemente detto Subwoofer. Il limite superiore consentito del bitrate è 1Mbit/sec. Il bitstream è retrocompatibile con l’MPEG-1: un segnale a due canali viene ottenuto dal segnale a cinque canali tramite una matrice di conversione e codificato nello standard MPEG-1. I rimanenti canali vengono codificati il frame secondari, ignorati dall’MPEG-1. 30 Cfr: http://www.id3.org/mp3Frame per una mappa esaustiva dell’header di un frame. L’algoritmo di compressione Mp3 55 L’MPEG-2 AAC [ISO/IEC 13818-7] fornisce una codifica audio di altissima qualità da 1 a 48 canali ciascuno campionabile a una frequenza da 8 a 96 kHz con supporto multicanale, e multilingue. L’AAC funziona a bitrate da 8 kbps per un segnale parlato monofonico a 160 kbps/canale per una codifica di altissima qualità. L’AAC non ha retrocompatibilità con l’MPEG-1. L’AAC utilizza tre profili di complessità: principale, basso e a frequenza scalabile di campionamento (SSR). Utilizza un banco di filtri MDCT a 2048 punti in caso di segnale stazionario e 256 punti per i transitori. In alternativa supporta un filtro passabanda a seni o un filtro di Kaiser-Bessel (KBD). Il banco di filtri è adattivo al segnale poiché supporta un blocco di Temporal Noise Shaping (TNS) che agisce prevedendo i coefficienti delle MDCT. Il TNS riduce la richiesta di elevato bitrate in presenza di transitori di attack. Il TNS può essere applicato a tutto lo spettro del segnale oppure soltanto a una porzione di esso, a seconda di ciò che è necessario. Figura 3.13. Schema a blocchi di un encoder MPEG-2 Lo standard MPEG-4 [ISO/IEC 14496-3] integra una famiglia di strumenti per la codifica e la composizione di oggetti audiovisivi naturali e sintetici. Il bitstream L’algoritmo di compressione Mp3 56 comprende la descrizione degli oggetti e come questi interagiscono a formare una scena. Un segnale parlato viene codificato con un algoritmo parametrico HVXC (Harmonic Vector eXcitation Coding) per bitrate da 2 a 4 kbps o con un algoritmo CEPL per bitrate maggiori. Un segnale audio generico viene codificato con un algoritmo TWIN-VQ fino a 16 kbps. Per bitrate maggiori è utilizzata invece una versione estesa dell’MPEG-2 ACC. L’algoritmo di codifica audio è stato inoltre alleggerito in modo da avere una codifica quasi real-time. Il frame è stato dimezzato a 512 campioni, la divisione in blocchi di differente lunghezza è stata rimossa e i reservoir bit e sono stati minimizzati quando non del tutto abbandonati. Per segnali codificati AAC o TWIN-VQ è stato introdotto un Long Term Predictor (LTP) per migliorare la qualità dei segnali stazionari. E’ stato inoltre implementato uno strumento denominato Perceptual Noise Substitution (PNS) che si basa sull’osservazione che un rumore suona più o meno come un altro. Ciò significa che la struttura esatta di un rumore è molto meno importante rispetto alla percezione del rumore stesso. Pertanto, invece di trasmettere le componenti di un vero spettro di rumore, il bitstream si limita a segnalare che quella regione di frequenza è “rumorosa”, e a fornire qualche informazione sull’energia complessiva in quella medesima banda. Il PNS agisce selettivamente sulle sottobande. Gli oggetti audio sintetici sono codificati con un’interfaccia text-to-speech (TTSI) oppure con strumenti di codifica audio strutturato (utilizzati, per esempio per aggiungere al suono componenti artificiali quali echi, riverberi o diversificazioni spaziali). Tra questi, il Structured Audio Orchestra Language (SAOL) fornisce la sintassi per definire un’orchestra di strumenti sintetizzati da un linguaggio opportuno (MIDI). Capitolo 4 Un’applicazione: la web radio Questo capitolo analizza il fenomeno in espansione delle web radio. La web radio rappresenta un’interessante applicazione dell’algoritmo di compressione audio. 4.1 Un nuovo mass-media? È’ storia recente che Internet abbia destabilizzato l’assetto del sistema dei media, determinando una fase di cambiamento in cui il ruolo dominante della televisione è stato fortemente messo in discussione. Oppostamente, la radio ha vissuto e sta vivendo una mutazione che la porta ad essere uno dei pochi medium “classici” in grado di convivere proficuamente e concretamente con Internet. Nel gioco delle convergenze che si sono create fra i media, la radio sta acquistando una nuova modernità: la web-radio è la nuova frontiera della libertà radiofonica per chiunque intenda trasformarsi in emittente on line, e per le radio affermate rappresenta un buon canale per la diffusione dei Un’applicazione: la web radio 58 programmi da affiancare alla tradizionale diffusione nell’etere. Sono molti a sostenere che Internet ha salvato la radio dall'estinzione. Aggiungiamo che, contemporaneamente, ha estinto l’iconografia classica radiofonica presentando una situazione quasi paradossale, in cui la radio medesima, smaterializzandosi, assume una nuova materialità, diventa un medium “visibile”. La contraddizione, invero soltanto apparente, veicola in realtà la possibilità di esplorare di nuovi formati mediatici resi possibili dal passaggio on-line. E’ affascinante osservare come la radio sia il medium che più di altri ha saputo escogitare e attuare un compromesso davvero vincente nel panorama dei media digitali. Proprio per la sua natura imperfetta, la radio è riuscita a evolvere “darwinianamente” verso una nuova e più evoluta forma di comunicazione. Come? Ascoltare la radio ha sempre rappresentato qualcosa di molto diverso da altre esperienze di fruizione mediale, come la lettura di un libro o di un giornale: la radio è sempre adesso: “È” nel momento in cui la si ascolta. Nel panorama comunicativo dominato dalla tv, l’ascolto della radio rappresenta da parte dell’utente, una scelta ben precisa più ancora che una necessità: il rapporto degli ascoltatori con la loro emittente radiofonica è assai diverso da quello che lega spettatore e televisione ed è contraddistinto da una fidelizzazione più intensa e da una maggior identificazione. Per molti, l’ascolto della musica in radio scandisce ogni attimo della giornata e le voci degli speaker accompagnano ogni gesto. Si crea un rapporto amichevole, confidenziale, ancorché unidirezionale tra ascoltatore e speaker. Per gran parte delle radio trasmettere anche in Internet significa espandere le proprie possibilità espressive, ampliare il proprio bacino di utenza, rafforzare il rapporto con gli ascoltatori. L’ascoltatore entra in contatto visivo con quelli che considera i propri amici e compagni di vita, naviga tra le pagine del sito della emittente preferita, associa nuovi volti alle voci amiche. In questi termini la radio in Internet, tramite il sito, diventa “visibile” senza perdere, anzi, potenziando la peculiarità del solo ascolto. Dall’altro lato del firmamento, l’ibridizzazione della radio tradizionale ha sollecitato l’iniziativa personale della immensa comunità virtuale degli utenti Un’applicazione: la web radio 59 della Rete. In brevissimo tempo sono nate innumerevoli radio web sviluppate in totale autonomia, in linea con la (sovente discussa) dimensione “orizzontale”31, cioè libera, della rete. Oggigiorno è possibile per l’utente della Rete creare la propria radio web utilizzando risorse hardware di media entità e strumenti di sviluppo open source facilmente reperibili in rete. Figura 4.1. Internet: bacino di utenza complessivo negli Stati Uniti nel 2009 (percentuale sulla popolazione over 12) Secondo un’analisi annuale effettuata dalla agenzia demoscopica Arbitron/Edison32, nell’anno solare 2009, l’85% della popolazione Statunitense si è connessa a Internet almeno una volta, da qualunque postazione, contro l’82% dell’anno precedente (figura 4.1). 31 32 http://vitadigitale.corriere.it/2009/02/nielsen_internet_italia_facebook_youtube_answers.html http://www.arbitron.com/study/digital_radio_study.asp Un’applicazione: la web radio 60 Figura 4.2. Web radio: bacino di utenza complessivo negli Stati Uniti nel 2009 (percentuale sulla popolazione over 12) Figura 4.3. Web radio: utenti abituali negli ultimi dieci anni (percentuale sulla popolazione over 12) Gli utenti che al momento del sondaggio hanno dichiarato di avere ascoltato una radio internet nell’ultimo mese sono passati da 54 milioni nel 2008 a 69 milioni nel 2009. Gli utenti abituali, cioè quelli che dichiarano di ascoltare una Un’applicazione: la web radio 61 web radio tutte le settimane sono passati dal 2% della popolazione nel 2000 al 17% nel 2009, per un totale di 42 milioni di utenti abituali (figure 4.2 e 4.3). Secondo la Arbitron/Edison la principale ragione per cui gli utenti preferiscono la web radio alla radio tradizionale è costituita dal fatto che le web radio rappresentano una voce fuori dal coro in termini di prodotto musicale erogato (figura 4.4). Figura 4.4. Web radio: principali ragioni per le quali il campione demoscopico preferisce una radio web alla radio tradizionale (percentuale sulla popolazione over 12) Nonostante il numero di radio internet stia crescendo esponenzialmente (circa quindicimila soltanto negli Stati Uniti), il bacino di utenza americana tutt’oggi tende a raccogliersi attorno a questi cinque principali portali di musica on line33: AOL radio network, Yahoo music, MSN music, Shoutcast e Live36534, ciascuno dei quali ospita parecchie migliaia di web radio. 33 In rete sono disponibile numerose statistiche di ascolto, sovente discordanti. Uno studio interessante è stato effettuato nel 2008 da questo sito: http://www.readwriteweb.com/archives/statistics_online_music_apps.php. 34 AOL radio network: http://music.aol.com/radioguide/bb; Yahoo music: http://new.music.yahoo.com/; MSN music: http://music.msn.com/ Shoutcast: http://www.shoutcast.com/; Live365: http://www.live365.com/index.live. Un’applicazione: la web radio 62 4.2 Che cos’è una web radio? In generale con il termine “web radio” (o “internet radio”) si definisce un servizio continuo di divulgazione audio che utilizza la rete Internet come mezzo fisico di propagazione. Per finalità e modalità di utilizzo, la radio web è paragonabile alla radio tradizionale via etere, alla quale è accomunata da due principali caratteristiche: - La trasmissione consiste in un flusso di streaming che non può essere interrotto o riprodotto, ciò che rappresenta una differenza essenziale rispetto ai siti di file serving on demand. - E’ possibile identificare un descrittore unico della radio web, nella forma del suo indirizzo URL, analogamente alle radio tradizionali univocamente (ma territorialmente) identificate da una frequenza di trasmissione. Oppostamente, radio web e radio tradizionale differiscono per molteplici caratteristiche: - Il già menzionato mezzo di trasmissione (la rete Internet per le web radio, l’etere per le radio tradizionali) e, di conseguenza, il metodo di trasferimento dati (onde elettromagnetiche nel caso della radio tradizionale; pacchetti di dati nel caso della web radio). - Le radio tradizionali sono ricevute soltanto localmente mentre le radio web possono essere ascoltate ovunque. - Il numero di stazioni che possono trasmettere contemporaneamente su un determinato territorio è limitato dalla banda disponibile35. Nel caso della web radio non esiste un limite superiore teorico. - La relativa semplicità con la quale un utente della rete può creare una sua radio web ha generato in pochi anni una quantità enorme di radio più o meno amatoriali, in modo che ciascun ascoltatore può individuare quella che aderisce maggiormente ai suoi gusti musicali. - La ricerca di una stazione radio tradizionale avviene tramite la (paziente) scansione dell’intera banda assegnata da parte dell’utente. Nel caso delle radio web è praticamente impossibile scansionare l’intera Rete. Il compito 35 E’ noto che la banda destinata alle radio FM ha un’ampiezza di 20,5Mhz: tradizionalmente da 87,5MHz a 108 MHz. Un’applicazione: la web radio 63 di cercare canali radiofonici web è pertanto demandato a motori di ricerca più o meno specifici. - La web radio è implicitamente interattiva: i siti web assurgono a luoghi virtuali di aggregazione per gli utenti e di interazione con la stazione emittente (chat, e-mail, forum e, in alcuni casi, messaggi video e audio). Dal canto suo, il sito, sovente mette a disposizione archivi on-demand: vecchie trasmissioni oppure brani musicali non protetti da copyright. Una semplice web radio è composta da più elementi software disposti in sequenza, in modo che ciascuno abbia come input l’output del precedente. La modularità garantisce una maggior versatilità. Gli elementi necessari per rendere operativa una web radio sono: - Un player, la cui funzione è di riprodurre il file audio e generare il flusso di dati grezzo - Un encoder, la cui funzione è di codificare il flusso grezzo - Un server, che riceve il flusso codificato e lo trasmette in rete Banalmente, il player è una qualsivoglia applicazione in grado di generare un flusso di dati compatibile con l’encoder medesimo. L’encoder ha il compito di generare lo stream audio interpretando l’input del player o, alternativamente, leggendo da una playlist. E’ qui che si decide il formato (o i formati) da adottare per la web radio. Generalmente si tratta di una codifica lossy in un formato proprietario (Windows Media Audio, Real Audio) o aperto (Ogg Vorbis, Mp3, AAC). In virtù delle sue caratteristiche versatili e innovative è verosimile ipotizzare che a breve termine l’MP4 (MPEG-4) rappresenterà il nuovo standard dominante. Lo streaming server è la parte della catena esposta alla rete. Si occupa di inviare alla rete il flusso codificato. Lo streaming server adotta un modello client/server i cui componenti interagiscono tramite un protocollo di rete, generalmente il TCP/IP o l’UDP/IP. Uno dei problemi maggiori nella gestione di una web radio è rappresentata dalla scalabilità. Un’applicazione: la web radio - 64 Unicast. Nell’approccio classico unicast, in cui le richieste degli utenti (i client) vengono processate da un server o da una batteria di server, la banda complessiva è direttamente proporzionale al numero di client e al bitrate dello stream. Finché gli utenti sono in numero esiguo (entro qualche centinaio) la banda necessaria in upstream, e quindi i costi, sono ragionevoli. Se però l’audience cresce i costi operativi possono diventare insostenibili. Sono molti i casi di web radio “casalinghe” vittime del proprio successo. - Network distribuiti (CDN). Si tratta di un grande numero di server vicini agli utenti. Ogni server usa la medesima homepage e contiene gli stessi contenuti. Il client si connette al server migliore (il più prossimo oppure il più disponibile) in modo da minimizzare i tempi d’attesa. Si tratta di una soluzione di forza bruta: moltiplicando i server è possibile moltiplicare i client di un medesimo fattore, ma con lo stesso coefficiente di proporzionalità crescono i costi. - Multicasting. Si tratta di una tecnica per gestire una comunicazione unoa-tanti all’interno della rete senza conoscere a priori il numero e le destinazioni degli utenti client. Un solo pacchetto viene generato dello streaming server e duplicato localmente, nei server intermedi, soltanto quando necessario. - Peercast. Anziché prelevare lo stream da un unico server, ogni client si fa carico di una parte della banda in uscita, ritrasmettendo lo stream ricevuto e diventando in questo modo server a sua volta. E’ possibile farsi pubblicare su un apposito servizio di Yellow pages in modo da agevolare la reperibilità, ma è anche possibile generare i link peercast necessari per sfruttare la modalità peer to peer. Il server Peercast si configura in maniera molto simile a uno streaming server tradizionale, con poche opzioni peculiari (indirizzo del server Yellow pages, limitazioni alle connessioni dirette). I client che volessero sfruttare la modalità peer-to-peer necessitano di un client che riceva un URL in formato peercast e, consultando il servizio di yellow pages, permettano a un player audio di connettersi a uno dei peer. Altrimenti, per le stazioni che lo permettono, è Un’applicazione: la web radio 65 possibile la connessione diretta al server. In questo modo lo streaming server si trova a sopportare un carco minimo di client, ma al contempo si complica il protocollo di trasmissione unitamente alla gestione, assolutamente non banale, della connessione / disconnessione inattesa dei client. Lato client, il flusso di dati in ricezione dalla Rete viene ricostruito da un player che genera il segnale digitale che verrà poi localmente convertito in analogico e riprodotto da un sistema di amplificazione. In principio si trattava esclusivamente di applicazioni software da installare su computer. Winanp, iTunes, RealPlayer, MusicMatch Jukebox, XMMS sono soltanto alcuni tra i più comuni. In tempi più recenti sono stati sviluppati media player per consolle quali Microsoft Xbox e Sega Dreamcast e telefoni cellulari di terza generazione. Esistono sul mercato player stand-alone per web radio (i cosiddetti Network music players), generalmente costosi e dotati di un’estetica piuttosto ricercata e “vintage”. 4.3 Elementi operativi Tecnicamente l’identificatore unico di una radio web è il suo URL. Analogamente noi associamo una radio web con il suo sito internet, che si tratti o meno della propaggine online di una radio tradizionale consolidata. Un altro modo di creare una radio web consiste nell’utilizzare opportuni portali online. Tramite essi, chiunque dotato di una connessione internet e di opportuni software freeware è in grado di costruire la propria radio fai-da-te. SHOUTcast è il principale strumento online per la creazione di una web radio personale. Permette di effettuare una trasmissione audio dal proprio PC a tutti gli utenti Internet o a qualunque altra rete IP-based (per es. le LAN) in real time oppure on-demand. Per la spedizione dell’audio supporta una tecnologia Mp3 o AAC+. Supporta tutte le principali piattaforme come Windows (tutte le versioni da Windows 98 in avanti), Unix, Linux, FreeBSD e MacOsX. Gli strumenti necessari per creare una web radio con SHOUTcast sono: - Un computer con un sistema operativo supportato da SHOUTcast Un’applicazione: la web radio 66 - Una connessione a Internet a banda sufficientemente larga - Un player supportato da SHOUTcast (per esempio, Winamp36) - Il “plugin” di Winamp denominato “Shoutcast source”, la cui funzione è quella di creare uno stream comprensibile da parte dello streaming server37. - Shoutcast D.N.A.S. (Distributed Network Audio Server)2, il vero e proprio streaming server che si occupa di trasmettere il segnale agli ascoltatori. Figura 4.5. Il plugin Shoutcast source e Shoutcast D.N.A.S. In rete sono disponibili numerosi tutorial che aiutano passo a passo a effettuare l’installazione e i relativi settaggi di sistema38. L’utente che desideri ascoltare una radio online deve possedere un PC, una connessione Internet e un player (o, in alternativa un Network music player). Per ascoltare una determinata radio online ospitata su SHOUTcast egli deve quindi collegarsi al sito www.shoutcast.com e selezionare la radio desiderata tra le oltre trentamila ospitate dal sito. Semplicemente cliccando sul collegamento ipertestuale si aprirà una playlist all’interno del player di default. 36 http://www.winamp.com/ http://www.shoutcast.com/download#11 38 Tra i tanti, questo (http://www.ziospock.com/incominciamo.php) in italiano pare uno dei più chiari e completi 37 Un’applicazione: la web radio 67 Diverso il discorso per chi intende realizzare una radio web professionale. Di seguito, la preziosa testimonianza di Dalse, fondatore e direttore di Yastaradio.com39, una delle più interessanti radio online del panorama italiano in termini sia di palinsesto che di contenuti. In appendice a questa tesi è possibile leggere l’intervista completa. “Innanzitutto è necessario distinguere tra la componente prettamente audio e quella del sito web. La prima, a sua volta, si compone di una stazione di codifica ed una piattaforma di emissione. Figura 4.6. Il logo di Yastaradio.com. Nel caso di Yastaradio.com la stazione di codifica è una workstation in ambiente Windows dotata di un sottosistema dischi in RAID1 che ospita decine di migliaia contenuti di musicali, codificati in mp3, e un’applicazione di radioautomation chiamata SAM Broadcaster. Tramite questa applicazione è possibile gestire praticamente tutte le attività di messa in onda, mixando file mp3 con contributi live (acquisiti da una piccola regia audio) e codificando in tempo reale l’output in uno stream Windows Media Audio. Tale stream viene quindi messo a disposizione di un origin server della piattaforma di emissione basata su Windows Media Services tramite una connessione ADSL. La piattaforma di emissione, ospitata e gestita da un importante Internet Service Provider (ISP) nazionale è di tipo shared, ovvero non dedicata esclusivamente a Yastaradio.com, ma condivisa tra più clienti indipendenti. Una piattaforma affidabile e performante è un componente fondamentale per dare la migliore continuità del servizio e supportare eventuali picchi di ascolto in caso di eventi che richiamino audience particolarmente rilevanti. 39 www.yastaradio.com Un’applicazione: la web radio 68 Per quanto riguarda il sito è stata scelta una soluzione open source chiamata Joomla ovvero uno dei più diffusi portali sviluppati dalla comunità open. Joomla è finemente configurabile ed espandibile tramite appositi moduli e componenti. Per intenderci la chat, la gallery fotografica, i forum e i blog presenti sul sito sono rispettivamente moduli e componenti opzionali che possono essere aggiunti alla struttura di base di Joomla. Intrecciare, configurare e personalizzare pezzi di codice php ha consentito di ottenere un portale ben strutturato e ricco di funzioni. Per quanto riguarda l’algoritmo di compressine, nonostante i contributi musicali di archivio siano praticamente tutti codificati in formato mp3 tanto caro al mondo open, per l’emissione in streaming Yastaradio.com ha optato per la codifica proprietaria Windows Media Audio (WMA). Tale scelta è derivata dall’analisi di diversi fattori: qualità del codec, flessibilità della tecnologia, accessibilità tramite player web per Windows (basati sull’activeX Windows Media Player) ma anche Mac o Linux (basati sulla più recente tecnologia multipiattaforma Silverlight). Non bisogna dimenticare anche motivazioni di natura economica: infatti, tra gli standard proprietari, i servizi di emissione Windows Media sono solitamente più economici rispetto alle alternative come Adobe Flash o Real Networks.” Conclusioni Elevata qualità, versatilità e scalabilità. Le principali caratteristiche dell’algoritmo di compressione Mp3 sono state raggiunte attraverso un raffinato algoritmo di quantizzazione e codifica integrato da un modello percettivo che muove dallo studio approfondito della psicoacustica. La possibilità di variare un certo numero di fattori di scala permette di ottimizzare il rapporto qualità / compressione del segnale sulla base delle esigenze dell’utente. La standardizzazione dell’Mp3 ha rappresentato in questo senso un risultato di grande portata, ma non è stato che il punto di partenza per sviluppi futuri. Se per tutti gli anni novanta, infatti, il trade-off qualità percepita del segnale / occupazione di banda ha rappresentato il paramento cruciale nella valutazione della bontà di un algoritmo Mp3, nel primo decennio del nuovo millennio l’evoluzione dei sistemi multimediali ha richiesto un algoritmo sempre più evoluto, capace di integrare funzionalità specifiche per i nuovi standard commerciali. Per esempio: l’attuale Mp4, bisnipote dell’Mp3, implementa fino a 48 canali contro i due soli dell’Mp3, integra algoritmi parametrici per la voce e i suoni sintetici, oltre a numerosi e complessi sistemi di codifica audio strutturata finalizzati a una miglior resa di echi, riverberi e diversificazione spaziale del suono. Tra le altre, la radio web rappresenta una interessante applicazione dell’algoritmo di codifica audio. Fenomeno non recentissimo, sta vivendo proprio in questi anni il suo boom in termini sia di proposta che di utenza. La radio web, perlomeno in certe forme più “artigianali”, è un’applicazione che ancora deve fare i conti con i limiti di banda disponibile. Oggigiorno i principali strumenti online per la creazione di una radio Conclusioni 70 web personale (vedi SHOUTcast) implementano algoritmi di compressione “open”, quali l’Mp3 o le sue evoluzione AAC e Mp4. Al contrario, chi si dedica allo sviluppo di radio web professionali, ancora sceglie codec proprietari per ragioni legate a una maggior flessibilità di implementazione nei riguardi della piattaforma di emissione. Appendice A L’acustica e l’orecchio umano Una breve descrizione in termini il più possibile ingegneristici dell’orecchio umano e di come funziona. A.1 Che cos’è un segnale acustico? I l suono è definito come una compressione e rarefazione meccanica di un dielettrico. A seconda dello stato fisico del dielettrico la propagazione avviene in modi differenti. Restringendo l’analisi ai dielettrici gassosi, che supponiamo per semplicità ideali, un’onda sonora è definita come un’onda longitudinale che si propaga perpendicolarmente ai fronti isobarici di suddetto fenomeno di compressione / rarefazione. La velocità di propagazione del suono all’interno di un gas ideale è definita come: vs = γRT M , dove R è la costante universale dei gas R = 8.314 J/mol K T è la temperatura assoluta in Kelvin M è il peso molecolare del gas in kg/mol γ è la costante adiabatica specifica per ogni gas L’acustica e l’orecchio umano 72 Nell’aria γ = 1.4 e M = 28.95 gr/mol, pertanto si ottiene 1.4(8.314 J / mol K ) * T = 20.05 T m / s 0.02895 kg / mol v aria = Una buona approssimazione di questa formula è, esprimendo T in gradi Celsius v aria ≈ 331.4 + 0.6Tc m / s A 20°C la velocità del suono è circa 344 m/s Le onde sonore sono sostanzialmente gradienti di pressione che si propagano nello spazio e cambiano nel tempo rispetto ad una condizione di riposo identificabile nella pressione atmosferica. Grazie alla propria sensibilità l’orecchio umano è in grado di percepire una variazione di pressione inferiore a un miliardesimo della pressione atmosferica. Si è soliti considerare come valore di soglia per l’udibilità la quantità P0 = 2 * 10-5 newton/m2 che corrisponde quindi a 0 dB. Questo parametro, detto soglia media di udibilità, è una approssimazione grossolana di quello che è il vero comportamento dell’orecchio umano. La soglia di udibilità è in realtà funzione di innumerevoli fattori soggettivi ed oggettivi nonché uno dei punti fondamentali sui cui si basa lo studio della psicoacustica, come si vedrà in seguito. Si può definire l’intensità sonora in dB in questo modo: P2 I P I (dB) = 10 log10 = 10 log10 2 = 20 log10 I0 P0 P0 Una descrizione generale dell’intensità sonora fa riferimento alla definizione sottostante40: T I= 1 p(t ) * v(t )dt T ∫0 Dove: 40 I è l’intensità sonora Una trattazione dettagliata di questi concetti è reperibile su qualunque testo di acustica. Per un approccio decisamente più euristico si confronti: http://www.sengpielaudio.com/Calculations03.htm ed in particolare la ruota delle formule in http://www.sengpielaudio.com/calculator-ak-ohm.htm L’acustica e l’orecchio umano 73 - p(t) è la pressione sonora - v(t) è la velocità delle particelle oscillanti La propagazione spaziale del suono in un dielettrico con sorgente puntiforme o sferica avviene tramite una legge a proporzionalità quadratica inversa, come esprime in modo chiaro e intuitivo la figura A.1. Figura A.1. Propagazione spaziale del suono in un dielettrico con sorgente puntiforme o sferica A.2 L’orecchio esterno Come altrove accennato l’orecchio può essere considerato alla stregua di un filtro passabanda il cui ingresso è un segnale sotto forma di oscillazione del dielettrico in cui l’orecchio medesimo è immerso e la cui uscita è un segnale elettrico collegato direttamente al sistema percettivo umano che risiede nel cervello. Quella che segue è una veloce panoramica sui meccanismi che regolano il funzionamento dell’orecchio. In figura A.2 è rappresentato schematicamente un orecchio umano. L’acustica e l’orecchio umano 74 Figura A.2. L’orecchio umano - Pinna. Si tratta della parte più esterna dell’orecchio. La sua funzione è quella di raccogliere più energia sonora da convogliare nel canale uditivo. Funziona sostanzialmente come un pre-amplificatore il cui rapporto di amplificazione varia da 2 a 3. In virtù della propria forma asimmetrica, suoni provenienti da differenti direzioni avranno una caratteristica spettrale differente. Questa caratteristica permette all’apparato uditivo umano di conferire una direzionalità alto/basso al suono percepito. La direzionalità sinistra/destra proviene più banalmente dalla differente percezione con un orecchio rispetto all’altro. - Canale uditivo. Si tratta di un condotto interno che unisce la pinna alla membrana del timpano. Può essere assimilabile ad un risonatore a tubo chiuso, la cui frequenza di picco è determinata dall’equazione empirica λ = 4(l + 0.4d ) dove: o λ è la frequenza di picco del risonatore o l è la lunghezza del tubo o d è il suo diametro L’acustica e l’orecchio umano 75 Il canale uditivo è quindi un filtro passabanda naturale finalizzato ad amplificare la sottobanda 2 kHz – 5 kHz al centro della banda uditiva e ad attenuarne altre. Si osserva infatti empiricamente che la frequenza di picco è attorno ai 3700 Hz, che corrisponde ad una lunghezza media del canale di circa 2.4 cm.. Tutto ciò non è casuale, dal momento che la banda passante coincide approssimativamente con la banda di un segnale vocale. E’ curioso notare che è presente anche il picco di 3° armonica attorno ai 13 kHz. Questa è la spiegazione dell’andamento in frequenza delle curve isofoniche (vd. paragrafo 2) - Membrana. La membrana del timpano è posta al termine del canale uditivo e sigilla l’interno dell’orecchio dall’esterno, prevenendo infezioni batteriche. Essa vibra in maniera sincrona con l’aria, raccogliendo di fatto il segnale e trasmettendolo a tre ossicoli all’interno della cavità auricolare. In virtù della sua forma a cono la membrana effettua una ulteriore amplificazione del suono di un fattore proporzionale al rapporto tra le due superfici: quella a contatto con il canale auricolare e quella a contatto con gli ossicoli. Empiricamente si è stimato un fattore di amplificazione di circa 15. - Cavità auricolare. E’ la cavità all’interno del quale si muovono gli ossicoli. E’ collegata alla faringe nasale tramite un condotto detto tuba di Eustachio. Al suo interno vi è aria alla pressione atmosferica, necessaria per permettere una corretta vibrazione della membrana. Funge pertanto da camera di decompressione per la membrana medesima. - Ossicoli. Si tratta dei tre più piccoli ossi dell’organismo umano, nominati rispettivamente malleus (temine latino che significa martello), incus (latino: incudine) e stapes (staffa) in virtù della loro forma. Essi trasferiscono il segnale sonoro dalla membrana alla parte interna dell’orecchio tramite un meccanismo di leve meccaniche. Le onde sonore sono composte da vibrazioni di molecole di aria; nell’orecchio interno invece è presente una mucosa liquida molto più densa e meno comprimibile dell’aria. La funzione degli ossicoli è pertanto quella di trasformare il segnale acustico in una opportuna oscillazione del fluido. L’acustica e l’orecchio umano 76 Rimanendo all’interno della metafora si possono definire gli ossicoli come degli adattatori di impedenza acustica. In figura 3 è mostrato il movimento meccanico eseguito dagli ossicoli. Figura A.3. Movimento Figura A.4. Saturazione degli ossicoli degli ossicoli Un’altra importante funzione degli ossicoli (mostrata in figura A.4) consiste nella protezione da suoni molto intensi. In questi casi il muscolo tensore del timpano tende la membrana e fa arretrare gli ossicoli. L’ultimo di questi, arretrando, comprime di meno il fluido all’interno dell’orecchio, preservandolo così da dannose sovracompressioni. Si tratta comunque di una azione lenta incapace di prevenire rumori forti repentini che, in casi estremi possono provocare fitte dolorose o addirittura la rottura della membrana. Col trascorrere del tempo questa funzione è sempre meno efficace, il che spiega la naturale intolleranza degli anziani nei confronti del rock and roll! A.3 L’orecchio interno La parte interna dell’orecchio è la più complessa nonché la più “misteriosa” dal momento che a tutt’oggi una comprensione completa dei meccanismi di L’acustica e l’orecchio umano 77 funzionamento è ben lontana dal compimento. L’interno dell’orecchio sostanzialmente si divide in due parti con differenti funzioni: i canali semicircolari e la coclea (vedi figure A.5 e A.6), entrambi contenenti un liquido detto perilinfa. I canali semicircolari hanno la funzione primaria di fornire i segnali necessari al cervello per mantenere l’organismo in equilibrio. Si tratta di tre anelli semicircolari posti su tre assi ortogonali collegati tramite terminazione nervosa al cervello. All’interno dei canali una serie di filamenti nervosi percepiscono la posizione relativa rispetto al suolo in termini di accelerazione angolare del fluido lungo i tre assi perpendicolari al piano di ciascun canale. Per quanto oggettivamente interessante l’approfondimento di questo meccanismo trascende gli scopi di questa tesi. Figura A.5. Canali Figura A.6. Coclea semicircolari La coclea invece, saggiamente definita nell’illustrazione “il microfono del corpo”, si occupa di tradurre l’onda sonora in impulsi nervosi. Essa consiste un condotto di forma elicoidale formato da tre cavità longitudinali parallele denominate “scala vestibuli”, “scala tympani” e “scala media”, posta a contatto con gli ossicoli tramite la cosiddetta “finestra ovale”, una membrana la cui funzione è quella di trasmettere all’interno della coclea stessa il movimento oscillatorio generato dall’ossicolo più interno, la staffa. In figura A.7 è rappresentata una sezione della coclea. Nelle due cavità esterne è presente la perilinfa, che propaga le onde sonore per tutta la coclea. L’acustica e l’orecchio umano 78 Figura A.7. Sezione Figura A.8. Organo di della coclea Corti Figura A.9. Disposizione Figura A.10. Cella delle celle filamentose filamentosa L’acustica e l’orecchio umano 79 Nella cavità interna, la “scala media” è presente un elemento sensitivo detto “organo di Corti” (figura A.8) composto da due membrane ripiegate una sull’altra. Sull’estremità della membrana inferiore cono presenti quattro file di celle filamentose (hair cells, vedi figure A.9 e A.10). In figura A.11 è mostrato un disegno della coclea “raddrizzata” per migliore comprensione. Figura A.11. Disegno “raddrizzato” della coclea La membrana ovale trasmette l’onda sonora alla perilinfa, che si propaga per le due cavità esterne, sollecitando la membrana di base, che oscilla su e giù. Sulla sommità di questa, le celle filamentose fluttuano nell’endolinfa. Quando la fluttuazione diventa consistente vi è una compensazione elettrolitica tra endolinfa e filamenti, tra le quali esiste una differenza di potenziale di circa 120 millivolt. Questa compensazione viene trasmessa al nervo uditivo cui i filamenti sono ancorati, che li trasmette direttamente al cervello. Quello descritto è il comportamento dei filamenti interni (vd. figura A.9), mentre si presume che i filamenti esterni fungano da amplificatori, non da trasduttori, inducendo una maggiore oscillazione della membrana tettorale (vd. figura A.8). A.4 Percezione I parametri identificativi della percezione umana sono fortemente determinati dalla morfologia della coclea medesima. L’acustica e l’orecchio umano 80 Risoluzione. In virtù della forma elicoidale della coclea ogni regione della membrana basilare oscilla a frequenze differenti. In particolare le regioni più vicine alla finestra ovale oscillano stimolate dalle frequenze più alte mentre quelle più prossime alla sommità della coclea oscillano a frequenze più basse. Si confrontino le figure A.12 e A.13. Figure A.12 e A.13. Oscillazione della coclea a differenti frequenze Pertanto a seconda della posizione all’interno della coclea ciascun gruppo di filamenti è sensibile a una determinata frequenza. In questi termini è possibile considerare la coclea come un analizzatore di spettro la cui risoluzione è a dir poco straordinaria. Si stima infatti che l’orecchio umano riesca a distinguere, all’interno della banda uditiva, circa 1500 frequenze diverse. Figura A.14. Sharpening nella coclea L’acustica e l’orecchio umano 81 Considerando che nella coclea vi sono da 16000 a 20000 filamenti risulta che non più di una dozzina di filamenti si occupa di rilevare ciascuna frequenza. Inoltre, considerando che la coclea ha una lunghezza di circa 3.2 cm, risulta che il filtraggio di ciascuna frequenza avviene in uno spazio di 20 micron. Si confronti la figura A.14. Ne consegue che dovrebbero esistere 1500 differenti “porzioni” di membrana capaci di oscillare per un’estensione di 20 micron. E’ difficile credere che la membrana di base abbia una risonanza meccanica così efficace in termini di risoluzione, pertanto si presuppone che esistano dei meccanismi di sharpening operati in qualche modo dal cervello, finalizzati a inibire il funzionamento dei filamenti laterali. Si tratta, come già accennato, di una conoscenza non ancora acquisita completamente; uno dei numerosi angoli oscuri della natura non ancora rischiarati dalla scienza che fanno dell’uomo una macchina straordinaria concepita con una tecnologia superiore. Bande critiche. Ogni punto della membrana di base è sensibile a una determinata frequenza, detta “Frequenza caratteristica” per quel punto. Dal momento che la membrana vibra con continuità e non in porzioni infinitesime, anche le porzioni adiacenti sono sensibili, benché con ampiezza decrescente all’aumentare della distanza dal punto di massima sensibilità. Ogni punto della membrana può pertanto essere considerato un filtro passabanda con centro banda sulla frequenza caratteristica. La banda passante cresce con la frequenza ma il fattore di bontà Q rimane approssimativamente il medesimo. In figura A.15 viene mostrata la membrana di base (raddrizzata). Si può osservare facilmente che a frequenze più alte l’inviluppo della vibrazione è maggiore, di conseguenza la banda passante cresce al crescere della frequenza. La frequenza caratteristica varia a seconda della porzione di membrana considerata. Si osserva che in virtù della propria forma elicoidale l’inviluppo dell’oscillazione e di conseguenza la banda passante attorno a ciascuna frequenza non è simmetrico. La percezione di un segnale complesso avviene come sovrapposizione (altrettanto complessa) dei moti oscillatori di ciascuna porzione di membrana. La porzione finita di membrana sollecitata da un medesimo tono è detta “banda critica”. In termini psicoacustici viene fornita una definizione L’acustica e l’orecchio umano 82 sperimentale di banda critica, sulla base della quale viene elaborato il modello percettivo utilizzato negli algoritmi di compressione. Figura A.15. Oscillazioni della membrana di base a differenti frequenze Intensità e spazialità. Gli impulsi nervosi sono del tipo on/off, paragonabili a segnali digitali, non sensibili pertanto all’intensità. Si pensa che una percezione dell’intensità sonora avvenga tramite la frequenza di stimolazione di ciascun filamento (sorta di quantificazione di “quanto intensamente oscilla” il filamento). Inoltre, a basse frequenze (ma non troppo basse), l’impulso “on” viene trasmesso dal filamento al sistema nervoso in maniera sincrona con l’oscillazione della membrana, realizzando una sorta di agganciamento di fase al suono esterno. Questo fenomeno avviene in maniera tanto più definita quanto maggiore è l’intensità dell’onda sonora e si traduce, in termini percettivi, in una percezione più nitida del suono. L’agganciamento di fase operato dal singolo orecchio è debole, ma esiste un altro fattore che influisce in maniera determinante: la L’acustica e l’orecchio umano 83 presenza di due orecchie, cioè di due differenti segnali la cui elaborazione all’interno del cervello risulta in una buona percezione della spazialità. Va osservato che in virtù delle caratteristiche dell’ambiente, il suono si propaga in un “canale” più o meno “sporco”: soffitti, muri, ostacoli in genere danno luogo a numerose onde riflesse e distorte. Per fare fronte a tutto ciò il cervello attua opportuni meccanismi di filtraggio finalizzati a “tralasciare” questi contenuti spuri dell’onda sonora: si tratta dei filtraggi di mascheratura ampiamente analizzati all’interno di questa tesi. Il funzionamento dell’orecchio umano è a mio parere un argomento di grande fascino che in questa sede è stato estremamente sintetizzato per motivi di pertinenza41. Lo scopo di questa sezione è di fungere da breve guida alla comprensione dei postulati della psicoacustica esaminati nel capitolo 2. 41 Una agevole descrizione del funzionamento dell’orecchio umano in termini, per quanto possibile, ingegneristici si può trovare in http://web.mit.edu/2.972/www/reports/ear/ear.html Appendice B Filtri polifase B.1 Un filtro polifase per l’Mp3 Figura B.1. Sottobande lineari U n banco di filtri polifase in quadratura (detti anche PQF) è un banco di filtri la cui funzione è quella di splittare un segnale a banda limitata in ingresso in un determinato numero di N sottobande (generalmente una potenza di 2) egualmente spaziale in frequenza su scala lineare (figura B.1) o logaritmica (figura B.2) Figura B.2. Sottobande logaritmiche Filtri polifase Queste 85 sottobande sono sottocampionate di un fattore N; il sottocampionamento è critico e introduce aliasing. La componente di aliasing all’interno di ciascuna sottobanda è compensabile sottraendovi la componente di segnale del filtro adiacente moltiplicata per un opportuno fattore di scala. Un banco di filtri PQF è costruito utilizzando un filtro di base, che è un passabasso a fs/4N modulato da N funzioni coseno che generano N filtri passa-banda con una banda di fs/2N. Figura B.3 – Banco di filtri PQF Il filtro passa-basso utilizzato nei PQF è un filtro digitale tempo-discreto FIR (Finite Impulse Response). Lo schema di principio di un filtri FIR è mostrato in figura 3. L’ordine n del filtro è determinato dal numero di coefficienti. Nelle applicazioni a banchi di filtri PQF l’orine n è uguale a 8-24 volte il numero delle sottobande. Definito un segnale di ingresso xn e un filtro FIR di ordine P-esimo hn, la convoluzione di x con h è definita come: è la trasformata Z di hn denotata H(z): Filtri polifase 86 La trasformata Z di un FIR ha solo zeri e nessun polo. Un filtro FIR è stabile, non necessita di feedback e può avere fase lineare se e solo se i suoi coefficienti sono simmetrici rispetto alla frequenza centrale. Nel caso dell’MPEG audio l’ordine del filtro è n = 512, cioè 16 volte il numero delle sottobande. In tabella B.1 sono visualizzati i 512 coefficienti del filtro. C[ 0]= C[ 4]= C[ 8]= C[ 12]= C[ 16]= C[ 20]= C[ 24]= C[ 28]= C[ 32]= C[ 36]= C[ 40]= C[ 44]= C[ 48]= C[ 52]= C[ 56]= C[ 60]= C[ 64]= C[ 68]= C[ 72]= C[ 76]= C[ 80]= C[ 84]= C[ 88]= C[ 92]= C[ 96]= C[100]= C[104]= C[108]= C[112]= C[116]= C[120]= C[124]= C[128]= C[132]= C[136]= C[140]= C[144]= C[148]= 0.000000000 -0.000000477 -0.000000954 -0.000001431 -0.000002384 -0.000003815 -0.000006199 -0.000009060 -0.000013828 -0.000019550 -0.000027657 -0.000037670 -0.000049591 -0.000062943 -0.000076771 -0.000090599 0.000101566 0.000108242 0.000106812 0.000095367 0.000069618 0.000027180 -0.000034332 -0.000116348 -0.000218868 -0.000339031 -0.000472546 -0.000611782 -0.000747204 -0.000866413 -0.000954151 -0.000994205 0.000971317 0.000868797 0.000674248 0.000378609 -0.000021458 -0.000522137 C[ 1]= C[ 5]= C[ 9]= C[ 13]= C[ 17]= C[ 21]= C[ 25]= C[ 29]= C[ 33]= C[ 37]= C[ 41]= C[ 45]= C[ 49]= C[ 53]= C[ 57]= C[ 61]= C[ 65]= C[ 69]= C[ 73]= C[ 77]= C[ 81]= C[ 85]= C[ 89]= C[ 93]= C[ 97]= C[101]= C[105]= C[109]= C[113]= C[117]= C[121]= C[125]= C[129]= C[133]= C[137]= C[141]= C[145]= C[149]= -0.000000477 -0.000000477 -0.000000954 -0.000001907 -0.000002861 -0.000004292 -0.000006676 -0.000010014 -0.000014782 -0.000021458 -0.000030041 -0.000040531 -0.000052929 -0.000066280 -0.000080585 -0.000093460 0.000103951 0.000108719 0.000105381 0.000090122 0.000060558 0.000013828 -0.000052929 -0.000140190 -0.000247478 -0.000371456 -0.000507355 -0.000646591 -0.000779152 -0.000891685 -0.000968933 -0.000995159 0.000953674 0.000829220 0.000610352 0.000288486 -0.000137329 -0.000661850 C[ 2]= C[ 6]= C[ 10]= C[ 14]= C[ 18]= C[ 22]= C[ 26]= C[ 30]= C[ 34]= C[ 38]= C[ 42]= C[ 46]= C[ 50]= C[ 54]= C[ 58]= C[ 62]= C[ 66]= C[ 70]= C[ 74]= C[ 78]= C[ 82]= C[ 86]= C[ 90]= C[ 94]= C[ 98]= C[102]= C[106]= C[110]= C[114]= C[118]= C[122]= C[126]= C[130]= C[134]= C[138]= C[142]= C[146]= C[150]= -0.000000477 -0.000000477 -0.000000954 -0.000001907 -0.000003338 -0.000004768 -0.000007629 -0.000011444 -0.000016689 -0.000023365 -0.000032425 -0.000043392 -0.000055790 -0.000070095 -0.000083923 -0.000096321 0.000105858 0.000108719 0.000102520 0.000084400 0.000050545 -0.000000954 -0.000072956 -0.000165462 -0.000277042 -0.000404358 -0.000542164 -0.000680923 -0.000809669 -0.000915051 -0.000980854 -0.000991821 0.000930786 0.000783920 0.000539303 0.000191689 -0.000259876 -0.000806808 C[ 3]= C[ 7]= C[ 11]= C[ 15]= C[ 19]= C[ 23]= C[ 27]= C[ 31]= C[ 35]= C[ 39]= C[ 43]= C[ 47]= C[ 51]= C[ 55]= C[ 59]= C[ 63]= C[ 67]= C[ 71]= C[ 75]= C[ 79]= C[ 83]= C[ 87]= C[ 91]= C[ 95]= C[ 99]= C[103]= C[107]= C[111]= C[115]= C[119]= C[123]= C[127]= C[131]= C[135]= C[139]= C[143]= C[147]= C[151]= -0.000000477 -0.000000954 -0.000001431 -0.000002384 -0.000003338 -0.000005245 -0.000008106 -0.000012398 -0.000018120 -0.000025272 -0.000034809 -0.000046253 -0.000059605 -0.000073433 -0.000087261 -0.000099182 0.000107288 0.000108242 0.000099182 0.000077724 0.000039577 -0.000017166 -0.000093937 -0.000191212 -0.000307560 -0.000438213 -0.000576973 -0.000714302 -0.000838757 -0.000935555 -0.000989437 -0.000983715 0.000902653 0.000731945 0.000462532 0.000088215 -0.000388145 -0.000956535 C[152]= C[156]= C[160]= C[164]= C[168]= C[172]= -0.001111031 -0.001766682 -0.002457142 -0.003141880 -0.003771782 -0.004290581 C[153]= C[157]= C[161]= C[165]= C[169]= C[173]= -0.001269817 -0.001937389 -0.002630711 -0.003306866 -0.003914356 -0.004395962 C[154]= C[158]= C[162]= C[166]= C[170]= C[174]= -0.001432419 -0.002110004 -0.002803326 -0.003467083 -0.004048824 -0.004489899 C[155]= C[159]= C[163]= C[167]= C[171]= C[175]= -0.001597881 -0.002283096 -0.002974033 -0.003622532 -0.004174709 -0.004570484 Filtri polifase 87 C[176]= C[180]= C[184]= C[188]= C[192]= C[196]= C[200]= C[204]= C[208]= C[212]= C[216]= C[220]= C[224]= C[228]= C[232]= C[236]= C[240]= C[244]= C[248]= C[252]= C[256]= C[260]= C[264]= C[268]= C[272]= C[276]= C[280]= C[284]= C[288]= C[292]= C[296]= C[300]= C[304]= C[308]= C[312]= C[316]= C[320]= C[324]= C[328]= C[332]= C[336]= C[340]= C[344]= C[348]= C[352]= C[356]= C[360]= C[364]= C[368]= C[372]= C[376]= C[380]= C[384]= -0.004638195 -0.004752159 -0.004573822 -0.004049301 0.003134727 0.001800537 0.000033379 -0.002161503 -0.004756451 -0.007703304 -0.010933399 -0.014358521 -0.017876148 -0.021372318 -0.024725437 -0.027815342 -0.030526638 -0.032754898 -0.034412861 -0.035435200 0.035780907 0.035435200 0.034412861 0.032754898 0.030526638 0.027815342 0.024725437 0.021372318 0.017876148 0.014358521 0.010933399 0.007703304 0.004756451 0.002161503 -0.000033379 -0.001800537 0.003134727 0.004049301 0.004573822 0.004752159 0.004638195 0.004290581 0.003771782 0.003141880 0.002457142 0.001766682 0.001111031 0.000522137 0.000021458 -0.000378609 -0.000674248 -0.000868797 0.000971317 C[177]= C[181]= C[185]= C[189]= C[193]= C[197]= C[201]= C[205]= C[209]= C[213]= C[217]= C[221]= C[225]= C[229]= C[233]= C[237]= C[241]= C[245]= C[249]= C[253]= C[257]= C[261]= C[265]= C[269]= C[273]= C[277]= C[281]= C[285]= C[289]= C[293]= C[297]= C[301]= C[305]= C[309]= C[313]= C[317]= C[321]= C[325]= C[329]= C[333]= C[337]= C[341]= C[345]= C[349]= C[353]= C[357]= C[361]= C[365]= C[369]= C[373]= C[377]= C[381]= C[385]= -0.004691124 -0.004737377 -0.004477024 -0.003858566 0.002841473 0.001399517 -0.000475883 -0.002774239 -0.005462170 -0.008487225 -0.011775017 -0.015233517 -0.018756866 -0.022228718 -0.025527000 -0.028532982 -0.031132698 -0.033225536 -0.034730434 -0.035586357 0.035758972 0.035242081 0.034055710 0.032248020 0.029890060 0.027073860 0.023907185 0.020506859 0.016994476 0.013489246 0.010103703 0.006937027 0.004072189 0.001573563 -0.000515938 -0.002174854 0.003401756 0.004215240 0.004649162 0.004748821 0.004570484 0.004174709 0.003622532 0.002974033 0.002283096 0.001597881 0.000956535 0.000388145 -0.000088215 -0.000462532 -0.000731945 -0.000902653 0.000983715 C[178]= C[182]= C[186]= C[190]= C[194]= C[198]= C[202]= C[206]= C[210]= C[214]= C[218]= C[222]= C[226]= C[230]= C[234]= C[238]= C[242]= C[246]= C[250]= C[254]= C[258]= C[262]= C[266]= C[270]= C[274]= C[278]= C[282]= C[286]= C[290]= C[294]= C[298]= C[302]= C[306]= C[310]= C[314]= C[318]= C[322]= C[326]= C[330]= C[334]= C[338]= C[342]= C[346]= C[350]= C[354]= C[358]= C[362]= C[366]= C[370]= C[374]= C[378]= C[382]= C[386]= -0.004728317 -0.004703045 -0.004357815 -0.003643036 0.002521515 0.000971317 -0.001011848 -0.003411293 -0.006189346 -0.009287834 -0.012627602 -0.016112804 -0.019634247 -0.023074150 -0.026310921 -0.029224873 -0.031706810 -0.033659935 -0.035007000 -0.035694122 0.035694122 0.035007000 0.033659935 0.031706810 0.029224873 0.026310921 0.023074150 0.019634247 0.016112804 0.012627602 0.009287834 0.006189346 0.003411293 0.001011848 -0.000971317 -0.002521515 0.003643036 0.004357815 0.004703045 0.004728317 0.004489899 0.004048824 0.003467083 0.002803326 0.002110004 0.001432419 0.000806808 0.000259876 -0.000191689 -0.000539303 -0.000783920 -0.000930786 0.000991821 C[179]= C[183]= C[187]= C[191]= C[195]= C[199]= C[203]= C[207]= C[211]= C[215]= C[219]= C[223]= C[227]= C[231]= C[235]= C[239]= C[243]= C[247]= C[251]= C[255]= C[259]= C[263]= C[267]= C[271]= C[275]= C[279]= C[283]= C[287]= C[291]= C[295]= C[299]= C[303]= C[307]= C[311]= C[315]= C[319]= C[323]= C[327]= C[331]= C[335]= C[339]= C[343]= C[347]= C[351]= C[355]= C[359]= C[363]= C[367]= C[371]= C[375]= C[379]= C[383]= C[387]= -0.004748821 -0.004649162 -0.004215240 -0.003401756 0.002174854 0.000515938 -0.001573563 -0.004072189 -0.006937027 -0.010103703 -0.013489246 -0.016994476 -0.020506859 -0.023907185 -0.027073860 -0.029890060 -0.032248020 -0.034055710 -0.035242081 -0.035758972 0.035586357 0.034730434 0.033225536 0.031132698 0.028532982 0.025527000 0.022228718 0.018756866 0.015233517 0.011775017 0.008487225 0.005462170 0.002774239 0.000475883 -0.001399517 -0.002841473 0.003858566 0.004477024 0.004737377 0.004691124 0.004395962 0.003914356 0.003306866 0.002630711 0.001937389 0.001269817 0.000661850 0.000137329 -0.000288486 -0.000610352 -0.000829220 -0.000953674 0.000995159 C[388]= C[392]= C[396]= C[400]= C[404]= C[408]= 0.000994205 0.000954151 0.000866413 0.000747204 0.000611782 0.000472546 C[389]= C[393]= C[397]= C[401]= C[405]= C[409]= 0.000989437 0.000935555 0.000838757 0.000714302 0.000576973 0.000438213 C[390]= C[394]= C[398]= C[402]= C[406]= C[410]= 0.000980854 0.000915051 0.000809669 0.000680923 0.000542164 0.000404358 C[391]= C[395]= C[399]= C[403]= C[407]= C[411]= 0.000968933 0.000891685 0.000779152 0.000646591 0.000507355 0.000371456 Filtri polifase C[412]= C[416]= C[420]= C[424]= C[428]= C[432]= C[436]= C[440]= C[444]= C[448]= C[452]= C[456]= C[460]= C[464]= C[468]= C[472]= C[476]= C[480]= C[484]= C[488]= C[492]= C[496]= C[500]= C[504]= C[508]= 0.000339031 0.000218868 0.000116348 0.000034332 -0.000027180 -0.000069618 -0.000095367 -0.000106812 -0.000108242 0.000101566 0.000090599 0.000076771 0.000062943 0.000049591 0.000037670 0.000027657 0.000019550 0.000013828 0.000009060 0.000006199 0.000003815 0.000002384 0.000001431 0.000000954 0.000000477 88 C[413]= C[417]= C[421]= C[425]= C[429]= C[433]= C[437]= C[441]= C[445]= C[449]= C[453]= C[457]= C[461]= C[465]= C[469]= C[473]= C[477]= C[481]= C[485]= C[489]= C[493]= C[497]= C[501]= C[505]= C[509]= 0.000307560 0.000191212 0.000093937 0.000017166 -0.000039577 -0.000077724 -0.000099182 -0.000108242 -0.000107288 0.000099182 0.000087261 0.000073433 0.000059605 0.000046253 0.000034809 0.000025272 0.000018120 0.000012398 0.000008106 0.000005245 0.000003338 0.000002384 0.000001431 0.000000954 0.000000477 C[414]= C[418]= C[422]= C[426]= C[430]= C[434]= C[438]= C[442]= C[446]= C[450]= C[454]= C[458]= C[462]= C[466]= C[470]= C[474]= C[478]= C[482]= C[486]= C[490]= C[494]= C[498]= C[502]= C[506]= C[510]= 0.000277042 0.000165462 0.000072956 0.000000954 -0.000050545 -0.000084400 -0.000102520 -0.000108719 -0.000105858 0.000096321 0.000083923 0.000070095 0.000055790 0.000043392 0.000032425 0.000023365 0.000016689 0.000011444 0.000007629 0.000004768 0.000003338 0.000001907 0.000000954 0.000000477 0.000000477 C[415]= C[419]= C[423]= C[427]= C[431]= C[435]= C[439]= C[443]= C[447]= C[451]= C[455]= C[459]= C[463]= C[467]= C[471]= C[475]= C[479]= C[483]= C[487]= C[491]= C[495]= C[499]= C[503]= C[507]= C[511]= 0.000247478 0.000140190 0.000052929 -0.000013828 -0.000060558 -0.000090122 -0.000105381 -0.000108719 -0.000103951 0.000093460 0.000080585 0.000066280 0.000052929 0.000040531 0.000030041 0.000021458 0.000014782 0.000010014 0.000006676 0.000004292 0.000002861 0.000001907 0.000000954 0.000000477 0.000000477 Tabella B.1 – I coefficienti di un filtro polifase nel caso dell’Mp3 Appendice C Trasformata Discreta a Coseni Modificata C.1 La Trasformata Discreta di Fourier L a Trasformata discreta di Fourier (DFT) è una trasformazione lineare Dove C denota l’insieme dei numeri complessi. Gli n numeri complessi x0, ..., xn-1 sono trasformati begli n numeri complessi f0, ..., fn-1 secondo la formula: La sua inversa (IDFT) è definita come: Scritta in forma matriciale, la DFT è definita come: Trasformata Discreta a Coseni Modificata 90 Il fattore di normalizzazione (qui 1) e il segno dell’esponente sono meramente convenzionali e possono differire in letteratura. C.2 La Trasformata Discreta a Coseni Modificata La Trasformata Discreta a Coseni (DCT) è una variante della DFT ristretta ai numeri reali. Ogni elemento della successione risultante è qui visto come somma di coseni oscillanti a differenti frequenze. Esistono otto diversi standard di DCT. Il più comune di essi è il tipo-2, sovente identificato come “la DCT”. La sua inversa, il tipo-3, è detto IDCT. Il tipo-4, nella sua forma modificata (MDCT), è dotato di caratteristiche che lo rendono ottimale per applicazioni di compressione multimediale. La MDCT è una funzione lineare F : R2n -> Rn Dove R definisce i numeri reali I 2n numeri reali x0, ..., x2n-1 sono trasformati negli n numeri reali f0, ..., fn-1 in accordo alla formula: Il fattore di normalizzazione, qui convenzionalmente posto uguale a 1, potrebbe differire in letteratura. Trasformata Discreta a Coseni Modificata 91 La funzione inversa è chiamata IMDCT. In virtù del differente numero di ingressi e uscite potrebbe sembrare che la MDCT non sia invertibile. In realtà l’errore viene cancellato sovrapponendo il blocco successivo mediante una tecnica chiamata cancellazione aliasing nel dominio del tempo (TDAC). La IMDCT trasforma n numeri reali f0, ..., fn-1 in 2n numeri reali y0, ..., y2n-1 secondo la formula: Appendice D Intervista a Dalse di Yastaradio.com V uoi presentarti? Non che ci sia molto da dire. Varie esperienze lavorative pre e post laurea (in biologia), una breve parentesi di ricerca con borsa di studio e poi, allibito dalle logiche postmorattiane di gestione dell'istruzione, il rifiuto della competizione spinta ed il conseguente inseguimento di una vecchia passione: la musica. Che cosa pensi del panorama radiofonico italiano tradizionale? Qual è stato secondo te l’impatto multimediale generato dalla radiofonia web in questi anni? Il panorama radiofonico italiano tradizionale (quello via etere per intenderci) vive da un lato il servilismo nei confronti delle grosse entità discografiche e dall'altro la mediocre preparazione culturale degli speaker. Via via la proposta musicale è degradata e hanno preso piede mediocri trasmissioni di intrattenimento spicciolo che in modo immediato catturano superficialmente l'attenzione dell'ascoltatore. Sono un buon esempio della deriva culturale del paese. Intevista a Dalse di Yastaradio.com 93 La radiofonia web al momento, quantomeno in Italia, non ha ancora preso piede. Esistono molte forme di sperimentazione, ma al momento direi che si tratta di test,più che di vere e proprie esperienze di natura professionale. Che cosa ti ha spinto a creare una tua radio web? Le ragioni di cui sopra, una proposta insoddisfacente via etere, l'esigenza di comunicare attraverso un linguaggio immediato ed intuitivo come la musica e di certo una situazione professionale complicata che mi ha indotto a cercare nuove vie. Che cosa pensi delle radio fai-da-te e del successo di servizi come SHOUTcast? Sono un fruitore delle nuove tecnologie, e tutto ciò che rappresenta possibilità creativa e di condivisione mi stimola. Occorrerebbe fare dei distinguo, certo, ma in linea di massima al momento tutto è ancora in una fase di studio, anche per gli addetti al settore, pertanto gli aspetti negativi che potrebbero essere presi in considerazione rappresentano semplicemente dei dettagli, dal momento che i grossi sciacalli dell'imprenditoria non si sono ancora rivolti a questo mercato, contaminandolo, e tutto ha ancora un grande carattere popolare. Parliamo di Yastaradio. Quando e come nasce? Quali servizi implementa? Qual è la sua visibilità in rete e nel mondo reale. Qual è il suo pubblico? Quanti e quali ascoltatori raggiunge? Quali sono le prospettive future? Yastaradio.com (ci tengo al suffisso) inizia le sue trasmissioni, come se fosse una tragedia greca, il primo aprile del 2007. L'idea risale ad almeno un anno e mezzo prima, ma poca chiarezza da parte delle istituzioni e delle società delegate alla tutela del diritto (dell'autore o dell'esecutore) hanno rallentato molto la partenza ufficiale. Yastaradio.com ha come coadiuvante naturale il portale omonimo, strutturato come un grande blog comunitario, che permette il caricamento di recensioni, articoli, notizie, date di eventi etc.. Il portale contiene tutte quelle strutture ad oggi Intevista a Dalse di Yastaradio.com 94 comunemente utilizzate in rete (forum, galleria fotografica, spazi ludici etc.). La struttura della radio poi fornisce servizi di varia natura, tra i quali streaming dedicati ed organizzazione di eventi (per lo più musicali, ma contaminati da altre espressioni artistico/culturali). Abbiamo optato per una forma poco invasiva di promozione: se esistono dei link alla radio ci sono solo in virtù del fatto che altre strutture, blog o forum parlano di essa. Non abbiamo effettuato spam, non abbiamo una mailing list e non siamo ufficialmente presenti sui social network, eccezion fatta per myspace che ci serve per tenere dei contatti con alcune band. Anche per quanto riguarda l'indicizzazione sui motori di ricerca non abbiamo acquistato parole chiave e non ci siamo fatti linkare per salire di posizione. Le alte posizioni raggiunte da alcuni nostri contenuti sono da ritenersi giustificate solamente in virtù del numero di letture che hanno ricevuto. Nel mondo reale la radio ha guadagnato nel tempo una propria credibilità: solitamente non abbiamo problemi ad ottenere gli accrediti per i concerti, anche se di norma siamo portati all'acquisto del biglietto per lavorare senza pressioni sulle recensioni. Siamo invitati a tutte le fiere di settore e, nei limiti di tempo, tendiamo a partecipare più per questioni di supporto che di mera autopromozione. Il pubblico della radio è il pubblico del web, vario ed eterogeneo. Di certo molti musicisti / musicofili interagiscono con la struttura; chi è portato all'ascolto facile tendenzialmente ricerca altre soluzioni. Il numero di utenti è piuttosto difficile da stabilire esattamente, in quanto i parametri di indicazione che noi utilizziamo non sono totalmente affidabili (perché tutti in via di sperimentazione da parte dei provider cui ci appoggiamo). In ogni caso possiamo stimare un numero mai inferiore ai 200 utenti unici al giorno con oltre 1000 pagine visitate (ovviamente dal dato sono esclusi i bot). I giorni della settimana registrano variazioni casuali che possono portare a picchi registrati anche di 1500 utenti unici che però non siamo riusciti a correlare ad eventi particolari trasmessi. Il numero delle contemporaneità (calcolato, perché il metro di misurazione è al secondo) è di poco inferiore a quello degli utenti unici, segno che chi arriva sul portale tendenzialmente viene per ascoltare la radio (e poi si sposta eventualmente sui contenuti). Intevista a Dalse di Yastaradio.com 95 Credo sia presto per parlare di prospettive future, il mondo del web sarà a breve regolamentato e molte strutture, tra cui noi, dovranno valutare nuovi paletti e nuove opportunità. Allo stato attuale delle cose stiamo procedendo con l'offerta di streaming audio/video con licenza e stiamo considerando l'idea di costituire un'etichetta musicale ed un'agenzia di booking. Qual è il rapporto con il pubblico? E con gli artisti? Il sito contiene numerosi spazi di interazione con il pubblico, dalla chat in tempo reale ai commenti che possono essere inseriti nei vari contenuti (a loro volta creati anche dal pubblico). Abbiamo anche la possibilità di ricevere telefonate tramite skype, e stiamo valutando l'opportunità di creare un format che permetterà all'utente, tramite un semplice click, di scegliere cosa ascoltare in playlist (entro un tempo ragionevole). Con i musicisti abbiamo contatti quotidiani, selezioniamo ed intervistiamo sia emergenti che affermati, organizziamo concerti e festival sia a nome della radio che per comuni o associazioni. Ci arriva materiale fonografico di ogni genere, soprattutto dall'Italia. Ascoltiamo tutto, ma non è detto che ciò che ci viene inviato finisca in playlist. Non accettiamo compensi che possano influenzare le nostre scelte di programmazione. Tecnicamente, come è stata realizzata la radio? Innanzitutto dobbiamo distinguere tra la componente prettamente audio e quella del sito web. La prima, a sua volta, si compone di una stazione di codifica ed una piattaforma di emissione. Iniziamo quindi a descrivere la stazione di codifica, ovvero una workstation in ambiente Windows dotata di un sottosistema dischi in RAID1 che ospita decine di migliaia contenuti di musicali, codificati in mp3, e un’applicazione di radioautomation chiamata SAM Broadcaster. Tramite questa applicazione è possibile gestire praticamente tutte le attività di messa in onda, mixando file mp3 con contributi live (acquisiti da una piccola regia audio) e codificando in tempo reale Intevista a Dalse di Yastaradio.com 96 l’output in uno stream Windows Media Audio. Tale stream viene quindi messo a disposizione di un origin server della piattaforma di emissione basata su Windows Media Services tramite la nostra connessione ADSL. La piattaforma di emissione, ospitata e gestita da un importante Internet Service Provider (ISP) nazionale, è di tipo shared, ovvero non dedicata esclusivamente a Yastaradio, ma condivisa tra più clienti indipendenti. Una piattaforma affidabile e performante è un componente fondamentale per dare la migliore continuità del servizio e supportare eventuali picchi di ascolto in caso di eventi che richiamino audience particolarmente rilevanti. Veniamo ora a parlare del sito; in questo caso abbiamo scelto una soluzione open source chiamata Joomla ovvero uno dei più diffusi portali sviluppati dalla comunità open. Joomla è finemente configurabile ed espandibile tramite appositi moduli e componenti. Per intenderci la chat, la gallery fotografica, i forum e i blog presenti sul nostro sito sono rispettivamente moduli e componenti opzionali che possono essere aggiunti alla struttura di base di Joomla. Intrecciare, configurare e personalizzare pezzi di codice php ci ha tenuti svegli molte notti, ma ci ha consentito di ottenere un portale ben strutturato e ricco di funzioni… e tutto questo senza essere web designers o sviluppatori di professione. Qual è l’algoritmo di compressione utilizzato? Mp3 o altro? E’ un algoritmo open o proprietario? Nonostante i contributi musicali di archivio siano praticamente tutti codificati in formato mp3, tanto caro al mondo open, per l’emissione in streaming abbiamo optato per la codifica proprietaria Windows Media Audio (WMA). Tale scelta è derivata dall’analisi di diversi fattori: qualità del codec, flessibilità della tecnologia, accessibilità tramite player web per windows (basati sull’activeX Windows Media Player) ma anche Mac o Linux (basati sulla più recente tecnologia multipiattaforma Silverlight). Non possiamo dimenticare anche motivazioni di natura economica infatti, tra gli standard proprietari, i servizi di emissione Windows Media sono solitamente più economici rispetto alle alternative come Adobe Flash o Real Networks. Intevista a Dalse di Yastaradio.com 97 Come funziona la radio? Noi abbiamo uno studio principale, che contiene i server che gestiscono il segnale proveniente dagli “studi paralleli”. Lo studio principale è anche adibito a studio di registrazione, quindi esistono WJ che fanno la diretta dallo studio principale ed altri che lo utilizzano per registrare. Gli studi paralleli funzionano allo stesso modo, quindi si può andare di diretta o di registrata. Il palinsesto ha cadenza settimanale ed ogni trasmissione ha la propria collocazione in un giorno ed in un orario definiti all'inizio della stagione. Che cosa prevede la normativa vigente in termini di diritti d’autore? Come vi relazionate con essa? Ritieni che le norme attuali siano miopi o promuovano invece la radiofonia web? La normativa vigente sul diritto d'autore fa riferimento alla legge 633 del 1941, con qualche aggiustamento in corso d'opera. La legge di per sé è chiara riguardo alla tutela dell'opera intellettuale, i problemi si incontrano poi con le società che si pongono come depositari e garanti di queste opere, che non agiscono nella trasparenza. Noi paghiamo una cifra fissa a queste società, in base a contratti stipulati che presentano alcuni vizi formali, ma tant'è, l'iter è questo. Ad oggi ritengo che gli aggiustamenti fatti alla legge tendano a favorire maggiormente le società private in cui si depositano i diritti che i possessori reali degli stessi. A questo proposito è un buon esempio il fatto che il presidente della S.I.A.E. faccia parte del Comitato tecnico contro la pirateria digitale multimediale presso la Presidenza del Consiglio dei Ministri. La radiofonia via web è vista come una spina nel fianco, ma inevitabile. Per questo in fretta e furia si sono creati i succitati contratti. Come sarà lo scenario radiofonico italiano fra dieci anni? Che cosa sarà Yastaradio nel 2020? Anche qui faccio fatica a fare delle previsioni. Il web, la libertà danno l'opportunità di scegliere e confrontarsi, e questo è fondamentale per la cultura, musica compresa. Se le cose cambieranno ragionevolmente posso pensare che fra Intevista a Dalse di Yastaradio.com 98 10 anni ci sarà un'attenzione alla musica molto più fine e diffusa, e tutto questo grazie anche ad alcune webradio. Bibliografia Psicoacustica “Loudness: its definition, measurement, and calculation”, Journal of the Acoustical Society of America (1933), vol 5; pag. 9. H.L. Lane, A.C. Catania, S.S. Stevens: “Voice Level: Autophonic Scale, Perceived Loudness, and Effects of Sidetone” , JASA volume 33 n.2 (1961); pp. 160-167. G.E. Peterson, N.P. McKinney: “The measurement of speech power, Phonetica vol. 7 (1961); pp. 65-84. John Clark, Colin Yallop and Janet Fletcher: “An Introduction to Phonetics and Phonology”. Blackwell Publishing (2007). R.S. Schlauch, C.C. Wier: “A Method for Relating Loudness-Matching and Intensity-Discrimination”, Journal of Speech and Hearing Research vol. 30 (1987); pp. 13-20. S.S. Stevens: “Calculation of the Loudness of Complex Noise”, JASA vol. 28 n. 5 (1956); pp. 807-832. S. Handel: "Listening: an introduction to the perception of auditory events.", MIT, Cambridge, MA (1989). R.J. Dooling and S.H. Hulse: “The comparative psychologoy of audition: Perceiving complex sounds. Erlbaum, Hillsdale, NJ (1989). S. McAdams and E. Bigand: “Thinking in sound: the cognitive psychology of human audition”. Oxford Univ. Press, NY (1993). J.A. Sloboda: “The musical mind: The cognitive psychology of music”. Clarendon, Oxford (1985). Bibliografia 100 J.M. Grey: "Multidimensional Perceptual Scaling of Musical Timbres", Journal of the Acoustical Society of America, 63; pp. 1493-1500. B.H. Repp: "Categorical perception: Issues, methods, findings" in N.J. Lass (ed.) “Speech and Language: Advances in Basic Research and Practice”, vol. 10; pp. 1249-1257. Moore and Glasberg: "Suggested formulae for calculating auditory-filter bandwidths and excitation patterns". JASA vol. 74 n. 33 (1983). Bladon and Lindblom: "Modeling the judgement of vowel quality differences". JASA vol. 69, n. 5 (1981). J.R. Pierce: “The Science of Musical Sound”. Freenam, New York (1983). J.G. Roederer: “Introduction to the Physics and Psychophysics of Music”. Springer-Verlag, New York, (1975). S.S. Stevens: "Measurement of Loudness". JASA vol. 27 (1955); pag. 815. E. Zwicker, G. Flottorp, and S.S. Stevens: "Critical Bandwidth in Loudness Summation", JASA vol. 29 (1957); pag. 548. Hynek Hermansky: “Perceptual linear predictive (PLP) analysis of speech”. JASA vol.87 n. 4 (1990); pp. 1738-1752. James O. Pickles: "An Introduction to the Physiology of Hearing". Academic Press (1982). Rudolf F. Graf: “Modern dictionary of electronics”. Newnes (1999). E. Bigand, R. Parncutt, & F. Lerdahl.: “Perception of musical tension in short chord sequences: The influence of harmonic function, sensory dissonance, horizontal motion, and musical training. Perception and Psychophysics”. R. Parncutt: “Harmony: A Psychoacoustical Approach”. Springer-Verlag, Berlin. (Springer Series in Information Sciences, Vol. 19. Eds.: T.S. Huang & M.R. Schroeder.) (1989). G. Stoll, & R. Parncutt: “Harmonic relationship in similarity judgments of nonsimultaneous complex tones”. Acustica, vol. 63; pp. 111-119 (1987). E. Terhardt, G. Stoll, R. Schermbach & R. Parncutt: “Tonhoehenmehrdeutigkeit, Tonverwandschaft und Identifikation von Sukzessivintervallen” (Pitch ambiguity, harmonic relationship, and melodic interval identification)”. Acustica, vol. 61; pp. 57-66 (1986). Bibliografia 101 J. Johnston, “Estimation of perceptual entropy using noise masking criteria”, Proc. ICASSP-88, May 1988, pp. 2524-2527. Algoritmo di compressione Mp3 P. Noll: “MPEG Digital Audio Coding”. IEEE Signal Processing Magazine, pp. 59-81 (Sep. 1997). T. Painter and A. Spanias: “Perceptual Coding of Digital Audio,” Proceedings of the IEEE, vol. 88, no. 4, pp. 451-513, April 2000. D. Pan: “A Tutorial on MPEG/Audio Compression,” IEEE Multimedia, vol. 2, issue 2, pp. 60-74, Summer 1995. S. Shlien: “Guide to MPEG-1 Audio Standard,” IEEE Transactions on Broadcasting, vol. 40, no. 4, Dec. 1994. R. Schäfer: “MPEG-4: a multimedia compression standard for interactive applications and services: “Electronics and Communication Engineering Journal, pp. 253-262, Dec. 1998. R. Koenen: “MPEG-4: Multimedia for our time,” IEEE Spectrum, pp. 26-33, Feb. 1999. K. Konstantinides: “Fast Subband Filtering in MPEG Audio Coding,” IEEE Signal Processing Letters, vol.1, no. 2, Feb. 1994. S. Marovich, “Faster MPEG-1 Layer III Audio Decoding,” HP Laboratories Palo Alto, June 2000. B.G. Lee, “FCT - A Fast Cosine Transform,” IEEE International Conference on Acoustics, Speech and Signal Processing San Diego 1984, pp. 28A.3.128A3.4, March 1984. R. E. Crochiere and L. R. Rabiner: “Multirate Digital Signal Processing”, Prentice-Hall, Englewood Cliffs, NJ., 1983. K. Rao and P. Yip: “The Discrete Cosine Transform: Algorithm, Advantages and Applications”, Academic Press, 1990. P. P. Vaidyanathan, “Multirate Digital Filters, Filter Banks, Polyphase Networks, and Applications: A Tutorial”, Proc. IEEE, v. 78, no. 1, pp. 56-93, Jan 1990. Bibliografia 102 ISO/IEC, JTC1/SC29/WG11 MPEG, “Information Technology – Generic coding of moving pictures and associated audio – Part 3: Audio”, IS 13818-3, 1994 (“MPEG-2”). ISO/IEC, JTC1/SC29/WG11 MPEG, “Information Technology – Generic coding of moving pictures and associated audio – Part 3: Audio”, IS 13818-3, 1994 (“MPEG-2 BC-LSF”). M. Bosi, K. Brandenburg, S. Quackenbush, L. Fielder, K. Akagiri, H. Fuchs, and M. Dietz, “MPEG-2 advanced audio coding”, Proc. 101st Conv. Aud. Eng. Soc., 1996. M. Kahrs and K. Brandenburg: “Applications of Digital Signal Processing to Audio and Acoustics”, Ed. Boston, MA: Kluwer Academic, 1998. D. Sinha, et. al., “The Perceptual Audio Coder (PAC)”, The Digital Signal Processing Handbook, V. Madisetti and D. Williams, Eds., CRC Press, pp. 42.1-42.18, 1998. K. Brandenburg, “Perceptual coding of high quality digital audio”, Applications of Digital Signal Processing to Audio and Acoustics, M. Kahrs and K. Brandenburg, Eds. Boston, MA: Kluwer Academic, 1998. K. Tsutsui, “ATRAC (Adaptive Transform Acoustic Coding) and ATRAC 2”, The Digital Signal Processing Handbook, V. K. Madisetti, and D. Williams, Eds., CRC Press, Boca Raton, FL, 1998, pp 43.16- 43.20. Eric D. Scheirer, “The MPEG-4 Structured Audio Standard”, Proc. Int. Conf. Acous. Speech, and Sig. Proc.(ICASSP-98), May 1998. David A. Huffman: “A method for the construction of minimum-redundancy codes”, Proceeding of the I.R.E., September 1998 Heiko Purnhagen and Nikolaus Meine, “HILN – the MPEG-4 audio coding tools”, ISCAS 2000, IEEE International Symposium on Circuits and Systems, May 28-31, 2000. H. Purnhagen, “An Overview of MPEG-4 Audio Ver. 2 “, invited paper, AES 17th International Conference on High-Quality Audio Coding, Florence, Italy, September 1999 Bibliografia 103 Filtri polifase J. Princen, A. Johnson, A. Bradley: “Subband / Transform coding using filter bank designs based on time domain aliasing cancellation, Proc. Of the ICASSP 1987, pp. 2161-2164 J. Princen and A. Bradley, “Analysis/synthesis filterbank design based on time domain aliasing cancellation”, IEEE Trans. Acoustic., Speech and Signal Processing, Vol. ASSP-34, pp. 1153-1161, Oct. 1986. J.D. Johnston, K. Brandenburg: “Wideband coding: perceputal considerations for speech and music” in: S. Furui, M.m. Sondhi (ed.): “Advances in Speech Signal Processing”, New York, 1991 M.A. Krasner: “Digital encoding on speech and audio signals based on the perceptual requirements of the auditory system”, Technical report 535 of the MIT Lincoln Laboratory, Lexington, 1979 B. Edler: “Coding of audio signals with overlapping block transform and adaptive window functions” (in tedesco), Frequenz, vol. 43 (1989), pp. 252-256 K. Brandenburg, J.D. Johnston: “Second generation perceptual audio coding: the hybrid coder”, 88th AES-convention, Montreux 1990, preprint 2937 K. Brandenburg, J. Herre, J.D. Johnston, Y. Mahieux, E.F. Schroeder: “ASPEC: Adaptive Spectral Perceptual Entropy Coding of high quality music signals!”, 90th. AES-convention, Paris 1991, preprint 3011 H.S. Malvar: “Extended lapped transforms: fast algorithms and applications”, Proc. Of IEEE Int. Conf. On ASSP, pp. 1797-1800, Toronto 1991 R. D. Koilpillai and P. P. Vaidyanathan “Cosinemodulated FIR filter banks satisfying perfect reconstruction”, IEEE Trans. SP, 1992, 40(4), pp. 770-783 J. H. Rothweiler “Polyphase quadrature – a new subband coding technique”, ICASSP 83, Boston, 1983, pp. 1280-1283 T. W. Parks and C. S. Burrus: “Digital filter design”, New York, John Wiley & Sons,1987, pp. 83-94 Z. Zhang, L. Jiao: „A simple method for designing pseudo-QMF banks”, Kay Lab. for Radar Signal Processing, Xidian University, Xi’an 710071, China Bibliografia 104 Web radio AA.VV. a cura di Franco Monteleone: “La radio che non c’è, settant’anni, un grande futuro”, Donzelli Editore, Roma 1994. Alluquère Rosanne Stone: “Desiderio e tecnologia, il problema dell’identità nell’era di Internet”. Feltrinelli Interzone, Milano 1997. Marshall McLuhan: “L’uomo e il suo messaggio. Le leggi dei media, la violenza, l’ecologia, la religione”, prefazione di John Cage, Sugarco edizioni, Varese1989. Bill Rose & Joe Lenski: “The infinite dial 2008: radio’s digital platforms”, Arbitron inc. / Edison research, 2008 Bill Rose & Joe Lenski: “The infinite dial 2009: radio’s digital platforms”, Arbitron inc. / Edison research, 2009 “An Introduction to Internet Radio”. European Broadcasting Union (EBU). 26 October 2005. http://www.ebu.ch/fr/technical/trev/trev_304-webcasting.pdf. Retrieved 2009-03-30. Doc Searls: “Why Are So Many Internet Radio Stations Still on the Air?”, July 17, 2002, Linux Journal. Olga Kharif. “The Last Days of Internet Radio?”, March 7, 2007. Retrieved on March 7, 2007. Chris Priestman “Web Radio: Radio Production for Internet Streaming”, 2001. Focal Press Forouzan, Behrouz A. “TCP/IP Protocol Suite” (2nd ed.). McGraw-Hill, 2003.