Questioni tecniche, prima e adesso

La produzione musicale e la realizzazione di dischi è un processo sfaccettato in cui molti elementi giocano un ruolo. Alcuni di questi sono artistici, altri sono puramente tecnici.
Come funzionava una volta
“Ai tempi” (accento scozzese, stavolta), tutti gli elementi tecnici prevedevano la presenza di persone che sapevano muoversi tra macchine a nastro, console analogiche, outboard, linee e persino vere camere di riverbero. L’ultima cosa che qualcuno voleva era vedere una sessione bloccarsi, con l’artista a perdere tempo prezioso e ispirazione, a causa di qualche questione tecnica.
Come funziona oggi
Tutto questo è ancora valido oggi, anche se quelle questioni tecniche sono cambiate, per chi fa musica con i computer (Fab mi ha detto che in giro sembrano essercene parecchi).
Uno degli aspetti più sottovalutati e trascurati di una DAW è la sua capacità di gestire i ritardi interni intrinseci al routing e al processamento. In questo articolo daremo un’occhiata al modo in cui Pro Tools gestisce la sua ADC (Compensazione Automatica del Ritardo), ma i concetti espressi qui ti daranno le competenze e il cappello da detective necessari per eseguire questi controlli e diagnostiche su qualsiasi DAW.
Dimensione del buffer vs Compensazione della latenza
Cosa è realmente la dimensione del buffer
Prima di tutto, queste due cose non sono la stessa cosa. Per spiegare la dimensione del buffer uso sempre il seguente esempio:
Ogni volta che premi “Play” sulla tua DAW, stai richiedendo dati dal “cervello” del computer agli altoparlanti. Pensalo come a una serie di scatole che viaggiano regolarmente dal tuo computer agli altoparlanti. Questa scatola è il tuo buffer.
Più è piccola la dimensione del buffer, più piccole saranno le scatole che il computer userà per inserire i dati da inviare agli altoparlanti. In un dato intervallo di tempo (es. 1 secondo) il computer dovrà usare più scatole, più energia per riempirle e imballarle correttamente, poi spedirle agli altoparlanti. Poiché la scatola è piccola, il tempo richiesto per riempire e spedire la prima scatola dal momento in cui premi “Play” sarà molto breve, ma il computer dovrà lavorare di più (maggiore utilizzo della CPU) per assicurarsi che tutte quelle piccole scatole vengano inviate. Come nella vita reale, quelle scatole non permettono di contenere molto, quindi ti serviranno tante scatole, tanto nastro, tanto imballaggio e tanta energia.
Con una grande dimensione del buffer, il computer se la prende comoda: una scatola grande significa che può contenere molti dati e la scatola verrà chiusa e inviata solo quando è piena. Questo significa che, dal momento in cui premi “Play” al momento in cui la prima scatola raggiunge gli altoparlanti, passerà più tempo. D’altra parte, scatole più grandi fanno lavorare meno il computer in un dato intervallo di tempo (es. 1 secondo).
Come la dimensione del buffer influenza il workflow
Per ricapitolare:
- Dimensioni del buffer più piccole: maggior reattività, maggiore uso di CPU/risorse di sistema
- Dimensioni del buffer più grandi: minore reattività, minore uso di CPU/risorse di sistema
Per questo motivo, generalmente, si preferiscono buffer piccoli in fase di registrazione (e quindi si necessita della minore latenza possibile tra ciò che suoni e ciò che senti tornare dalla DAW) e si preferiscono buffer più grandi in fase di mix (quando non serve più una reattività critica nel tempo e si preferisce usare più plug-in alleggerendo lo sforzo sul sistema).
Il ritardo di processamento interno è un'altra bestia
Allora, in cosa differisce il “ritardo di processamento interno” dalla “dimensione del buffer”? Mentre la dimensione del buffer è un parametro a livello di sistema, il ritardo di processamento cambia dinamicamente con il routing, i plug-in e le catene di processamento. Ed è qui che può sfuggire di mano.
Ritardo di processamento e sua compensazione
Prendiamo due tracce audio: Traccia A ha un groove di kick e rullante, Traccia B ha un riff di basso. Supponiamo che le due tracce siano state registrate da un duo di prim’ordine, groovy e funky. Ti siedi al mix e decidi che la Traccia A ha bisogno di un po’ di EQ, un po’ di compressione e un tocco di riverbero. La Traccia B è perfetta così com’è. Premi "Play" per ascoltare il risultato, e tutto suona incredibile. Parte di questo è perché la tua DAW compensa automaticamente il ritardo dei plug-in. Perché succede?
Beh, fondamentalmente ci mette più tempo perché la Traccia A raggiunga la fine della sua catena di segnale: la Traccia B è completamente nuda e attraversa il routing direttamente, ma la Traccia A deve essere processata tramite un EQ, un compressore e un riverbero.
Perché esiste la ADC
La Compensazione Automatica del Ritardo assicura che la Traccia B non raggiunga il traguardo da sola: invece aspetterà la Traccia A e, una volta che sono tutte pronte, attraverseranno il traguardo insieme, preservando così le relazioni temporali originali tra le due.
Se la tua DAW non avesse la "ADC" (Compensazione Automatica del Ritardo) la Traccia A suonerebbe come se fosse stata registrata in un momento successivo. Se la differenza è enorme, il batterista suonerà completamente sbagliato e fuori tempo rispetto al bassista e, dato che — nel nostro esempio — i due sono una famosa band funk, verresti licenziato per questo errore.
Come entrano i problemi di ritardo
Ora è facile capire quanto sia importante l’ADC, considerando che di solito hai:
- più di due tracce
- più di tre plug-in in totale
- più routing, con aux per bussing e send/return
e soprattutto: le cose non suonano sempre completamente sbagliate. Potresti avere un lieve spostamento di fase tra i tuoi canali (es. kick, basso e il resto della batteria? Orrore!) che ti fa prendere decisioni di mix basate su un problema tecnico, non sul contenuto delle tracce. E tutto questo cambia con qualsiasi modifica di routing o aggiunta di plug-in! Di nuovo: orrore.
Per questo motivo, assicuriamoci di sapere come diagnosticare se l’ADC funziona correttamente.
Risolvere problemi e regolare l’ADC
Prendiamo due tracce audio identiche, entrambe indirizzate allo stesso bus. Contengono lo stesso pezzo audio: un’onda sinusoidale a 1 kHz a -20 dBFS (ma davvero, qualsiasi cosa va bene purché sia lo stesso clip audio).
Il metodo del Null Test
Inverto la fase (= inverto la polarità) su un canale. Alcune DAW hanno un semplice pulsante "flip phase" sulla strip del canale, ma il mio Pro Tools non ce l’ha. Quindi metto due plug-in Trim identici su entrambe le tracce, bypasso quello sulla prima e lo lascio attivo sulla seconda, per invertire la fase. In questo modo applico lo stesso livello di processing a entrambe le tracce e le tengo identiche a tutti gli effetti.
Sul bus di somma, chiamato "MIX", metto un semplice plug-in Phasescope, per vedere polarità, livelli e immagine stereo.
Quando riproduco la sessione le due tracce si cancellano a vicenda e il risultato è il silenzio totale (-infinito). Ah, la bellezza di lavorare con zeri e uni nel dominio digitale.

