Sei sulla pagina 1di 14

Driver ASIO: cosa sono e come si utilizzano.

I driver ASIO sono dei particolari driver studiati appositamente per chi crea musica, servono per
ottimizzare la comunicazione tra il sistema operativo e la scheda audio.

Per chiunque componga usando il PC o il Mac i driver ASIO sono diventati una scelta praticamente
obbligata.

In genere ogni produttore di schede audio professionali sviluppa i propri driver ASIO dedicati, se
invece non fossero disponibili è possibile usare dei driver universali dei quali parleremo in dettaglio
più avanti.

Inutile specificare che è sempre meglio usare driver proprietari proprio perché sicuramente sono
stati ottimizzati per la scheda in questione e garantiscono quindi migliori performance rispetto ad un
driver universale.

Cosa sono i driver ASIO e perché usarli?


Stream Input Output, è una tecnologia sviluppata da Steinberg che permette la gestione di flussi
audio contemporaneamente in input e output e su più canali, evitando problemi di latenza anche
importanti.

Questi driver permettono di ottenere una bassa latenza sia in registrazione che in ascolto grazie alla
particolare architettura. Infatti da una parte offrono una comunicazione quasi diretta con l’hardware
e, dall’altra, riescono a ridurre sensibilmente il buffer per gestire il flusso dei dati audio in
conversione D/A (digitale/analogico).

Questo dà un grande vantaggio per quanto riguarda ad esempio l’uso di strumentazione MIDI
garantendo una risposta fedele all’azione del musicista/compositore.

Ad esempio su una tastiera midi collegata alla vostra DAW sentirete il suono quasi in
contemporanea alla vostra pressione sui tasti, questo è molto importante nel caso di registrazioni o
esecuzioni in tempo reale.

Senza driver ottimizzati, la DAW potrebbe avere troppa latenza, quindi ad esempio le note suonate
sulla tastiera non verrebbero riprodotte immediatamente, ma con un fastidioso ritardo.

Come si configurano?
La configurazione di un driver ASIO è molto semplice e fondamentalmente consiste nell’agire su
un solo parametro detto buffer size ed eventualmente sul sample rate che però è secondario e in
genere per qualsiasi produzione musicale può essere impostato a 44 Khz o 48 Khz.

In alcuni driver, soprattutto i più vecchi, è possibile che invece dell’azione sul parametro buffer size
si vada ad agire sulla latenza. Il concetto è il medesimo come vedremo più avanti.

Il buffer size è sostanzialmente una piccola quantità di dati audio salvati in memoria, in modo da
evitare interruzioni e garantire quindi la continuità del flusso audio.
La regolazione di questo parametro è molto importante. Da esso dipenderà la latenza e quindi il
ritardo che avvertiremo dalla pressione di un tasto sulla tastiera alla effettiva riproduzione del
suono.

La latenza viene misurata in millisecondi e sebbene possa sembrare un tempo molto piccolo vi
accorgerete che sarà molto facile avvertirla, anche con solo 50 millisecondi avvertirete un ritardo
fastidioso che renderà molto difficile (per non dire impossibile) suonare uno strumento in tempo
reale.

Sarebbe in genere consigliabile rimanere sotto i 10 millisecondi, massimo 20, il tutto ovviamente
dipende anche dalla vostra percezione del ritardo.

Buffer size e latenza

I due parametri sono legati da una proporzionalità diretta, quindi all’aumentare del buffer size
corrisponderà un aumento della latenza e un sensibile peggioramento delle vostre performance live.

Tuttavia, sebbene da quanto detto possa sembrare ovvio il cercare di impostare il buffer size al
minimo garantito dai driver, questo va ad incidere fortemente sull’utilizzo della CPU, meno dati
deciderete di immagazzinare in memoria, ritardandone di fatto l’elaborazione (da qui la latenza),
più il vostro processore dovrà faticare per star dietro agli input/output da gestire.

La conseguenza è che il vostro pezzo di musica o la vostra registrazione soffrirà di tutta una serie di
disturbi che ne renderanno quasi impossibile la manipolazione e la riproduzione.

Sarà ormai chiara l’importanza di una giusta calibrazione del buffer size in modo da ottenere una
latenza più bassa possibile senza però avere affaticamento della CPU e quindi clik, spikes o
rallentamenti durante la registrazione o l’ascolto del vostro brano.

