Torna al blog
October 24, 2018

Comprendere la compensazione del ritardo dei plug-in

Tecniche, allora e ora

La produzione musicale e la realizzazione di dischi è un processo multifaccettato in cui molti elementi giocano un ruolo. Alcuni di questi sono artistici, altri sono meramente tecnici.

“Ai tempi” (accento scozzese, questa volta), tutti gli elementi tecnici coinvolgevano un certo numero di persone che conoscevano bene le macchine a nastro, i mixer analogici, l’hardware esterno, le linee e persino le vere camere di riverbero. L'ultima cosa che chiunque volesse era vedere una sessione bloccarsi, con l'artista che perde tempo prezioso e ispirazione, a causa di qualche tecnicismo.

Tutto ciò è ancora valido oggi, anche se quelle tecnicità sono cambiate, per coloro che fanno musica con i computer (Fab mi ha detto che sembra ci siano un sacco di loro in giro).

Uno degli aspetti più trascurati e sottovalutati di un DAW è la sua capacità di gestire i ritardi interni inerenti al routing e all'elaborazione. In questo articolo daremo un'occhiata al modo in cui Pro Tools gestisce il suo ADC (Automatic Delay Compensation), ma i concetti espressi qui ti daranno le conoscenze e il cappello da detective necessari per eseguire questi controlli e diagnosi su ogni DAW.

Dimensione del buffer vs Compensazione della latenza

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” sul tuo DAW, stai richiedendo dati dal "cervello" del tuo computer ai tuoi altoparlanti. Pensala come un certo numero di scatole che viaggiano regolarmente dal tuo computer ai tuoi altoparlanti. Questa scatola è il tuo buffer.

Più piccola è la tua dimensione del buffer, più piccole saranno le scatole che il tuo computer utilizzerà per mettere i dati da inviare ai tuoi altoparlanti. In un dato momento (es. 1 secondo) il tuo computer dovrà usare più scatole, più energia per riempirle e imballarle in modo sicuro, quindi spedirle ai tuoi altoparlanti. Poiché la scatola è piccola, il tempo necessario per imballare e spedire la prima scatola dal momento in cui premi “Play” sarà molto breve, ma il tuo computer dovrà lavorare di più (maggiore utilizzo della CPU) per assicurarsi che tutte quelle scatole minuscole siano spedite. Proprio come nella vita reale, quelle scatole non consentono molto spazio al loro interno, quindi avrai bisogno di molte scatole, molto nastro, molto imballaggio, molta energia.

Con una grande dimensione del buffer, il tuo computer prenderà le cose con calma: una grande scatola significa che molte più informazioni possono entrarvi, e la scatola verrà chiusa e inviata solo quando sarà piena. Questo significa che, dal momento in cui premi “Play” fino a quando la prima scatola raggiunge i tuoi altoparlanti, passerà più tempo. D’altra parte, scatole più grandi fanno lavorare di meno il computer in un dato intervallo di tempo (es. 1 secondo).

Per riassumere:

  • Dimensioni del buffer più piccole: maggiore reattività, maggiore utilizzo della CPU/risorse di sistema
  • Dimensioni del buffer più grandi: minore reattività, minore utilizzo della CPU/risorse di sistema

È per questo che, generalmente, le piccole dimensioni del buffer sono preferite nella registrazione (e richiedono la latenza più bassa tra ciò che suoni e ciò che puoi sentire dal tuo DAW) e le dimensioni maggiori del buffer sono preferite nel missaggio (quando non hai più bisogno di una reattività critica per il tempo e preferisci utilizzare più plug-in rilassando lo stress sul tuo sistema)

Quindi, come si differenzia il “ritardo di elaborazione interno” dalla “dimensione del buffer”? Mentre la dimensione del buffer è un parametro a livello di sistema, il ritardo di elaborazione cambia in modo dinamico con il routing, i plug-in e le catene di elaborazione. Ed è qui che può diventare incontrollabile.

