La rivoluzione della registrazione audio digitale

indice


A cavallo degli anni '90 si è verificata una profonda trasformazione nelle tecnologie di registrazione e riproduzione del suono che hanno rivoluzionato il modo in cui viene ascoltata la musica, simili strategie hanno prodotto cambiamenti meno evidenti, ma altrettanto sostanziali, in numerose tecniche di laboratorio per il monitoraggio di segnali elettrici o a essi riconducibili. Come spesso accade in questi casi, la fruizione delle nuove tecnologie da parte del grande pubblico non è accompagnata da un'adeguata consapevolezza delle innovazioni introdotte.

La misura di un segnale variabile nel tempo

In molte applicazioni risulta fondamentale eseguire misure di grandezze fisiche variabili nel tempo in maniera da rappresentarne adeguatamente la variabilità. Per questo scopo è necessario ripetere la misura in tempi sufficientemente vicini per registrarne i dettagli con la risoluzione temporale desiderata. Le onde acustiche (ossia udibili dal nostro apparato uditivo) sono costituite da variazioni periodiche della pressione dell'aria (che viaggiano alla velocità di circa 380 m/s) con frequenze comprese fra i 10 Hz e i 10 kHz circa, ossia in un intervallo di 3 ordini di grandezza. Queste caratteristiche rendono necessario il campionamento del segnale audio con una frequenza di alcune decine di kHz, nel caso del campionamento di un segnale vocale il campionamento a 8-10 kHz è sufficiente. Applicazioni tecnologiche in altri contesti rendono necessario il campionamento di segnali analogici anche con frequenze di svariati MHz. Questi requisiti rappresentano una sfida tecnologica sicuramente non banale; un osservatore ben allenato è forse in grado di annotare un risultato ogni secondo, ma solo con l'avvento di tecnologie elettroniche avanzate e del computer è stato possibile ottenere prestazioni adeguate. Ma allora come si faceva antecedentemente agli anni '80?

Le rappresentazioni analogiche dei segnali

I segnali analogici venivano osservati e misurati attraverso tecniche analogiche, ossia trasformati in variazioni di grandezze fisiche di immediata percezione in funzione di una coordinata unidimensionale di posizione che rappresenta il tempo. Un esempio notevole di questa strategia di misura è rappresentata dall'oscilloscopio nel quale rapide variazioni di segnali elettrici possono essere visualizzate su uno schermo fluorescente attraverso un opportuno sistema di deflessione di un fascio di elettroni (raggi catodici). Per conservare l'informazione sulla forma d'onda o di impulso osservata, lo schermo veniva fotografato e il segnale V(t) ricavato da opportune misure eseguite sulla fotografia. Nel campo della riproduzione dei segnali audio il segnale veniva riprodotto attraverso un'incisione sul supporto di vinile (figura 1).
La coordinata temporale è (era) rappresentata dal solco che si avvolgeva a spirale sul disco. Per riprodurre 20 minuti di musica in un LP a 33 giri (giri/minuto) occorrono 660 giri della spirale che, per solchi spaziati tipicamente 0.15 mm, occupano circa 10 cm di distanza radiale. Una nota alla frequenza di 10 kHz incisa su un disco di vinile alla distanza di 15 cm dal centro è costituita da oscillazioni, tracciate lungo il solco, con il passo pari a circa 0.050 mm.
Dunque, immaginando di svolgere la spirale contenuta in un disco di vinile, il tracciato di oscillazioni risulta una fedele rappresentazione (analogica) della modulazione della pressione associata all'onda acustica corrispondente.


Il campionamento digitale di un segnale analogico

La filosofia legata al campionamento digitale di un segnale analogico è completamente differente. Contrariamente a quanto si potrebbe pensare, il motivo principale dell'esigenza del campionamento digitale non è la migliore precisione raggiungibile, ma il fatto di poter disporre direttamente di una sequenza di numeri che rappresentano la variazione temporale della nostra grandezza fisica. Il campionamento digitale realizza pertanto anche la 'trascrizione' del segnale su un supporto ottimale di scrittura e immagazzinamento dati che è rappresentato oggi dal computer. In qualche senso lo sviluppo dell'elettronica digitale e dei computer ha condizionato la scelta in favore del campionamento digitale dei segnali analogici. Vi sono due caratteristiche fondamentali che definiscono le proprietà di un campionamento digitale: esse sono la frequenza di campionamento e la risoluzione della misura digitale in bit. Anche questa caratteristica è indotta dai vincoli imposti dall'elettronica digitale e dalla rappresentazione binaria dei numeri. Usando 16 bit è possibile rappresentare numeri interi fra 0 e 65535=216-1, utilizzando un intervallo simmetrico centrato sullo zero utilizzando un bit per il segno 0 (+) e 1 (-) l'intervallo rappresentabile è compreso fra -32767 e +32767. La misura di qualsiasi grandezza fisica è rappresentabile in questo intervallo specificando un opportuno fattore di scala ossia il valore V0 al quale corrisponde il valore massimo rappresentabile:
32767=215-1. Supponiamo di voler campionare una grandezza elettrica (Voltaggio) e che per esempio V0=5 V: la misura V1=0.0347 V risulta (V1/V0) * 32767=227.40..., che viene approssimata dal numero intero 227 la cui rappresentazione binaria è 0000000011100011. È chiaro che questa rappresentazione ha una risoluzione intrinseca di ±1 sul bit meno significativo, che corrisponde (in questo esempio) a un'incertezza di ±5 V/32767~0.00015 V. La scelta del valore V0 è importante, infatti essa determina sia l'ampiezza massima del segnale che può essere correttamente digitalizzata sia l'incertezza sul singolo campionamento. Aumentando il numero di bit si riduce l'incertezza nella misura e allo stesso tempo si allarga il 'range dinamico' delle possibili misure, ossia la capacità di campionare con sufficiente precisione segnali di ampiezze molto differenti. Il numero di bit tipicamente utilizzato per campionamento di segnali analogici spazia da un minimo di 12 (permette la misura con 3 cifre decimali significative), ai 16 citati precedentemente ai 24, per esempio quelli utilizzati in alcune applicazioni di registrazione sonora nelle quali è richiesto un range dinamico elevato.
Nel campionamento digitale del segnale è implicito un degradamento dell'informazione dovuto sia alla limitata risoluzione in bit che alla frequenza di campionamento. Un esempio volutamente scadente di campionamento di un segnale oscillatorio è illustrato in figura 2.



