Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
T
mascheramento del tono (tone treshold), Eɴ
e E sono i livelli di energia del
T
mascheratore, B è il numero di banda
critica, K è un parametro che varia da 3 a 5
dB. Le soglie di mascheramento sono
considerate delle funzioni su una scala in
bark (“una scala di frequenza sulla quale
distanze uguali corrispondono distanze
percettibilmente uguali”) delle distorsioni
appena percettibili (JND - just noticeable
distorsions), cioè le misure psicoacustiche
che determinano le minime variazioni
spettrali che il nostro sistema uditivo riesce a
cogliere.
Se la compressione del segnale determina una variazione dello spettro (inferiore alla JND relativa), la
distorsione non verrà percepita. L’applicazione delle soglie di mascheramento nel contesto della
Pagina 19 di 25
compressione comporta quindi la classificazione del mascheratore in un rumore (o tono), quindi il calcolo
delle soglie e quindi l’uso dell’informazione per ridisegnare lo spettro del rumore sotto la soglia di
mascheramento (o JND). Al ridisegno contribuisce anche la soglia assoluta dell’udito.
Questo diagramma rappresenta un singolo tono di
mascheramento che si trova all’interno di una banda
critica. In ascissa la frequenza e in ordinata l’intensità
in dB (in scala logaritmica): Il tono di
mascheramento genera una certa soglia di
mascheramento (la linea spezzata). La figura riporta
3 possibilità di rapporto segnale rumore (SNR) per
m-1, m, m+1 bit. Man mano che i bit aumentano,
anche SNR aumenta. La figura riporta nel dettaglio
l’SNR nel caso di m bit. L’SMR è il rapporto
segnale/maschera (distanza tra livello del tono
mascheratore e minima soglia di mascheramento) e
l’NMR è il rapporto rumore/maschera (distanza tra livello di rumore e minima soglia di mascheramento).
Il rapporto SNR è dato dalla somma di SMR+NMR. Per ogni campione scelgo un tot di bit che mi copre la
parte non udita. Aumentando i bit aumenta la frequenza e si scende dal tono mascheratore, ma se tolgo bit
rappresento di conseguenza meno parte del segnale. Per risparmiare spazio non basta solo eliminare una
parte del suono, ma è meglio rendere il segnale ripetitivo per applicare le tecniche di compressione (ex: su
Audacity faccio un tono sinusoidale singolo, non posso mascherare nulla perché è l’unico tono che c’è).
Mascheramento temporale
• Il mascheramento temporale, formato da un pre-mascheramento, mascheramento e post-
mascheramento, crea un problema: il fenomeno dei pre-echi, ovvero un rumore che si diffonde prima
dell’evento che causa il rumore stesso e che si spalma per tutta la durata, rendendo l’errore percepibile.
L’evento che causa questo rumore è solitamente un incremento rapido di intensità sonora, in cui aumenta
la gamma dinamica ma non aumentano i bit a disposizione.
Entropia percettiva
• Gli schemi di codifica che si basano sul dominio della frequenza risultano più efficaci. Se si riesce a
riprodurre il bitrate necessario a rappresentare il mascheramento completo del rumore e della distorsione,
lo schema di compressione produrrà una codifica percettivamente trasparente, cioè il segnale decodificato
sarà indistinguibile dal segnale originale. Non sempre però è possibile applicarlo nella pratica, anche
perché il mascheramento non è un fenomeno realmente conosciuto nel dettaglio.
Uno schema generale di compressione di tipo percettivo
E’ uno schema asimmetrico (decompressione però più semplice perché veloce) e vale per tutti i formati.
All’inizio il segnale viene segmentato in input, poi:
Pagina 20 di 25
1. analisi tempo/frequenza: calcola lo spettro, analisi condotta o da una trasformata unica o da un banco
di filtri che suddivide il segnale in sottobande
2. analisi psicoacustica: disegna sullo spettro le curve di mascheramento, opera una misura della
distorsione percettiva producendo le soglie di mascheramento, che permettono di determinare il
massimo ammontare di distorsione armonica che si può introdurre nel segnale durante la fase di
quantizzazione. Il modello psicoacustico calcola anche il rapporto SMR
3. allocazione dei bit: il rapporto SMR è utilizzato per decidere quanti bit vengono allocati per la
quantizzazione del segnale in ogni banda, per minimizzare il rumore di quantizzazione
4. quantizzazione e codifica: decide come quantizzare le bande, usa i bit allocati per stabilire le
dimensioni delle regioni di quantizzazione e codificare il segnale
5. compressione senza perdite basata sull’entropia: compressione di Huffman, rimuovono ridondanze
ancora presenti nel segnale (anche attraverso schemi di tipo lossy)
6. codifica del bitstream: dati memorizzati non in ordine cronologico, compressi e mischiati per evitare
errori
7. bitstream: non ha niente a che fare con il file originale
8. decodifica del bitstream: dati rimessi nell’ordine corretto
9. ricostruzione dei campioni: decompressione, somma le sottobanco
10. ricostruzione dei campioni nel tempo
Lo standard MPEG e il formato MP3
MPEG (Motion Picture Coding Experts Group) è un gruppo di lavoro delle organizzazioni internazionali
ISO/IEC per lo sviluppo di standard, tra i quali rappresentazione codificata di video e audio.
Una delle caratteristiche più importanti di questi standard è il principio di minimizzare gli elementi normativi
all’interno dello standard, in particolare quelli imposti sono il formato dell’audio compresso e la scrittura
dell’algoritmo di codifica.
Lo standard MPEG1 di compressione audio è divenuto uno standard universale in vari settori, lavora su 3
livelli di compressione, detti layer : layer I (algoritmo di base), layer II e III (migliorano i moduli dello
schema).
Struttura base asimmetrica:
- il segnale audio viene convertito in spettro tramite un banco di filtri
- ogni componente spettrale viene quantizzata e codificata con lo scopo di mantenere il rumore di
quantizzazione sotto la soglia di mascheramento
- i campioni di frequenza vengono raggruppati in blocchi e per ciascun blocco si applica la comparino
- tutti i campioni del blocco vengono amplificati di un fattore scala determinato a partire dal valore di picco di
blocco e si decidono i bit da allocare per ogni blocco, in base al modello psicoacustico, minimizzando la
distorsione e il rumore
- i bit determinano il numero delle regioni di quantizzazione
- la somma dei bit allocati per ciascuna sottobanda non deve eccedere il massimo bitrate fissato a priori
- i codici, il fattore di scala e l’informazione sull’allocazione dei bit vengono compressi mediante un
algoritmo di Huffman
- il decoder, dopo aver ricomposto il bitstream, usa il banco di filtri e per ogni blocco di campioni di
frequenza ricostruisce un blocco di campioni audio
- il modello psicoacustico calcola i rapporti SMR
Algoritmo di Huffman:
Si selezionano due caratteri, x e y, con le frequenze minime, si rimpiazzano
x e y con un singolo carattere (fittizio) z, la cui probabilità è la somma delle
probabilità di x e y, si torna al passo 1 con un’alfabeto ridotto, in cui z
sostituisce x e y, finché l'alfabeto conta un solo elemento di frequenza
100% .
• Layer I : L’analisi tempo-frequenza di questo layer usa il banco di filtri che è alla base di tutti gli altri layer;
esso divide il segnale audio in 32 bande di frequenza della medesima larghezza (0-31), ciascuna con 12
campioni. Il modello psicoacustico determina le soglie di mascheramento per ciascun blocco di campioni
(block coding). I filtri sono semplici, producono una buona risoluzione temporale ed una ragionevole
risoluzione in frequenza.
L’algoritmo di allocazione dei bit è: NMR = SNR - SMR
dB dB dB
Pagina 21 di 25
Si ricerca la sottobanda (ciascuna da 0 a 15 bit) con il più
basso rapporto NMR e si allocano i bit in quella
sottobanda; il processo si ripete finché non si possono
allocare più bit, raggiungendo la massima trasparenza.
Esempio di allocazione di bit rispetto ai livelli di intensità
sonora nelle sottobanco e alla soglia globale di mascheramento:
I tre diagrammi mostrano rispettivamente intensità sonora per sottobanda
(o spettro di intensità), la soglia di mascheramento per sottobanda e i bit
allocati per sottobanda.
Alle basse frequenze i suoni sono molto intensi e poco mascherati, quindi
occorre allocare alcuni bit per la quantizzazione.
Alle alte frequenze invece si ha una debole intensità e un forte
mascheramento, per cui occorre un minor numero di bit (per le ultime bande
addirittura 0).
I bit allocati sono la differenza tra bande, ossia tra ciò che dava lo spettro
(qui diviso in bande) e ciò che dà il mascheramento.
Layer II: Apporta lievi miglioramenti al layer I, i blocchi di campioni sono più grandi e permette di utilizzare
• più bit per campioni. La rappresentazione è più compatta.
Layer III (MP3): Molte caratteristiche nuove, tra cui un banco di filtri ibrido con un modulo addizionale
• basato sulla Trasformata Discreta del Coseno Modificata (MDCT), che permette una partizione dello
spettro più simile alle bande critiche nelle basse frequenze. Ciascuna delle 32 sottobande può essere
suddivisa 18 volte. Altre caratteristiche nuove sono la quantizzazione non uniforme, le bande dei fattori di
scala (bande raggruppate per uno stesso fattore di scala), l’uso della codifica di Huffman (per ottenere una
maggiore compressione) e la creazione di un luogo in cui conservare i bit in eccesso.
8. Standar MIDI file e sequencer.
Il MIDI non è uno standard ma lo è diventato di fatto. Mette in comunicazione gli strumenti musicali
con un computer. La musica si può rappresentare con la forma d’onda, dominio del tempo e della frequenza,
ecc.. ma si può anche rappresentare in un altro modo: di volta in volta scelgo la forma di rappresentazione
che mi è utile.
- livello fisico (forma d’onda con ampiezza, frequenza, fase, ecc..) ed è quello usato da Audacity.
- livello percettivo: quello che percepiamo. Più è alta la frequenza più sentiamo forte il suono. Il timbro
rispecchia invece la forma dell’onda. È un modo di rappresentazione più astratto.
- (più astratto) livello operativo: dò per scontata la sorgente sonora e descrivo qual è il gesto esecutivo e il
processo che determinerà i livelli che stanno sotto. Ad esempio come mi muoverò sulla tastiera di un
pianoforte e che tipo di suoni verranno prodotti (percepiti come timbro e poi con una certa forma d’onda)
- livello simbolico è ancora più astratto, dice la successione di eventi, non come li devo suonare.
Di solito i musicisti lavorano a que