Ritardo di elaborazione e la sua compensazione

Prendiamo due tracce audio: Traccia A ha un groove di kick e snare, Traccia B ha un riff di chitarra basale. Mentre ci siamo, 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 accenno di riverbero. La Traccia B è perfetta così com'è. Premi “Play” per ascoltare il risultato, e tutto suona incredibile. Parte di questo è dovuto al fatto che il tuo DAW sta automaticamente compensando il ritardo del plug-in. Perché?

Beh, fondamentalmente ci vuole più tempo affinché la Traccia A raggiunga la fine della sua catena del segnale: la Traccia B è completamente nuda e passa direttamente attraverso il tuo routing, ma la Traccia A deve essere elaborata tramite un EQ, una compressore e un riverbero.

La Compensazione Automatica del Ritardo garantisce che la Traccia B non tagli il traguardo da sola: invece, aspetterà la Traccia A e, una volta che saranno tutte insieme, attraverseranno il traguardo insieme, preservando così le relazioni di tempo originali tra le due.

Se il tuo DAW non avesse “ADC” (Compensazione Automatica del Ritardo), la Traccia A suonerebbe come se fosse stata registrata dopo nel tempo. Se la differenza è enorme, il batterista suonerà completamente male e fuori tempo rispetto al bassista e, poiché - nel nostro esempio - i due sono un famoso gruppo funk, verresti licenziato per questo errore.

È facile ora comprendere quanto sia importante l'ADC, considerando che di solito hai:

  • più di due tracce
  • più di tre plug-in in totale
  • più routing, con ausiliari per il bus e invii/ritorni

e soprattutto: le cose non suonano sempre completamente sbagliate. Potresti avere un leggero spostamento di fase tra i tuoi canali (es. kick e bass e resto della batteria? Orrore!) che ti costringe a prendere decisioni di missaggio basate su un problema tecnico, non sul contenuto delle tue tracce. E tutto questo cambia con qualsiasi modifica/aggiunta di routing o plug-in! Ancora: orribile.

Per questo motivo, assicuriamoci di sapere come diagnosticare se l'ADC sta funzionando correttamente.

Diagnosi e regolazione dell'ADC

Prendiamo due tracce audio identiche, tutte collegate allo stesso bus. Contengono un identico pezzo audio: un'onda sinusoidale a 1 kHz a -20dBfs (ma in realtà, qualsiasi cosa va bene purché sia lo stesso clip audio).

Inverto la fase (=inverto la polarità) su un canale. Alcuni DAW hanno un semplice pulsante “inverti fase” sul canalino, ma il mio Pro Tools no. Quindi metto due plug-in Trim identici su entrambe le tracce, bypassandolo sulla prima e mantenendolo attivo sulla seconda, per invertire la fase. In questo modo metto la stessa quantità di elaborazione su entrambe le tracce e le mantengo identiche per tutti i fini e gli scopi.

Sul bus di somma, chiamato “MIX”, metto un semplice plug-in Phasescope, per vedere polarità, livelli e imaging stereo.

Quando riproduco la sessione le due tracce si cancellano a vicenda e il risultato è totale silenzio (-infinito). Ah, la bellezza di lavorare con uno e zeri nel dominio digitale.

Ora, metto un plug-in sulla prima traccia e lo metto in bypass. In questo modo sto aggiungendo il carico di lavoro del plug-in stesso ma non sto cambiando il suono in alcun modo. Tieni presente che in alcuni DAW, bypassare un plug-in lo dealloca anche dal suo percorso di elaborazione. Nel mio Pro Tools, bypass significa che il plug-in “peserà” ancora sulla CPU, ma non influirà sull'audio della traccia stessa.

Ora, se l'ADC funziona correttamente, il risultato sarà comunque un completo annullamento. Questo perché la Traccia B è più veloce della Traccia A (non è necessario fare calcoli per essa) ma sarà richiesta di aspettare la Traccia A per essere pronta e poi verranno tutte riprodotte.