Diagnosticare ritardi di routing e dei plugin
Ora, metto un plug-in sulla prima traccia e lo metto in bypass. In questo modo aggiungo il carico di lavoro del plug-in stesso ma non cambio il suono in alcun modo. Sii consapevole che in alcune DAW bypassare un plug-in lo dealloca anche dal percorso di processamento. Nel mio Pro Tools, bypass significa che il plug-in continua a "pesare" sulla CPU ma non influisce sull’audio della traccia stessa.
Ora, se l’ADC funziona correttamente, il risultato sarà ancora un annullamento completo. Questo perché la Traccia B è più veloce della Traccia A (per essa non devono essere fatti calcoli) ma le verrà chiesto di aspettare che la Traccia A sia pronta e poi verranno riprodotte insieme.
Se disattiviamo l’ADC in Pro Tools (menu Setup > Delay Compensation deselezionato) vedrai che Phasescope ora ci restituisce un segnale residuo. Questo significa che le due tracce non vengono compensate.
Nel terzo esempio, facciamo passare la Traccia A attraverso un Aux Track aggiuntivo e poi la mandiamo al bus MIX, mentre la Traccia B continua ad andare dritta al MIX. Se l’ADC funziona correttamente, la compensazione avviene comunque e il risultato deve essere un annullamento completo.