In genere più tracce avrete che suonano in contemporanea e più dovrete aumentare la dimensione
del buffer da utilizzare, questo può anche dipendere dal carico richiesto dai vostri strumenti.

Per non cadere nel pericolo di avere una latenza troppo alta sarebbe buona norma avere una CPU il
più performante possibile, affronteremo questo aspetto più avanti.
ASIO4ALL
I driver ASIO universali, come accennato, sono molto utili nel caso si disponga di una scheda audio
non progettata per fare musica o che comunque non abbia dei driver ASIO proprietari.

Quelli più popolari ed efficienti sono gli ASIO4ALL, e sono anche gratuiti, potete scaricarli da qui:
http://www.asio4all.com/

Il pannello di controllo si presenta con le medesime opzioni definite in precedenza ma con alcuni
dettagli in più, essendo un driver generico.
Infatti si può osservare sulla sinistra la lista dei device audio installati sul vostro sistema, cliccando
sull’icona blu sulla sinistra di ogni oggetto nell’elenco questo potrà essere attivato o disattivato.
Evidenziando quindi il device di interesse si potranno modificare i parametri per configurarlo.
Se l’icona invece di essere blu è una X rossa vuol dire che quel device è utilizzato da un’altra
applicazione e quindi non potrete agire sui parametri relativi.

Lo slider in basso a sinistra permette di settare il Buffer Size di cui abbiamo già parlato.

In basso a destra compaiono due icone, il paracadute permette di resettare tutti le impostazioni con
valori predefiniti, la chiave inglese invece permette di accedere alle impostazioni avanzate, spesso
non occorre modificare queste impostazioni, ma per completezza trovate qui di seguito il significato
di tutti i parametri.

Advanced settings

Quando attiverete questa modalità vedrete che la vostra lista di device sarà più dettagliata con
possibilità di andare a lavorare sugli input e output dei vostri device.

Vediamo ora il significato delle singole voci.

• Latency Compensation (In e Out): essendo il driver generico non conosce l’hardware su
cui andrà a lavorare, se quindi noterete dei problemi eccessivi di latenza potete provare ad
andare ad agire su questi due slider, altrimenti lasciateli come sono, usateli come ultima
risorsa;
• Hardware Buffer/Allow Pull Mode (come appare la voce su Windows Vista): se la
scheda audio lo supporta questa modalità permette di usarne il buffer riducendo
notevolmente la latenza (quindi il carico sulla CPU), non molte schede supportano questa
modalità, le integrate in genere non la supportano. Potete comunque provare ad attivare
questa opzione, se registrate una latenza molto alta significa che è meglio la teniate
disattivata;
• Kernel Buffers/Buffer Offset: questo slider va ad aggiungere altri buffer, il risultato è che
si avrà più stabilità al costo di una maggiore latenza. Nel caso in cui sia attivo Hardware
Buffer questo settaggio rappresenterà il tempo in millisecondi dopo il quale ASIO4ALL
andrà a leggere e scrivere nel buffer. Questo settaggio andrebbe usato solo nei casi limite
quando ci si trova con macchine poco potenti, comunque sia si tratta sempre di sperimentare
e verificare quello che vi succede a livello di latenza. Come regola generale a settaggi alti
corrispondono più stabilità ma anche più latenza e a settaggi bassi viceversa;
• Always Resample 44.1 kHz <-> 48 kHz: conviene lasciarla attiva, ricampiona il suono da
44.1 kHz a 48 kHz o viceversa a seconda di quello che supporta la vostra scheda,
disattivatela solo se registrate alta latenza o problemi di altro genere;
• Force WDM Driver To 16 Bit: con questa opzione viene ricampionato il flusso audio se è
maggiore di 16 bit ma minore di 24 bit, quindi compreso tra i due valori. Se avete problemi
a far funzionare la vostra scheda con questi driver provate ad attivarla.

Esistono anche altri driver ASIO generici, come ad esempio gli “ASIO2K” o gli “USB Audio”, ma,
oltre a non essere gratuiti, sono ormai software abbandonati e non aggiornati da diversi anni,
rimpiazzati completamente dagli ASIO4ALL, diventati oggi uno standard de facto.