Se disattiviamo l'ADC in Pro Tools (Menu di configurazione > Compensazione Del Ritardo non selezionata), vedrai che Phasescope ora ci dà alcuni segnali residui. Questo significa che le due tracce non vengono compensate.

Nel terzo esempio, facciamo passare la Traccia A attraverso una Aux Track aggiuntiva e poi la facciamo andare al bus MIX, mentre la Traccia B continua a proseguire dritta. Se l'ADC sta funzionando correttamente, la compensazione avviene ancora e il risultato deve essere un completo annullamento.

Nel quarto esempio, facciamo passare la Traccia A attraverso una Audio Track, con il monitoraggio dell'input attivato. Qui è dove le cose diventano 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 è solitamente attivata per impostazione predefinita. L'idea alla base di questo è che, se metti un audio track in monitoraggio dell’input e/o modalità registrazione, vorrà registrare qualcosa. E se quest’ultimo proviene da una fonte reale (es. il tuo chitarrista deve registrare un overdub), Pro Tools presume che tu voglia la minore latenza possibile per assicurarti che il chitarrista possa sentire ciò che sta suonando (sì, lei) in sintonia con la sua performance. “Auto Low Latency” si assicura che la regola della Compensazione Automatica del Ritardo venga infranta per le tracce messe in monitoraggio dell’input e/o modalità armata per la registrazione (punto verde “I” o punto rosso attivato).

La maggior parte delle volte questo è ciò che vuoi (soprattutto se la sessione ha già molti plug-in) ma in questo caso non lo siamo. Potremmo utilizzare questa tecnica per rimbalzare una traccia in un'altra, ed è fondamentale che l'ADC venga mantenuto in modo da poter monitorare correttamente e impegnarci nella stampa.

