1a Lezione: Il suono
Le caratteristiche fondamentali
torna

Prima di manipolare l'audio in generale, conviene conoscere alcuni concetti di base: in questo modo  sarà più facile poter apportare delle modifiche, sapendo così  ciò che stiamo facendo.
Ritengo che sia fondamentale questa prima parte per poter capire il suono (voce-musica) così come è utilizzato in informatica. Infatti, tutti i programmi utilizzati per manipolare in qualche modo il suono, fanno riferimento ai concetti che verranno esposti oltre.

Tutto ciò che noi normalmente utilizziamo con il computer, deve essere prima di tutto digitalizzato, cioè deve essere trasformato in un linguaggio "comprensibile" al computer.
Una volta che abbiamo "digitalizzato" una informazione (audio, musica, video, testo, ecc...) diventa chiaramente misurabile e quindi facilmente manipolabile. L'unità di misura dell'informatica è il bit.
In informatica un bit rappresenta l'unità di misura della quantità d'informazione; così come il metro è l'unità di misura della lunghezza, il chilogrammo del peso, ecc...

In informatica e nella teoria dell'informazione, la parola bit ha comunque due significati molto diversi, a seconda del contesto in cui rispettivamente la si usa:

  • un bit è infatti l'unità di misura dell'informazione (dall'inglese "binary unit"), definita come la quantità minima di informazione (che serve a discernere tra due possibili alternative entrambe possibili).
  • un bit è anche una cifra binaria, (dall'inglese "binary digit") ovvero uno dei due simboli del sistema numerico binario, classicamente chiamati zero (0) e uno (1);
Un byte (contrazione di binary term) è una sequenza di bit, per convenzione negli ultimi anni lo si intende formato da 8 bit, ed è pertanto in grado di assumere (28) 256 possibili valori. Un byte è quindi una quantità di informazione "elementare" per molti scopi. (Ecco una tabella con i principali multipli del byte).

Per quanto riguarda l'audio, grazie al Teorema di Fourier possiamo semplificare il suono in frames (piccoli pezzi o, meglio "campioni") per digitalizzarlo.

Digitalizzare un suono, significa poterlo quindi "scomporre" in tanti piccoli pezzi e registrarli. Uno dei più grandi ostacoli legati però alla digitalizzazione/registrazione del video e dell'audio è l'elevata dimensione dei file che si creano. Questo ha portato gli sviluppatori a trovare dei sistemi (algoritmi) che potessero in qualche modo "comprimere", cioè ridurre le dimensioni dei file audio e dei file video, sia per occupare poca memoria negli hard disk o nei cd, sia per risparmiare tempo durante il trasferimento dei file sulla rete locale - chiamata lan - o sulla rete internet - chiamata wan - (oggi, infatti, con l'Adsl si possono utilizzare sulle reti, anche file di notevoli dimensioni; ma fino ad un paio di anni fa, il modem analogico a 56 kb era quello normalmente utilizzato (ancora oggi, comunque, molti utilizzano quel tipo di modem!) e con tale modem è impensabile proporre sulla rete dei file .mp3 o del video di discreta qualità proprio perché questi sono troppo "grossi" per la banda utilizzata da quei modem).

Il suono è un segnale continuo, analogico, per essere memorizzato deve essere campionato ottenendo così un segnale digitale.
I vecchi Lp o 33 giri (foto a lato) registravano un suono in modo analogico, ossia registravano tutto il suono in modo continuo, dall'inizio alla fine. Il "file" ottenuto non era molto grande perché, in ogni caso, la qualità era abbastanza scarsa. Con la digitalizzazione non si registra tutto il suono, dall'inizio alla file, ma solo alcune parti, solo - appunto - alcuni campioni. Tre sono i parametri che caratterizzano il campionamento (cioè la registrazione del suono in forma digitale) e che influenzano sia lo spazio occupato sia la qualità del suono finale:

  •  Il numero di canali

Esistono due modi di ripartizione dei canali audio: Mono e Stereo. La modalità Mono ha un solo canale mentre quella Stereo ha due canali separati (sinistro e destro). Nella modalità stereo si ascoltano alcuni suoni o voce su un canale e altri suoni sull'altro canale. Nella modalità esce lo stesso suono da tutte le casse. Ovviamente un segnale Stereo occuperà, in termini di spazio, il doppio di uno segnale Mono. Nelle applicazioni più recenti il numero di canali è notevolmente aumentato, si pensi al surround, ma come sempre nell'informatica il problema sorge nel passaggio da uno a molti, e non interessa se questi molti siano due, dieci o più.

  • La frequenza di campionamento

È il numero di campioni (di pezzi di onda sonora) che vengono registrati in ogni secondo da un file audio. La frequenza può cambiare da 8.000 campioni al secondo, a 48.000 campioni. La frequenza si misura in Hertz. Abbiamo quindi una frequenza di 11 kHz (11.025 Hertz) adatta alla registrazione della voce, a 22 kHz (22.050 Hertz) adatta alla registrazione di un nastro musicale, e 44 kHz (44.100 Hertz) per una registrazione di qualità cd. Questo parametro merita una maggiore attenzione rispetto ai precedenti infatti, la grandezza di un file dipende infatti moltissimo proprio da questo parametro; inoltre, segnali analogici diversi possono dare luogo allo stesso segnale campionato.
Per questo motivo è possibile che si verifichi che segnali analogici diversi che, una volta campionati con una frequenza troppo grande, danno luogo alla stesso audio digitale.

  • La risoluzione

Rappresenta il numero di bit utilizzati per rappresentare i campioni: per ogni singolo campione salvato, possiamo immagazzinare diversi valori (per esempio l'intensità della voce, il timbro, ecc...); per fare questo si utilizzano 8 o 16 bit per campione: nel primo caso si hanno 256 valori possibili (cioé 28, essendo 2 byte formati da 8 bit ciascuno), relativamente pochi, infatti offrono una qualità del suono inferiore a quella di un nastro; nel caso si utilizzino 16 bit, si hanno circa 65.000 valori (ossia 216).

Detto questo, quanto spazio (cioè quanti byte) occorre per registrare un file musicale? Questo, ormai è chiaro, dipende dal numero dei canali  mono o stereo (quindi 1 oppure 2), dal numero di byte (1 nel caso di 8 bit, 2 nel caso di 16 bit), dalla frequenza di  campionamento (da 8000 a 48000 hertz), dal tempo di registrazione (espresso in secondi).

Possiamo calcolare lo spazio utilizzato da una registrazione, in questo modo.
Immaginiamo di registrare un suono mono (quindi 1 canale), a 8 bit (quindi 1 byte), a 8000 Hertz, e della durata di 1 minuto (quindi 60 secondi), dobbiamo applicare la seguente formula:

canali x risoluzione x frequenza x tempo

quindi, nel nostro caso avremo:
  1 x 1 x  8000 x  60   =  480.000 byte


se dividiamo 480.000 per mille avremo lo spazio occupato dal file espresso in kilobyte (in questo caso 480 kb); se invece dividiamo 480.000 per 1 milione, avremo lo spazio occupato espresso in Megabyte (in questo caso 0,48 Mb; teniamo presente che su un dischetto - floppy disk - si possono registrare al massimo 1,44 Mb). Lo stesso suono di prima, registrato con una frequenza migliore, per esempio a 44.100 Hertz, occuperà questo spazio:

1 x 1 x 441000 x 60 = 2646000 byte (ossia 2.65 kb, oppure 2,65 Mb)
Normalmente, conviene sempre dividere per un milione, perché i file audio si misurano solitamente in Megabyte (Mb).

In base alla frequenza (chiamata anche sampling rate), alla risoluzione del suono e al numero dei canali, possiamo avere:

Sampling rate Risoluzione

Spazio necessario per 1 minuto di registrazione

Qualità
Mono Stereo
11.025 Hz 8 bit 661.500 byte= 0,67Mb  1.323.000 byte=
1,3Mb
scarsa, telefonica
11.025 Hz 16 bit 1.323.000byte=
1,3Mb
2.646.000 byte =
2,6Mb
scarsa, telefonica
22.050 Hz 8 bit 1.323.000 byte=
1,3Mb
2.646.000 byte=
2,6Mb
qualità radio
22.050 Hz 16 bit 2.646.000 byte=
2,6Mb
5.292.000 byte=
5,3Mb
qualità radio
33.075 Hz 8 bit 1.984.500 byte=
2Mb
3.969.000 byte=
4Mb
qualità radio
33.075 Hz 16 bit 3.969.000 byte=
4Mb
7.938.000 byte=
8Mb
qualità radio
44.100 Hz 8 bit 2.646.000 byte=
2,6Mb
5.292.000 byte=
5,3Mb
qualità cd
44.100 Hz 16 bit 5.292.000 byte=
5,3Mb
10.584.000 byte=
10,6Mb
qualità cd

 

ESERCITIAMOCI.
Adesso, provate a calcolare lo spazio occupato dalle seguenti registrazioni e inviatemi il risultato, espresso in Megabyte:

a) frequenza 33.075 Hz, risoluzione 8 bit, stereo, durata 2 minuti.
b) frequenza 44,1 Khz, risoluzione 16 bit, mono, durata 3 minuti.
c) frequenza 22.050 Hz, risoluzione 8 bit, mono, durata 10 minuti.

Il BIT RATE

Il bitrate è il valore che indica quanti bit vengono usati per codificare un secondo di musica (per entrambi i canali destro e sinistro).
Si esprime in kilobit per secondo (in sigla kbps oppure kbit/s) e in LAME (si tratta di un encoder, un "programma" di trasformazione in Mp3) varia da 32kbit/s (il minimo) a 320kbit/s (il massimo).
Evidentemente, maggiore sarà la quantità di bit utilizzati migliore sarà la resa perchè l'encoder avrà a sua disposizione più spazio per rappresentare digitalmente i dati musicali.
Quindi normalmente, la qualità in ascolto è proporzionale al bitrate, dunque bitrate sempre più alti (uniti a qualche altro accorgimento) garantiscono sicuramente qualità superiore.
In media il valore più utilizzato nel mondo per i file Mp3 128kbps ( un tempo ritenuto qualità-cd...), che garantisce un grosso tasso di compressione del file e qualità accettabile, anche se fortunatamente da qualche anno la tendenza è di usare, se possibile, bitrate superiori (160, 192, 256 e più) privilegiando la qualità.
La valutazione del bitrate migliore e delle altre modalità per creare un Mp3 dipende da vari fattori (dimensioni file, tipo di musica, tipo di brano, standard di qualità che si vuole raggiungere etc.)

Per un suono registrato con qualità Cd (44.100 Hz, 16 bit, stereo), il bit rate è di 176,4 kb/s (cioè 1,41 kbit/s), in un file mp3 questo bit rate si abbassa a 16 kbyte/s (ossia 128 kbit/s) - non dimentichiamo che l'mp3 è una compressione di un file musicale, tale compressione permette di far scendere i circa 10,6 Mb di spazio occorrente per 1 minuto di registrazione di qualità cd ad appena 1 solo Mb!

Per ottenere il bitrate si utilizza questa formula:

(frequenza di campionamento x risoluzione in bit x canali) : 1.000.000

Nel caso di un suono registrato ad una frequenza di 44,1 Khz, stereo, 16 bit (cioè 2 byte) avremo un bitrate così calcolato:
(44.100 x 16 x 2)  : 1.000.000 = 1,41 Kbit al secondo (kbit/s)
(N.B. se usiamo la frequenza in KiloHertz (kHz) allora dovremmo dividere solo per 1.000 e non per 1.000.000).