Consigli per avere una bassa latenza


Per impostare i driver ASIO con un buffer ridotto e ottenere una bassa latenza senza generare scatti,
click, distorsioni o altre anomalie indesiderate, bisogna:

• accertarsi di avere una buona e recente scheda audio, responsabile di convertire i segnali
digitali in suoni analogici (e viceversa);
• avere un buon processore (con prestazioni adeguate);
• avere un BUS dati veloce (cioè la velocità della memoria RAM e del chipset);
• ottimizzare le risorse (chiudere le applicazioni inutili, usare sequencer con motori audio
efficienti);
• andare ad agire sull’overclock del processore, per gli utenti più esperti (sconsigliamo
comunque questa procedura, perchè l’overclock può compromettere la stabilità del sistema);
• agire sulla priorità del processo relativo al sequencer che state utilizzando, alcuni di
questi permettono infatti di settare la priorità e i metodi di calcolo (scheduling,
multithreading, ecc…) direttamente tramite opzioni interne;
• potete documentarvi sulle opzioni che ogni sequencer offre e fare dei tentativi mirati per
trovare la configurazione più efficiente;
• si può impostare il risparmio energetico per sfruttare al massimo l’hardware (CPU alla
massima frequenza, hard disk che non si fermino mai quando non usati ecc…), questo può
essere molto utile nei laptop, i quali spesso lavorano con prestazioni ridotte per aumentare la
durata della batteria;
• fare attenzione a non caricare troppo il processore con progetti musicali eccessivamente (e
talvolta inutilmente) complessi.

Per quanto riguarda quest’ultimo punto, ad esempio, potrebbe essere una buona idea mettere alcune
tracce provvisoriamente in “mute” o in “freeze” o escludendo alcuni effetti molto “pesanti”.

Una maggiore quantità di RAM installata non influirà minimamente sulle prestazioni della latenza.
Tutti i computer recenti (dalla generazione Intel i5 in poi) anche quelli non particolarmente potenti,
riescono ormai a ottenere basse latenze senza problemi, tenete conto però che per progetti musicali
di media e alta complessità occorre dotarsi di una DAW con prestazioni adeguate, altrimenti i driver
ASIO non saranno sufficienti da soli a farvi lavorare decentemente.

Se volete approfondire il discorso sull’hardware delle Digital Audio Workstation, la loro potenza, le
caratteristiche e i componenti, vi rimando a quest’altra interessate guida presente su questo stesso
blog: http://crearemusica.net/blog/assemblare-daw-pc-per-fare-musica

Riepiloghiamo
Per semplicità riepiloghiamo tutti gli importanti concetti che abbiamo trattato in questo articolo:

• I driver ASIO sono fondamentali per la produzione audio in qualunque situazione;


• Sarebbe bene procurarsi schede con driver ASIO proprietari e magari ben valutate dal
pubblico;
• Se non sono disponibili dei driver ASIO specifici, si possono utilizzare i driver generici
ASIO4ALL;
• I driver in genere si configurano tramite il buffer size o la latenza;
• I due parametri sono legati e all’aumentare dell’uno aumenta anche l’altro;
• Troppa latenza causerà un emissione del suono in evidente ritardo rispetto all’azione del
musicista e se il ritardo è troppo significa rendere una performance live impossibile da
realizzare;
• Viceversa una latenza troppo bassa aumenterà il carico sulla CPU con conseguente insieme
di click, pop e disturbi vari, rendendo impossibile un ascolto pulito;
• Va trovato un giusto compromesso quindi tra elevata latenza e elevato utilizzo della CPU.

[Cubase 5] Lezione 1. Impostare la propria


scheda audio
Vediamo ora come impostare la propria scheda audio, sfruttando i driver ASIO (ovvero a bassa
latenza) forniti dalla stessa o da Cubase, o ancora da ASIO4ALL, come linea d'entrata e d'ingresso.

1.Dopo aver collegato la scheda audio/mixer digitale, apriamo Cubase 5 e clicchiamo su


Periferiche, nel menù in alto, poi "Impostazioni Periferiche..."
2. A questo punto clicchiamo su "VST Audio System", poi nel menù a tendina scegliamo il driver
che vogliamo utilizzare

A questo punto ci si trova davanti a varie opzioni:

