♫ Audio digitale

Dithering e noise shaping: quando servono davvero nell'audio

Perché aggiungere rumore migliora l'audio quando si riduce la bit depth: dithering, tipi di dither e noise shaping spiegati con esempi pratici di export.

Sembra un controsenso: per migliorare la qualità di un file audio si aggiunge di proposito del rumore. Eppure il dithering è una delle tecniche più solide dell'audio digitale, e capirlo evita un errore molto comune nella fase di esportazione.

Il problema: troncare i bit

Supponiamo di avere un mix lavorato in 32 bit float o in 24 bit e di doverlo esportare a 16 bit. La soluzione più ovvia è eliminare i bit meno significativi. Su un segnale forte questa operazione è innocua, ma sui passaggi molto deboli, come una dissolvenza finale o la coda di un riverbero, succede qualcosa di sgradevole.

Quando il segnale occupa solo pochi livelli di quantizzazione, l'errore di arrotondamento non è più casuale: segue l'andamento del segnale stesso. Diventa così distorsione correlata, cioè armoniche indesiderate che si sentono come un suono ruvido e "a gradini" sulle code. Nei casi estremi la coda di un riverbero, invece di sfumare dolcemente, si spezza in un ronzio granuloso prima di sparire.

La soluzione: rendere l'errore casuale

Il dithering consiste nell'aggiungere al segnale, prima della riduzione di bit, un rumore a livello molto basso, dell'ordine del bit meno significativo. Questo rumore rende casuale l'errore di quantizzazione e lo scollega dal segnale.

Il risultato:

  • la distorsione sparisce e al suo posto resta un fruscio costante e uniforme, molto più tollerabile per l'orecchio;
  • i dettagli più deboli del livello del bit meno significativo restano percepibili "dentro" il rumore, invece di essere cancellati;
  • le dissolvenze scendono in modo continuo fino al silenzio.

In altre parole, si scambia una distorsione sgradevole con un rumore lieve e neutro. È uno scambio vantaggioso.

Tipi di dither

Dither rettangolare e triangolare

I dither si distinguono per la distribuzione statistica del rumore aggiunto. Il più usato è il TPDF (Triangular Probability Density Function), ottenuto sommando due rumori casuali uniformi. Ha il pregio di eliminare del tutto la dipendenza del rumore dal segnale, al prezzo di un livello di rumore leggermente superiore rispetto al dither rettangolare.

Noise shaping

Il noise shaping è un passo ulteriore: invece di distribuire il rumore in modo uniforme su tutto lo spettro, lo sposta verso le frequenze dove l'orecchio è meno sensibile, tipicamente gli acuti estremi. Il rumore totale può essere persino maggiore, ma quello percepito risulta più basso.

Opzione Rumore percepito Quando usarla
Nessun dither Distorsione su code e dissolvenze Mai per riduzioni a 16 bit
TPDF piatto Fruscio uniforme, molto basso Scelta sicura e universale
Noise shaping Più basso nelle medie frequenze Master finale, una sola volta

Regole pratiche

  1. Il dither si applica una sola volta, all'ultimo passaggio, quando si riduce la bit depth per il file definitivo.
  2. Mai dither su bounce intermedi: se esporti stem o tracce da rielaborare, salvale in 24 o 32 bit float.
  3. Il dither va dopo tutto il resto: dopo il limiter, dopo i controlli di volume. Qualsiasi elaborazione successiva annulla i suoi benefici.
  4. Non accumulare il noise shaping: applicato più volte, il rumore spinto sugli acuti si somma e diventa udibile.
  5. Esportando a 24 bit il dither è quasi irrilevante, perché il rumore di quantizzazione è già ben al di sotto del rumore analogico. Molti lo applicano comunque, ed è innocuo.

E per i formati compressi?

MP3, AAC e Opus non memorizzano campioni a bit depth fissa: il codificatore lavora in modo diverso. Se esporti direttamente da una sessione in float verso un codec compresso, il dither non è necessario. Ha senso solo quando, in un passaggio intermedio, crei un WAV a 16 bit da cui poi verrà ricavato il file compresso.

Come sentirne l'effetto

Per rendersi conto della differenza basta un esperimento:

  1. Prendi una nota di pianoforte con una lunga coda, o una dissolvenza.
  2. Abbassala di circa 50 dB.
  3. Esportala a 16 bit una volta senza dither e una volta con dither TPDF.
  4. Reimporta i file e alza il volume di 50 dB per ascoltare.

Nella versione senza dither la coda si sgretola in modo evidente; nella versione con dither si sente un fruscio, ma la nota sfuma in modo naturale. Nel mio lavoro questo esperimento è il modo più rapido per spiegare perché il dither non è un dettaglio da pignoli.

In sintesi

  • Ridurre la bit depth senza dither crea distorsione sui segnali deboli.
  • Il dithering aggiunge un rumore minimo che rende casuale l'errore e lo trasforma in fruscio neutro.
  • Il TPDF è la scelta universale; il noise shaping abbassa il rumore percepito sul master finale.
  • Il dither si applica una sola volta, come ultimo passaggio, e mai sui file intermedi.
  • Esportando direttamente verso codec compressi da una sessione in float non serve.
MM
Marco Marzaduri

Marco Marzaduri si occupa di cybersecurity, informatica forense e sviluppo web. Laureato in informatica, unisce il rigore dell'analisi tecnica all'attenzione per le persone che usano la tecnologia.

Leggi anche