La tecnologia Mp3 - itis galileo galilei conegliano

!
"
#
# $%
#&
#
'
(
)
*
!
'
"
*
,
+
!
# "
#
(
-
.
/
0
(
0
.
(#
)
+
$%
+
*
!
# "
*
+
,
#
(
0
-
.
(
0
0
0
.
#
/
1
2
!
)
1
#
1
3
/
$%
4
*
*
'
*
#
3*
0
5
*
7
'
!
-
6
#
0! 56"
# "
(
$%
'
/
.
-
0 560
#
,
8
*
*
*
56
#,
9$
#
,
$%
0 560
:+;
*
"
#
#
3
*
$%
'
/
*
'
#
,
' (
56
#
<*
56
=
1
'
$%
(
0
0
#
>
'
#
2
$% &'' '&"( " )&*
3
'#
+
$ $+'&
,
3/) ',
?>) <>4?
%&",()$ $+'&
<@@<44? @6<&7<>A<
) /B<6)
'&+-$ $+'&
<@@<44? ) /B<6)
4< '?6)3<
./$+'$ $+'&
<4?C? C,/? '6< ,
?><
C<33* '<D 3)E<6 ,
,
,
./ ('$ $+'&
'<D )7C,
? 3)E<6
IL CAMPIONAMENTO
3
Prima di tutto è necessario capire come è possibile inserire dei suoni in un computer. Un suono si
propaga nell’aria sotto forma di onda. Questa onda viene trasformata da analogica a digitale
attraverso un processo chiamato campionamento. Durante questa fase il suono viene scomposto in
un certo numero di informazioni al secondo. Maggiori sono le informazioni, più fedele sarà la
riproduzione digitale della forma d’onda.
Le variabili su cui si può intervenire in fase di campionamento sono tre:
1. Tipo di canale (mono o stereo).
2. Frequenza del campione.
Indica il numero di campioni presi al secondo.Esempio: 22 Khz=22.000 campioni al
secondo. 11025 Hz è adatto per la registrazione della voce, 22050 Hz è adatto per la
registrazione di qualità nastro mentre 44100 Hz si addice alla registrazione di qualità CD.
Ridurre la frequenza di campionamento comporta una perdita di risoluzione.
3. Dimensioni del campione di un'
onda (8 – 16 bit).
Possiamo immaginare il segnale campionato come formato da tanti livelli che visivamente
somigliano ad una scala, la quale segue un andamento il più fedele possibile alla forma
d’onda originale. Gli 8 bit offrono una qualità acustica inferiore rispetto a quella di un
nastro perchè rendono in 256 valori le informazioni sui livelli dei campioni. I dati d'
onda a
16 bit producono invece la massima qualità sonora (16 bit =65.536 valori sui livelli)
paragonabile a quella di un CD. Convertendo campioni da 16 bit a 8 bit si dimezza il file
originario ma contemporaneamente si riduce pesantemente la qualità della musica.
Inoltre esistono vari livelli di compressione (Layers) utilizzati dall’MPEG. Utilizzando un layer di
compressione più alto (ad es. 64 Kb/s), l’MPEG eliminerà, oltre alle informazioni non udibili,
anche quelle udibili ma meno importanti. Utilizzando una compressione “più leggera” (ad es.128
Kb/s) non sarà possibile percepire differenza tra il brano compresso in MPEG e l’originale. Le
compressioni possibili sono: sui bit rate, sugli hertz e sul mono o stereo. A parità di
campionamento hertz, il bit rate maggiore avrà migliore qualità, mentre il bitrate minore produrrà
Seconda parte - L'effetto frequenze maschera
file più piccoli ma di qualità inferiore.
Partiamo dall'
assunto che:
•
L’orecchio umano percepisce le frequenze che vanno dai 20 Hz ai 20Khz, ed è più sensibile tra i 2
e i 4 Khz.
4
•
Il range dinamico, dal suono più basso percepito al più alto, è di 96dB.
•
Il range della voce umana varia dai 500 Hz ai 2Khz.
Determiniamo la sensibilità dell’orecchio umano
Quanto è sensibile l’orecchio umano?
Esperimento: mettete una persona in una stanza isolata
acusticamente. Variate il volume di un tono pari ad 1 Khz
finchè diventa udibile. Variate la frequenza del tono e
disegnate i valori risultanti.
Cosa accade:
Frequenze inferiori ai 2 Khz avranno bisogno di un
volume più alto per poter essere percepite dall’orecchio
umano. La maggiore sensibilità si ha tra i 2 Khz e i 4 Khz.
Per poter udire le frequenze successive ai 6 Khz in su,
bisognerà incrementare il loro volume secondo
l’andamento evidenziato dal grafico in figura 1.
5
Effetto maschera di alcune frequenze su altre
Le frequenze possono interferire tra di loro?
Esperimento: emettete un tono pari a 1 Khz (tono
maschera) ad un volume fisso pari a 60 dB. Emettete un
tono test ad un differente livello (es. 1.1 Khz) e aumentate
il volume finchè diventi appena distinguibile. Variate la
frequenza del tono test e disegnate i valori risultanti in cui
esso diviene udibile.
Cosa accade:
Il tono fisso a 60 dB copre il tono test nelle frequenze
immediatamente antecedenti e soprattutto nelle frequenze
successive. In condizioni normali infatti la percezione del
tono test sarebbe rimasta pari a quella della figura 1;
l’inserimento di un secondo tono fisso ad un volume più
alto, impone di aumentare il volume del tono test di una
certa percentuale per poter essere udito insieme al tono
fisso (tono maschera).
Ripetere l’esperimento per varie frequenze di toni
maschera.
Cosa accade:
Si evidenzia il fatto che esistono molteplici effetti
maschera.
)
1
1
F
#
6
&
1
#
!
"
$+ 5
#
%+ 5#
#
!
:
"
#
1
1
=
!
:
"
#
G
0
0
",(" /% ,(
,
F
(
#
.
4
0
1
&*
2
=
#<
%
(
1. 7
F
F
F
#
7
2. )
!
'
/
"
!
F
"
#
3. 3
!
"
!
$ 5
4. 3
"
#
!
H
'"
#
&*
<
$
•
•
•
•
•
,
<
FI
5
:
,
,
&
JI
9I
+ 5!
K
5"
: 5!
L : 5"
!
H
5"
0
3M
&* $
2
!
'
3M
3
3M ,
,
!
#
#
!
/
1
",
"
5% ( %'&+&,
6
C//
2
7
5
#)
!
$4&+
F '<D
# /=
=
3M ,
#
+&%% ,(&
2
"
#
:::
1
"
# ,3 M ,
,
,
$4&+
'
JI
9I#
#&
7
(
$+ 5#
.
5
2
(
/
4
0
"
",
)$
'
1
# /=
#
+&%% ,(&
6
$
67
5% ( %'&+&,
8
5 000
9
5
8
)
1
$+ N
*
.
.
:$
N
#
",
2
+&%% ,(&
)$
1
'<D P F
6; $
6
7
!
B
N
N
"
#/
F
F
!!
! ++;"
#
:::
+&$ --$+& *
<
.
5
3M ,
,
N
$+ N
#
3M
"
5 000
1
3
( "$%$
6
-"
-"
" $
" $
!!
"+&$+&/(
'
#7
#7
5% ( %'&+&,
#>
.
9
N
1
$4&+
O
9
# <F
#/
'
/C)
R
$ $+' +&)$ /(
(
Q)G.
Q)G
<
&$/) ,6
'.
R
Q)G
S# ,
%% ++B
$
T
6
6 RU
#7
!
8T
U
/C)
!
"
N
Q)G"
#,
8
!
9
"
#7
T
6 RU
S
:
8
+
!
'
"
#
/#
1
!
*
%%# ++B
$-
"
F
.
1
#
3F
#Q)G
3 <>/# P
R
' ! '<D
N
V
<
# '# &
T
@
FU ' /
- 3M ,
,
,
"
,
7
5#
U
#
U
#,
<F
N
#
'
=
#>
5
./$ '$1
&*
2
=$()$
4,
'? 4<3<@?>?
,)&
#:
?>?
<D3,
? C<33<?>C</?64<
%#:
?>?
<D3,
? C<33) 6)C,
?)
J#:
?>?
,,
3<)33) @
= '+$'&
$
N
$
:
&7)3,
4)*/C
%(
%(
N
4<6<? 9$-
L :
/
'
'
3*
Q)G.
Q)G
Q)G
+
&
6
#
'
#G
(
(
/
# <*
R
$- %(
N
"+&$+&/( ") $/) , $ $+' +&)$
'
#7
#7
$- %(
N
4<6<?
+&%% ,(&
9$(
N
N
4<6<? :$- $%
G,
/,
>? )3/C
",
#
Q)G
'
%
W5
#
)
)
R
/C
#
10
MPEG layerIII (MP3)
Fa parte invece dei codificatori di forma d’onda lo standard MP3, algoritmo che implementa moderne
tecniche di percezione sonora dell’apparato uditivo umano per raggiungere un’elevata compressione dei
dati senza una percettibile perdita di qualità. Lo standard è stato studiato dall’MPEG (Motion Picture
Expert Group) e stabilisce la sintassi e i metodi di compressione a basso bitrate per audio e video per
riuscire a comprimere il segnale così tanto da permettere l’invio di dati su canali di trasmissione lenti.
L’algoritmo layer III è attualmente il più efficiente in termini di maggiore compressione per la stessa
qualità, ma questa efficienza viene pagata in termini di una maggiore complessità dell’algoritmo di
codifica e quindi maggior tempo di codifica.
L’algoritmo di compressione MP3 è stato disegnato appositamente per gestire file audio che hanno
determinate caratteristiche statistiche; infatti è possibile trovare ad esempio in un brano musicale
una certa correlazione più o meno marcata tra campioni vicini, sintomo di ridondanza statistica che può
essere eliminata utilizzando particolari codifiche (predizione lineare, codifica di Huffman..) che senza
modificare il segnale audio permettono di avere una buona compressione.
In verità la vera potenza degli algoritmi MPEG di compressione audio è determinata dall’utilizzo di altri
metodi di codifica che applicano una compressione con perdita di dati. L’algoritmo calcola mediante
precise tabelle su cui è descritta la percezione del sistema uditivo umano, le parti di informazione audio
che, seppur presenti, non vengono fisicamente percepite dall’orecchio. I suoni che non risultano udibili a
causa dell’adattamento dinamico della soglia di udibilità vengono detti mascherati. L’udito non si può
modellare con un filtro lineare, perché riesce a percepire bene solo in determinate bande critiche. Si
comporta come un banco di filtri passa- basso, con bande di ampiezza tra i 50 Hz e i 5 KHz. Le bande di
questo banco di filtri si sovrappongono,un modello potrebbe avere 26 bande che coprono 24 KHz udibili.
Grazie a questa struttura, può verificarsi il fenomeno della mascheratura simultanea.
La mascheratura nel dominio della frequenza avviene tra due segnali vicini in frequenza più della
risoluzione in frequenza dell’udito umano; esiste quindi una soglia di mascheratura sotto la quale i segnali
sono udibili.Vanno perciò eliminate dallo spettro in frequenza quelle righe per cui si ha un’ampiezza
piccola rispetto ad ampiezze molto più grandi a frequenze vicine. Il segnale ricostruito dal decodificatore
conserverà le caratteristiche fondamentali del segnale stesso. Esiste anche una risoluzione temporale
dell’orecchio umano, sotto la quale non si riescono a distinguere due suoni, ed inevitabilmente si sente
solo il più forte.
Scendendo un po’ più nei particolari, di seguito vengono riportati i passi che l’algoritmo di codifica
MPEG esegue sui dati audio:
- Decomposizione in sotto-bande mediante un banco di filtri polifase
Il segnale audio a banda larga viene decomposto in 32 sottobande mediante uno pseudo-filtro QMF
(Quadrature Mirror Filter) implementato con la cascata di una struttura polifase e di una DCT.
Per aumentare la risoluzione in frequenza , il layer III decompone ognuna delle 32 sottobande in un
massimo di 18 ulteriori sottobande equispaziate. La maggiore risoluzione in frequenza offre un aumento
del guadagno della codifica, però crea anche una fastidiosa perdita di risoluzione temporale, per cui le
sottobande vengono ridotte fino a 6.
- Calcolo dei parametri del modello psicoacustico mediante una FFT
Sono stati studiati 2 modelli psicoacustici per lo standard MPEG1, uno utilizzato dagli algoritmi III,
l’altro dal layer III.
- Allocazione dinamica dei bit con riferimento ai parametri del modello psicoacustico
Si cerca di determinare il minimo numero di bit necessario per codificare le singole sottobande, in modo
che non ne venga variata la percezione.
- Quantizzazione e codifica dei segnali in sotto-bande
La quantizzazione è fatta per ogni sottobanda, utilizzando esclusivamente i bit che sono stati allocati per
essa.
- Multiplex e impaccaggio dei frame
11
Analisi psicoacustica
Una prima compressione viene effettuata mediante la ricerca e l’analisi delle bande di frequenza
critiche e delle soglie assolute.
L’ apparato uditivo umano analizza i segnali a banda larga nelle cosiddette bande critiche. Lo scopo
di questa analisi è quello di decomporre il segnale audio in sotto-bande (le bande critiche) e poi
quantizzare e codificare questi segnali sottobanda. Dato che la percezione dei suoni sotto la soglia
assoluta non è possibile, i segnali sotto-banda che si trovano sotto questa soglia non vengono né
codificati né trasmessi.
In ogni banda critica la differenza tra il livello del segnale e la soglia assoluta è responsabile per la
scelta dei passi di quantizzazione appropriati per ogni banda critica.
Nella seconda fase della compressione vengono sfruttati gli effetti del mascheramento che
l’apparato uditivo umano applica ai segnali.
Per un rumore a banda limitata, oppure un segnale sinusoidale, sono state ricavate le soglie di
mascheramento dipendenti dalla frequenza; queste soglie effettuano un mascheramento di quelle
frequenze che hanno ampiezza minore di esse.
L’algoritmo layer III è attualmente il più potente e raggiunge rapporti di compressione elevatissimi
da 1:10 fino a 1:12 senza variare la qualità del suono.
Per un segnale stereo, una tale compressione corrisponde a una velocità di tyrasmissine da 128 fino
a 112 kbit per secondo.
Alcuni dati mostrano quanto si risparmia in termini di occupazione di memoria a discapito della
qualità del suono con lk’algoritmo layer III:
Il formato MP3 è correntemente usato in alcune applicazioni che dispongono di poche risorse (in
termini di banda e memoria): collegamenti audio tramite isdn, radio digitale via satellite, audio su
internet,etc…
12