Figura 2

Il convertitore analogico digitale

Ma chi compie la digitalizzazione del segnale analogico a un tasso milioni di volte più elevato delle capacità umane? A questo scopo viene utilizzato un dispositivo elettronico denominato convertitore analogico digitale (ADC). Il convertitore è a tutti gli effetti un apparecchio di misura che confronta il segnale da misurare Vs con un segnale campione generato internamente. Nella versione più semplice il sistema genera una rampa di conteggio da 0 a 2N-1 (con N numero di bit) utilizzando un 'clock' a frequenza elevata, questo conteggio viene convertito in un segnale analogico campione Vc a esso proporzionale e confrontato istantaneamente con il segnale da campionare. Al verificarsi della condizione Vc>Vs, il conteggio viene interrotto e, in corrispondenza della fine del ciclo, lo stato dei bit viene letto e registrato. Si comprende come, anche utilizzando algoritmi più efficienti, il numero di passi da compiere aumenti con il numero di bit. Questo pone delle restrizioni nelle prestazioni di un sistema di acquisizione digitale per il quale occorre cercare un compromesso ottimale fra numero di bit e frequenza di campionamento. Questi dispositivi hanno rapidamente migliorato le loro prestazioni e negli ultimi anni e rimpiazzato le strategie di misura nei più svariati campi di applicazione. Per esempio, oggi misure di segnali analogici vengono effettuate utilizzando oscilloscopi digitali che hanno raggiunto la frequenza di campionamento di 500 MHz con 8-12 bit. Per le più svariate applicazioni sono oggi disponibili una grande varietà di schede per personal computer con frequenze da alcuni MHz a 12 bit a 16 o più bit a frequenze inferiori, la cui variante commerciale è rappresentata dalle schede audio per acquisizione e riproduzione sonora. In questo caso la frequenza standard massima di campionamento è fissata a 44100 Hz, mentre sono disponibili versioni a 16, 24, e persino 32 bit e molti canali a costi contenuti. Registrazione e analisi di un segnale digitale Registrando un segnale acustico con una scheda sonora di un personal computer si crea in genere un file wav il cui contenuto binario non è leggibile. Questo in alcuni sistemi operativi non viene considerato un problema, infatti, l'utente deve fruire del prodotto secondo quanto previsto ma non cercare di capire cosa ci sia dentro, questa curiosità è certamente indice di un indole ribelle e potenzialmente sovversiva che bisogna reprimere. Fortunatamente esistono altri mondi migliori nei quali a noi piace vivere. Come quando, usando il sistema operativo Linux, esiste una vasta disponibilità di software gratuito e trasparente per la conversione di segnali audio. Per esempio, basta digitare  wavtopvf -a file.wav         per avere la sequenza di numeri interi corrispondenti al campionamento. Il vantaggio di disporre di un segnale digitalizzato, già memorizzato in un PC, è certamente quello di poter eseguire le più disparate manipolazioni numeriche. Una di quelle più spettacolari nei segnali acustici è certamente l'analisi del suo contenuto in frequenza, operazione che viene eseguita applicando la trasformata di Fourier (algoritmo Fast Fourier Transform, FFT) a spezzoni della registrazione. Traslando temporalmente lo spezzone soggetto a questa analisi, è ulteriormente possibile studiare la variazione temporale del contenuto in frequenza del segnale. Per comprendere il progresso nel campo, solo 20 anni fa un calcolatore di un medio istituto di ricerca impiegava 1 minuto per eseguire la trasformata di Fourier con un segnale con alcune centinaia di dati. Oggi un modesto PC esegue decine di volte al secondo il conto di una FFT ed è in grado di visualizzare come si modifica il contenuto in frequenza di un segnale analogico in tempo reale.
Un esempio di questa analisi è illustrata in figura 3 dove, in funzione del tempo, riportato sull'asse verticale, viene indicato il contenuto in frequenza di vari suoni.



Figura 3

L'intensità a una determinata frequenza è rappresentata da un codice di colore rosso-arancione-giallo (per intensità crescenti) su fondo blu. I suoni, dall'alto verso il basso, corrispondono a una nota vocale a circa 250 Hz (sono visibili 5 armoniche equispaziate), un fischio a frequenza variabile compresa fra 1 e 1.8 kHz circa (è visibile anche la seconda armonica) e il tintinnio di un calice di vetro, caratterizzato da una complessa sequenza di frequenze proprie di oscillazione. L'analisi è stata eseguita con il software open source eXtace.