· a. Se nella lista compare il modello della vostra scheda audio significa che essa ha dei propri
driver ASIO, quindi selezionandoli andate sul sicuro.
· b. Nel caso in cui non vi soddisfacessero per la alta latenza oppure proprio non compaiono vi
consiglio di installare ASIO4ALL, un software che emula driver a bassa latenza per la vostra scheda
audio anche se essa non ne dispone di propri. In questo caso selezionate "ASIO4ALL" nel menù a
tendina
· c. Se volete potete provare anche gli altri driver offerti da cubase

( Accedendo al collegamento sito sotto VST Audio System, che prende nome a seconda dei driver
selezionati, potete accedere al pannello di controllo dei driver.)
3. Adesso ritorniamo al menù periferiche e clicchiamo su "Connessioni VST"

Cliccando sulla scheda "ingressi", e sulle celle colorate si potrà scegliere la scheda audio
precedentemente impostata; stessa cosa per "uscite"

A questo punto avete impostato con successo la vostra scheda audio come dispositivo principale di
input ed output.

Lezioni di Cubase – 3 (configurazione della scheda audio e


dell’interfaccia MIDI)
Per poter acquisire, processare e riascoltare le informazioni elaborate in Cubase occorre possedere
una scheda audio e un’interfaccia MIDI. Sebbene sia possibile utilizzare anche le schede audio
interne dei computer, che con gli anni sono decisamente migliorate, sarebbe opportuno dotarsi di un
hardware dedicato, sviluppato da aziende specializzate. Sul mercato sono disponibili numerosissime
soluzioni per tutte le esigenze e a costi contenuti (anche poco più di un centinaio di euro). Quali
sono le considerazioni che un utente dovrebbe tenere a mente quando sceglie la scheda da
acquistare? La cosa più importante in assoluto è la stabilità dei driver ovvero del software che
consentirà a Cubase di riconoscere l’interfaccia, le sue uscite e i suoi ingressi, di impostare la
sample rate e la word binaria (per intenderci: 44,1 kHz, 16 bit ad esempio) e all’utente di impostare
le modalità operative della scheda audio, i buffer di scambio dei dati e quindi di regolare la latenza,
attivare le panthom, ecc. ecc. Per sfruttare la possibilità di registrare contemporaneamente più
segnali audio (utilizzando microfoni o ingressi di linea), di avere in uscita un sistema di monitoring
Surround (ad esempio 5.1), di collegare sintetizzatori o processori di effetto esterni, la scheda audio
deve essere di tipo multi canale ovvero avere più ingressi e più uscite. Questa opzione aumenta i
costi della scheda ma espande di molto le possibilità creative e produttive degli utenti. Se occorre
inserire dati MIDI tramite una tastiera o un controller, se si vuole inviare i dati MIDI ad un
hardware esterno (un campionatore, un expander, un controller, ecc.) occorre avere anche
un’interfaccia MIDI, che normalmente è alloggiata sulla stessa scheda audio. E’ pur vero che oggi
esistono tastiere e controller MIDI che sfruttano le porte USB per collegarsi al computer
direttamente rendendo l’interfaccia MIDI sulla scheda audio non più indispensabile per l’invio dei
vari messaggi, ma se avete dei sintetizzatori, campionatori, processori di effetto hardware, tale
interfaccia è necessaria dato che è possibile controllarli a distanza anche tramite messaggi di control
change e di sistema esclusivo.
Prima di dire a Cubase qual’è l’hardware audio e MIDI che sarà utilizzato nel progetto (e in
generale ogni volta che lavorerete) occorre installarne i driver nel sistema operativo (senza avere
Cubase aperto), dopodichè, aperto Cubase, selezionare Device/Device Setup. Si aprirà la seguente
finestra.