Quando l’ADC fallisce sulle tracce in monitoring d’ingresso
Nel quarto esempio, facciamo passare la Traccia A attraverso una Audio Track, con l’input monitoring attivato. Qui le cose si fanno interessanti. In Pro Tools premiamo play e il segnale non si annulla. È un bug? No.
Pro Tools ha una funzione chiamata "Auto Low Latency" che di solito è ATTIVA per impostazione predefinita. L’idea è che, se metti una traccia audio in input monitoring e/o in modalità registrazione, vorrai registrare qualcosa su di essa. E se questo avviene da una sorgente reale (es. il tuo chitarrista deve registrare un overdub), Pro Tools presume che vorrai la latenza più bassa possibile per assicurarti che il chitarrista possa sentire ciò che sta suonando (sì, lei) in tempo con la sua performance. "Auto Low Latency" fa sì che la regola della Compensazione Automatica del Ritardo venga infranta per le tracce messe in input monitoring e/o in arm record (la "I" verde o il puntino rosso acceso).
La maggior parte delle volte questo è quello che vuoi (soprattutto se la sessione ha già molti plug-in) ma in questo caso non lo vogliamo. Potremmo usare questa tecnica per stampare (bounce) una traccia su un’altra, ed è fondamentale che l’ADC sia mantenuta così da poter monitorare correttamente e impegnarsi nella stampa.

Disabilitare la modalità Auto Low Latency
Per risolvere questo, andiamo al pannello "delay compensation" nella parte inferiore di quella traccia audio (assicurati di avere "Delay Compensation" attivo nel menu "View > Mix Window" per vederlo). I tre campi indicano, dall’alto verso il basso:
- il ritardo totale, in campioni, di quella traccia
- l’offset utente, in campioni, di quella traccia (se presente)
- la compensazione totale, in campioni, di quella traccia, richiesta per uguagliare il ritardo della traccia più lenta nella sessione
normalmente questi campi sono tutti verdi, ma in Pro Tools possono essere arancioni per evidenziare la traccia più lenta nella sessione. Se sono rossi, significa che la traccia non viene compensata correttamente. Ogni DAW ha un massimo di campioni che può compensare.
Per disattivare la modalità "Auto Low Latency" per una data traccia, clicchiamo con il tasto destro sul terzo, campo più basso del Pannello di Compensazione del Ritardo, poi clicchiamo su "Auto Low Latency OFF". Il campo di compensazione apparirà ora blu per farti sapere che la modalità Low Latency è disabilitata per quella traccia.
Se riproduci la sessione ora, noterai il completo annullamento. Le cose tornano a funzionare come previsto.
Puoi usare questa diagnostica in qualsiasi situazione (anche send/return), semplicemente assicurandoti che il risultato finale di due tracce identiche (ma opposte in polarità) dia un annullamento completo. Questo non è discutibile: non è una scelta artistica o un modo di lavorare: le DAW NON dovrebbero influenzare il timing del tuo materiale (sia esso prerregistrato o generato in tempo reale) basandosi su fattori tecnici o operativi.
ADC e strumenti virtuali
E gli strumenti virtuali? Come facciamo a sapere con certezza che vengono tutti compensati correttamente? Beh, non lo sappiamo. Ci fidiamo degli sviluppatori del software. Di solito.
Ma c’è un tipo di strumenti virtuali che non voglio trascurare: le librerie di batterie e i plug-in di drum-replacement. Se aggiungo un campione di kick e rullante a una traccia di batteria esistente, come faccio a sapere che quei due campioni sono perfettamente allineati in fase?