Per risolvere questo, andiamo al pannello “compensazione del ritardo”, in fondo a quell’audio track (assicurati di avere “Compensazione del Ritardo” attivato nel menu “Visualizza > Finestra Mix” 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 determinata traccia, facciamo clic destro sul terzo campo più basso del Pannello di Compensazione del Ritardo, quindi clicchiamo su “Auto Low Latency OFF”. Il campo di compensazione ora apparirà blu per farti sapere che la modalità Bassa Latenza è disattivata per quella traccia.

Se apri ora la tua sessione, noterai l'annullamento completo. Le cose sono tornate a funzionare come previsto.

Puoi utilizzare questa diagnostica in qualsiasi situazione (invii/ritorni, inclusi), assicurandoti solo che il risultato finale di due tracce identiche (ma opposte in polarità) ritorni in un completo annullamento. Questo non è discutibile: non è una scelta artistica o un modo di lavorare: i DAW NON dovrebbero influenzare il timing del tuo materiale (che sia preregistrato o generato in tempo reale) in base a fattori tecnici o operativi.

ADC e Strumenti Virtuali

E per gli strumenti virtuali? Come facciamo a sapere per certo che stanno tutti ricevendo compensazione correttamente? Beh, non lo sappiamo. Ci fidiamo degli sviluppatori software. Di solito.

Ma c’è un tipo di strumenti virtuali che non voglio trascurare: librerie di batteria e plug-in di sostituzione batteria. Se sto aggiungendo un campione di kick e snare a una traccia di batteria esistente, come posso sapere che quei due campioni sono perfettamente allineati in fase?

In questo ultimo esempio, abbiamo tre tracce di batteria: Kick, Snare e Overheads e suonano così:

Estratto Originale

Potrebbe essere migliore. Non sento abbastanza forza nel kick e nello snare e voglio rinforzarli usando 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 il mio kick e snare, riproduco la sessione e suona così. Abbastanza bene, sta facendo ciò che voglio.

Batteria con campioni aggiunti

Per me, il primo controllo viene fatto con le orecchie. Suona bene, quindi lo tengo. Tuttavia, so che la sessione sara' presto molto più grande di così e voglio ridurre qualsiasi possibilità di problemi. Quindi, invece di lasciare lo strumento virtuale attivo e doverci fare affidamento, prendo la decisione di rimbalzare le tracce dei campioni in audio reale. Questo renderà la sessione autonoma e non dipendente da una libreria sonora che qualcuno potrebbe non avere installato tra qualche anno, o un tecnico del mixaggio potrebbe non possedere... e inoltre bloccherà nel tempo quei campioni e garantirà che rimangano dove sono.

Consiglio: abbandona tutti gli strumenti virtuali il prima possibile, una volta finite le tue sessioni di arrangiamento/scrittura. Personalmente, non mi fido così tanto del MIDI e preferisco impegnarmi in una sessione più snella e ottimizzata prima di andare a mixare.

Nell'mixer SSD, gestisco tutto come segue:

  • Kick (diretto): Stereo Output 2
  • Snare (diretto): Stereo Output 3
  • Tutti i track di ambiente (Overheads/stanze, ecc.): Stereo Output 4

Poi, in Pro Tools, creo 3 Audio Track stereo, le nomino di conseguenza e imposto gli ingressi per essere le uscite degli strumenti virtuali SSD, le stesse elencate sopra. Per aggiungere un po' più di routing (e mettere più cose alla prova), queste 3 tracce andranno al loro proprio bus e poi al bus MIX.

Se attivo il monitoraggio dell'ingresso su quelle tracce e premo play, le cose suoneranno strane e fuori ritmo.

Qualcosa non va

Questo perché ho dimenticato di impostare “Auto Low Latency” su OFF, come ho spiegato prima. Una volta risolto questo, tutto suona esattamente come prima del rimbalzo.

Procedo poi a rimbalzare le tracce e eccole qui, stampate separatamente e pronte per essere aggiunte alla sessione di mixaggio. La cosa divertente è che, anche con “Auto Low Latency” attivata, il risultato stampato sarebbe compensato correttamente! Perché Pro Tools utilizza quella modalità a bassa latenza solo per la parte di monitoraggio, non per la stampa interna (bravi sviluppatori).

Ora zoomiamo sulle tracce della batteria. Mentre lo snare campionato è perfettamente allineato e in fase con quello originale, puoi vedere un ritardo tra i due kick. Questo non ha nulla a che fare con la Compensazione Automatica del Ritardo ma più con i campioni effettivi nello strumento virtuale. Sono tutti diversi, hanno motori diversi, campioni e quindi risultati. Per questo motivo si consiglia sempre di eseguire un controllo finale.

Che ne dici di selezionare la distanza tra l'inizio del kick reale e quello del kick campionato, scoprendo che è 72 campioni (lo dice nel trasporto di Pro Tools, una volta che la mia griglia è impostata su “Campioni”). Ora possiamo inserire “-72” nel campo “Offset Utente” nel pannello di compensazione del ritardo del kick campionato.

Questo dirà a Pro Tools di spostare quella traccia di 72 campioni “prima”, allineando quindi il kick campionato con quello reale. Non significa sempre che suonerà meglio, sto solo dicendo che vale la pena controllare! In questo caso, la versione allineata suona meglio e fa sentire i due kick più come uno. Sottile, ma c'è.

Originale + Campioni (kick drum allineato)
written-by

Pianist and Resident Engineer of Fuseroom Recording Studio in Berlin, Hollywood's Musicians Institute Scholarship winner and Outstanding Student Award 2005, ee's worked in productions for Italian pop stars like Anna Oxa, Marco Masini and RAF, Stefano 'Cocco' Cantini and Riccardo Galardini, side by side with world-class musicians and mentors like Roger Burn and since 2013 is part of the team at pureMix.net. Alberto has worked with David White, Niels Kurvin, Jenny Wu, Apple and Apple Music, Microsoft, Etihad Airways, Qatar Airways, Virgin Airlines, Cane, Morgan Heritage, Riot Games, Dangerous Music, Focal, Universal Audio and more.