La finestra è divisa in due parti: nel riquadro di sinistra sono presenti le pagine di configurazione
mentre in quello di destra i parametri. La scelta dell’hardware audio si effettua selezionando VST
Audio System. Le schede audio, per essere riconosciute in Cubase devono essere dotate di driver
ASIO (Audio Stream Input Output). Sviluppato da Steinberg Media Tecnologies GmbH, è un
protocollo di trasferimento audio multicanale e multipiattaforma che consente ai software Steinberg
di sfruttare le capacità multicanale delle schede audio. Se volete utilizzare le schede interne dei
computer, sui sistemi Windows è possibile utilizzare il Driver ASIO Generico (incluso in Cubase) o
il DirectX (pacchetto Microsoft per la gestione di vari dati di tipo multimediale). Invece, su Apple,
potete utilizzare il Core Audio (Audio incorporato). Dal menu ASIO Driver si sceglie il driver
ASIO della scheda che avete installato e che intendete utilizzare. Nell’immagine seguente è
presente il driver relativo alla scheda Yamaha Steinberg MR 816 csx.
Nel momento in cui si cambia il driver ASIO comparirà un messaggio che chiederà la conferma
(pulsante Switch) dell’operazione.

Una volta cambiato il driver ASIO la finestra mostrerà la nuova configurazione.


Possiamo osservare sotto il menu del driver l’opzione Release Driver when Application is in
Background che se attivata consente ad altre applicazioni aperte contemporaneamente con Cubase
di utilizzare la scheda audio anche se Cubase è in funzionamento. Ancora più in basso sono mostrati
i valori relativi alla latenza di ingresso e di uscita e la frequenza di campionamento (sample Rate)
che in questo momento è settata sulla scheda. La sezione Advanced Options è utilizzata per
migliorare determinate prestazioni quando si lavora con i file audio. I valori (Normal, Boost)
mostrati nel menu Audio Priority sono utilizzati per indicare un livello di priorità per le operazioni
relative all’audio. La casella Multi Processing è disponibile solamente se nel computer c’è un
sistema multi processore. In tal caso, attivando l’opzione, Cubase distribuirà il carico di lavoro sulle
varie CPU in modo da avere dei risultati ottimali. Con la funzione Disk Preload possiamo
specificare la quantità di informazioni audio che viene caricata nella memoria RAM prima di far
partire la riproduzione del file. Se disattivate la casella Adjust for Record Latency non verrà
utilizzato il plug-in di compensazione automatica della latenza fornito in Cubase. Il motivo per cui è
necessario effettuare questa operazione risiede nel fatto che, finita una registrazione audio, è
possibile che il materiale registrato finisca in una posizione leggermente anticipata o ritardata,
rispetto a quanto ci attendiamo a causa o di un valore non corretto di latenza di ingresso mostrato
sul pannello di controllo del driver ASIO o di un elevato valore di latenza d’uscita e l’utilizzo di un
plug-in nella registrazione producendo un ritardo percettivo tra ciò che state suonando e ciò che
state ascoltando. Per togliere questo effetto sgradevole Cubase utilizza un plug-in di compensazione
di questo ritardo che consente di mantenere la sincronizzazione ed il tempo dell’audio che state
registrando. La funzione Record Shift è utilizzata per ritardare (valori positivi) o anticipare (valori
negativi) la posizione dei file audio registrati di un tempo pari al numero di sample (campioni)
specificati. Poichè l’unità di misura sono i campioni, tale tempo dipenderà ovviamente dalla sample
rate utilizzata nel progetto. L’intervallo di valori utilizzabile è compreso tra 0 e 100.000 campioni.
Nota: supponiamo di dover registrare un violino tramite un microfono e di dover ascoltare in tempo
reale l’audio che passa attraverso il sequencer. Questa operazione è affetta dalla latenza derivante
dalla conversione analogica-digiale (che consente di registrare l’audio) e successivamente digitale-
analogica (che consente di ascoltare l’audio che passa attraverso il sequencer). La latenza è il
tempo che trascorre dal momento in cui suoniamo il violino, mandiamo il segnale trasdotto dal
microfono in un ingresso della scheda audio, registriamo in una traccia di Cubase, fino all’istante in
cui il suono esce da un’uscita della scheda per essere indirizzato al nostro sistema di monitoring
(cuffia, monitor). Anche se la latenza è indicata in millisecondi in realtà si misura in sample
(campioni): infatti l’audio, subito dopo la conversione in digitale, viene suddiviso in alcuni buffer di
memoria, gestiti dal driver ASIO, che vengono spediti alle componenti principali del computer. La
dimensione di questo buffer dipende da scheda a scheda ed è misurata in sample: 32, 64, 128, 256,
512, 1024, 2048, eccetera. La latenza, se non intervengono altri fattori derivanti dalla progettazione
del driver, è dovuta proprio al tempo di lettura di questo buffer. Facciamo un semplice esempio:
supponiamo di utilizzare una sample rate (frequenza di campionamento) pari a 44,1 kHz, ovvero in
grado di produrre 44100 sample al secondo e di utilizzare un buffer di 512 sample. Se in un secondo
leggiamo 44100 sample, quanto tempo occorrerà per leggerne 512? Per rispondere alla domanda e
conoscere quindi il tempo della latenza basterà una semplice proporzione matematica:

