La codifica digitale PCM
La maggioranza dei sistemi di registrazione
digitale lavora essenzialmente allo stesso modo.
Un segnale audio in ingresso è inserito in quello che è noto come
un convertitore Analogue to Digital (A-D).
Questo convertitore A-D prende una serie di misurazioni del segnale ad intervalli
regolari, e le memorizza come un numero.
La lunga serie di numeri risultanti è immagazzinata in un supporto dal
quale può essere recuperato con il playback, essenzialmente lo stesso
processo invertito: una lunga serie di numeri è recuperata da un mezzo
di deposito, ed è passato a quello che è conosciuto come convertitore
Digital to Analogue (D-A).
Il convertitore D-A prende i numeri ottenuti dalla misurazione del segnale originale,
e li usa per costruire un'approssimazione molto vicina al segnale originale,
che può essere trasferito ad un amplificatore e quindi ad un sistema
di diffusori acustici per l'ascolto.
Il nome generico per il sistema di registrazione digitale, è Pulse Code
Modulation (PCM), ed è usato in tutti i moderni campionatori, registratori
digitali ed interfacce audio per computer.
Per ottenere una riproduzione fedele di un segnale audio, la codifica PCM mira
ad effettuare un'accurata lettura della forma d'onda del segnale.
Chi ha visto un oscilloscopio, o ha familiarità con campionatori e software
di audio - editing, avrà avuto modo di vedere le tipiche forme d'onda:
linee ondulate usate per rappresentare il suono.
In termini più semplici, una forma d'onda è un tipo di grafico
dove l'asse orizzontale rappresenta il tempo, e l'asse verticale rappresenta
l'ampiezza (in figura a sinistra è rappresentato un semplice segnale).
L'ampiezza, è legata al livello del suono.
Per esempio quando un ad un oscilloscopio viene collegato un microfono posto
in un ambiente rumoroso, l'ampiezza dell'onda corrisponde all'ammontare della
pressione dell'aria sul diaframma del microfono, e questa al volume del suono
(misurato strumentalmente).
Generi diversi di suono corrispondono a caratteristiche e diverse forme d'onda.
La forma d'onda di certi suoni strumentali può spesso essere chiaramente
visibile come una ripetizione di cicli (l'onda mostrata in figura si ripete
più volte), e la quantità di ripetizioni in un dato intervallo
di tempo varierà secondo il tono del suono (i cicli che si ripetono con
maggior frequenza saranno udibili come suoni di alta frequenza).
Suoni che non hanno un tono distinto, d'altra parte, corrispondono a forme d'onda
più irregolari.
Prendendo e memorizzando una serie molto
accurata di misurazioni di una forma d'onda analogica, il sistema di codifica
PCM può ricostruire un'approssimazione molto vicina del suono corrispondente
a quella forma d'onda.
In un sistema PCM di alta qualità, l'approssimazione può essere
così accurata che un suono registrato è praticamente indistinguibile
dalla sua sorgente.
Comunque, perché il sistema lavori bene, deve operare fra determinati
limiti.
Per questo, ci sono essenzialmente due variabili da considerare.
La prima di queste è nota come frequenza di campionamento, e la seconda
è nota come profondità di bit.
La frequenza di campionamento descrive il numero di volte che un segnale audio
in ingresso è misurato o "campionato" in un dato periodo di
tempo.
É tipicamente indicata in kilohertz (kHz, migliaia di cicli per secondo)
e per registrare in "CD - quality" audio, è richiesta una frequenza
di campionamento di 44.1kHz.
La profondità di bit determina l'accuratezza
con la quale è effettuata ciascuna misurazione o campione.
Quando in un sistema PCM di audio digitale il convertitore A-D misura un segnale
in ingresso e memorizza la misurazione come un numero, questo numero è
rappresentato come una serie di 0 e 1, anche noti come numeri binari.
La profondità di bit, perciò, si riferisce alla lunghezza delle
parole binarie (cioè sequenze di 0 e 1) usate per descrivere ciascun
campione del segnale d'ingresso preso dal convertitore A-D.
Parole più lunghe permettono la rappresentazione di una serie più
ampia di numeri, e quindi misurazioni più accurate e riproduzioni più
fedeli di un segnale (maggior dinamica e minor distorsione).
In un sistema a 16 bit, ciascun campione è rappresentato come una parola
binaria lunga 16 cifre.
Poiché ciascuna di queste 16 cifre può essere uno 0 o un 1, sono
possibili 65.536 (216) valori per ciascun campione.
Fattori che
determinano le dimensioni dei file audio
Per rendere più maneggevoli i file audio, è necessario ridurre
la loro dimensione, e ci sono vari modi per farlo.
Un metodo è ridurre la frequenza di campionamento: se è dimezzata
(22.05kHz invece di 44.01kHz), viene considerata la metà delle misurazioni
del segnale in ingresso, e così è prodotta solo la metà
dei dati (un altro modo è una registrazione monofonica, che dimezza ulteriormente
la quantità di dati necessaria).
Tuttavia, queste scelte hanno alcuni seri effetti collaterali sulla qualità
del suono.
Il range della voce umana varia dai 500Hz ai 2kHz.
L'orecchio umano percepisce le frequenze che vanno dai 20Hz ai 20kHz, ed è
più sensibile tra i 2 e i 4kHz.
Il range dinamico, ossia l'intervallo dal suono più basso al più
alto percepibile, è di 96dB (Decibel).
In generale, frequenze di campionamento di 11025Hz sono adatte per la registrazione
del parlato, 22050Hz per ottenere una qualità tipo radio (o dei vecchi
dischi 78 giri caratterizzati da risposta in frequenza tra 50-8000kHz), mentre
44100Hz per registrazioni di qualità CD.
Ridurre a metà (da 44.1 a 22.05kHz) la frequenza di campionamento comporta
una perdita di risoluzione, e quindi una minore fedeltà durante la riproduzione.
Sarebbe un'esagerazione dire che la qualità del suono è ridotta
a metà, ma la registrazione è comunque in alcuni punti meno accurata
per la metà.
In particolare, la risposta in frequenza del sistema di registrazione è
dimezzata.
In effetti questo comporta che molte delle altre frequenze contente nel suono
originale sono perdute e con esse molte armoniche, portando a registrazioni
scarse per brillantezza e chiarezza.
La correlazione tra frequenza di campionamento e risposta in frequenza è
data dal "Teorema di Shannon - Nyquist".
Un "CD - quality" convenzionale ottenuto dal tradizionale sistema
di registrazione digitale, usa una frequenza di campionamento di 44.1kHz, e
quindi può solo riprodurre frequenze fino a 22.05kHz.
Tutte le frequenze sopra questo limite sono scartate.
Questo non è generalmente considerato un problema, dal momento che le
ricerche hanno mostrato che la maggior parte degli esseri umani sono capace
di udire poco o nulla sopra quella frequenza.
Però, se la frequenza di campionamento è ridotta a 22.05kHz, tutte
le frequenze oltre 11.025kHz saranno scartate, e questo comporterà una
degradazione ben udibile nella qualità del suono.
Molti strumenti musicali producono frequenze oltre questo intervallo, e le registrazioni
fatte con una frequenza di campionamento ridotta possono restituire immagini
sonore scarse per brillantezza e chiarezza.
Un metodo alternativo di ridurre la dimensione di un file audio è ridurre
la profondità di bit del sistema di registrazione usato per crearli.
Per esempio, un campionamento a 8bit può essere usato invece di uno a
16bit.
Proprio come la riduzione della frequenza di campionamento, questo ha indubbiamente
l'effetto desiderato di ridurre l'ammontare di dati generati per fare una registrazione.
Se ciascun campione del segnale in ingresso è memorizzato come un 8 bit
piuttosto che un 16 bit di parola binaria, allora la registrazione produce solo
un byte per campione piuttosto che due.
Questo virtualmente raddoppia la capacità del mezzo del supporto di memorizzazione
usato, in quanto dimezza realmente la grandezza dei file.
Una riduzione nella profondità di
bit, però comporta alcuni effetti indesiderabili per la qualità
del suono.
Come abbiamo visto, un sistema a 16 bit permette 65.536 o (216) valori possibili
per ciascun campione preso.
Si potrebbe pensare che un sistema a 8 bit permetta esattamente la metà
della risoluzione audio, ma questo sarebbe ottimistico: una parola binaria di
8 bit ha in effetti solo 256 (28) valori possibili.
Ciò comporta un campionamento notevolmente meno accurato del segnale
in ingresso, e, per conseguenza, registrazioni di qualità inferiore.
Infatti, con meno valori possibili per definire ciascun campione, un sistema
di registrazione a 8 bit è a volte forzato a rappresentare male una quantità
piuttosto significativa (vedi figura sopra).
Questo travisamento può essere descritto come una riduzione nel rapporto
segnale/disturbo del sistema, e conduce a registrazioni che producono un suono
aspro, innaturale e con scarsa dinamica.
A dispetto dei problemi inerenti la riduzione nella frequenza di campionamento
e la profondità di bit del PCM audio, questi metodi sono usati spesso
in applicazioni dove la qualità del suono è considerata un minore
priorità rispetto alla conservazione delle risorse del sistema (per esempio,
in commenti parlati, un campionamento a 8 bit e 22.05kHz è del tutto
accettabile).
Varie altre raffinate varianti della PCM, quali DPCM (Differential Pulse Code
Modulation) ed ADPCM (Adaptive Differential Pulse Code Modulation), sono state
sviluppate anche allo scopo di ridurre le dimensioni dei file senza sacrificare
troppo la qualità del suono.
Questi formati, fondamentalmente aiutano a migliorare l'ordinaria PCM con metodi
più efficienti di gestione e memorizzazione dei dati.
Tuttavia, al meglio delle loro prestazioni, non producono riduzioni sufficienti
nella dimensione dei file per risolvere il problema di come offrire registrazioni
sonore di alta qualità in applicazioni per opere multimediali e per Internet.
Per fare questo, è richiesto un approccio completamente diverso.
Il problema
della dimensione dei file
Un sistema a 16 bit con una frequenza di campionamento di 44.1kHz è largamente
accettato come riferimento per l'audio digitale consumer, e quando i fabbricanti
offrono "CD - quality" audio, descrivono fondamentalmente un sistema
che opera, o è capace di funzionare, fra questi limiti.
Comunque, uno svantaggio dell'audio PCM è che mentre la qualità
del suono può essere eccellente, la memorizzazione delle registrazioni
richiede notevoli risorse qualunque mezzo sia usato.
Questo è matematicamente inevitabile: 44.100 campioni per secondo a 16
bit produrranno 88.200 byte di dati (poiché ci sono 8 bit per ogni byte)
per secondo e due volte questo valore (176.400 byte per secondo) per un segnale
stereofonico.
Così, registrare un minuto di audio stereofonico richiede 10.584.000
byte (circa 10 megabyte) di spazio disponibile su un supporto di registrazione
(hard disk o CD - ROM).
Mentre queste dimensioni sono accettabile per quanto riguarda i convenzionali
audio CD (in quanto possono memorizzare circa 74 minuti di registrazione musicale),
per altre applicazioni la cosa può essere problematica.
In situazioni dove le registrazioni sonore devono essere registrate e memorizzate
in file su un computer, è di solito necessario ridurre la dimensioni
di un file quanto più possibile, per sfruttare al massimo le limitate
risorse del sistema.
Per la memorizzazione e lo scambio, si può anche ricorrere ad un tradizionale
processo di compressione (per esempio, file in formato Zip), ma in questo modo
il file prodotto non può essere letto (riprodotto) in tempo reale ed
inoltre, la riduzione delle dimensioni è generalmente inferiore al 30
per cento.
Quando i computer sono connessi a Internet, la necessità di ridurre le
dimensioni dei file diviene pressante.
Lo spazio a disposizione sui server web è limitato e può essere
costoso; inoltre, le linee del telefono non hanno la larghezza di banda necessaria
per permettere la trasmissione di file molto grandi a meno di accettare tempi
biblici.
Per soddisfare le esigenze di spazio, si ricorre alla Perceptual Coding.