Perché le librerie di batterie richiedono attenzione extra
In questo ultimo esempio, abbiamo tre tracce di batteria: Kick, Snare e Overheads e suonano così:
Potrebbe essere meglio. Non sento abbastanza presenza nel kick e nel rullante e voglio rinforzarli usando dei campioni. Per farlo, apriamo uno strumento virtuale, nel mio caso Slate Digital SSD 4 ma puoi applicare questo principio a qualsiasi plug-in simile.
Una volta selezionati kick e rullante, avvio la sessione e suona così. Abbastanza bene, fa quello che voglio.
Stampare i campioni per evitare il caos
Per me, il primo controllo è fatto con le orecchie. Suona bene, quindi lo tengo. Tuttavia, so che la sessione a breve sarà molto più grande di così e voglio ridurre qualsiasi possibilità che qualcosa vada storto. Quindi, invece di lasciare lo strumento virtuale attivo e doverci fare affidamento, decido di stampare (bounce) le tracce di campione in audio reale. Questo renderà la sessione autonoma e non dipendente da una libreria sonora che qualcuno magari non avrà più installata tra anni, o che il tuo mixing engineer potrebbe non possedere... e bloccherà nel tempo quei campioni assicurando che restino dove sono.
Consiglio: rimuovi tutti gli strumenti virtuali appena possibile, una volta finite le sessioni di arrangiamento/composizione. Personalmente non mi fido *così tanto* del MIDI e preferisco impegnarmi in una sessione più snella e lineare prima di andare a mixarla.
Routing corretto per stampare i campioni
Nell’SSD mixer, instrado le cose come segue:
- Kick (direct): Stereo Output 2
- Snare (direct): Stereo Output 3
- Tutte le tracce di ambiente (Overheads/room ecc.): Stereo Output 4
Poi, in Pro Tools, creo 3 tracce Audio stereo, le nome di conseguenza e imposto gli input come le uscite dello strumento virtuale SSD, le stesse elencate sopra. Per aggiungere un po’ di routing in più (e mettere più cose alla prova) queste 3 tracce andranno al loro bus dedicato e poi al bus MIX.
Se attivo l’Input Monitoring su quelle tracce e premo play, le cose suoneranno strane e fuori tempo.
Questo perché mi sono dimenticato di impostare "Auto Low Latency" su OFF, come spiegato prima. Una volta risolto questo, tutto suona esattamente come prima della stampa.
Procedo quindi a stampare le tracce ed eccole, stampate separatamente e pronte per essere aggiunte alla sessione di mix. La cosa divertente è che, anche con "Auto Low Latency" attivo, il risultato stampato sarebbe compensato correttamente! Perché Pro Tools usa quella modalità Low Latency solo per il lato del monitoring, non per la stampa interna (ben fatto, sviluppatori).

Correggere campioni di batteria disallineati
Ora zoomiamo sulle tracce di batteria. Mentre il rullante campionato è perfettamente allineato e in fase con quello originale, si vede un ritardo tra i due kick. Questo non ha a che fare con la Compensazione Automatica del Ritardo ma più che altro con i campioni reali nello strumento virtuale. Sono tutti diversi, hanno motori diversi, campioni diversi e quindi risultati diversi. Per questo è sempre consigliata un’ispezione finale.
Che ne dici di misurare la distanza tra l’inizio del kick reale e quello del kick campionato, scoprire che è di 72 campioni (lo indica il transport di Pro Tools, una volta che la griglia è impostata su "Samples"). Ora possiamo inserire "-72" nel campo "User Offset" nel pannello di compensazione del ritardo del kick campionato.
Questo dirà a Pro Tools di spostare quella traccia di 72 campioni "prima", allineando così il kick campionato con quello reale. Non significa sempre che suonerà meglio, dico solo che vale la pena controllare! In questo caso, la versione allineata suona meglio e fa percepire i due kick più come uno solo. Sottile ma presente.