44.100 : 512 = 1000 : x

Svolgendo l’operazione avremo il seguente risultato:

x = 11,610 ms

Fate molta attenzione perché se cambiate la sample rate, mantenendo invariato il buffer size, il
valore di latenza ovviamente cambierà: la quantità di sample contenuti nel buffer sarà letta ad una
velocità maggiore (e quindi in meno tempo) o minore (e conseguentemente in più tempo) a seconda
se la sample rate sarà maggiore o minore. Ad esempio, scegliendo una sample rate di 96 kHz
avremo una latenza pari a:

x = 5,333 ms

Attenzione: esiste una latenza di input ed una di output, per cui avendo ottenuto il valore di 5,333
ms in realtà percepiremo 10,666 ms di latenza (sempre se siamo in grado di apprezzare tale
differenza) nel caso di un segnale che proviene dalla trasduzione microfonica. Non dobbiamo
dimenticare che questo è un calcolo ideale perchè dipende molto dalla qualità con cui è progettato il
driver e pertanto potrebbe produrre valori più alti.

E’ possibile diminuire il tempo della latenza agendo o sulla sample rate (aumentandola) oppure
diminuendo il buffer gestito dall’ASIO driver. Selezioniamo la sottopagina della sezione VST
Audio System ovvero quella che riporta il nome del driver ASIO scelto (nel nostro caso è chiamata
Yamaha Steinberg FW).
Per cambiare la dimensione del buffer occorre cliccare sul pulsante Control Panel che apre il
pannello di controllo relativo al driver ASIO selezionato.

Ogni scheda audio, dotata di driver ASIO, ha il suo pannello di controllo con l’area dove
selezionare la dimensione del buffer. Considerate che normalmente il buffer parte da una
dimensione minima di 32 ad una massima di 4096 sample ma i valori possono cambiare da scheda a
scheda. Nel nostro caso vediamo come cambiano i valori della latenza portando il buffer al valore di
512 sample. Come possiamo osservare siamo passati dal 24,308 ms a 12,698 ms (per la latenza
d’ingresso).

Suggerimento: in fase di registrazione audio evitate di scegliere valori alti del buffer perché
comporterebbero una latenza troppo elevata ma occorre evitare anche valori troppo piccoli perché
potrebbero causare un malfunzionamento del sistema: infatti la CPU potrebbe avere dei problemi a
ricostruire l’intero segmento audio dato che in un secondo riceverebbe circa 690 buffers (se la
frequenza fosse di 44,1 kHz e il buffer di dimensione 64 samples), quindi è bene non scendere mai
sotto una certa soglia (diciamo una dimensione pari a 128 o 256 samples). Di norma si diminuisce il
buffer in fase di registrazione mentre lo si aumenta in fase di processing in quanto si “stressa” meno
la CPU essendo presente una compensazione automatica della latenza.

Impostato l’audio occupiamoci della configurazione MIDI. Nella finestra Device Setup selezionate
MIDI Port Setup e potrete vedere l’interfaccia MIDI presente nel vostro sistema con la porta IN e
OUT.

Nota: ricordiamoci sempre che il sequencer considera la porta MIDI OUT anche come MIDI THRU
consentendo quindi di avere un monitoring MIDI in tempo reale nel caso si indirizzassero i dati
MIDI verso l’esterno (sintetizzatori, processori di effetti, mixer, campionatori, drum machine, ecc.).
Normalmente di default la porta OUT si comporta anche come THRU, tuttavia qualora ci fossero
dei problemi verificate se l’opzione è attiva aprendo le Preferences e selezionando la sezione
MIDI. Verificate che l’opzione MIDI Thru Active sia spuntata.