lunedì 9 luglio 2012

Usare ASIO4ALL su più programmi contemporaneamente

Non sono un amante delle prese in giro, men che meno di quelle ai danni dei tanti ignari DJs e producer che si trovino ad affrontare il celebre duello PC vs. MAC. Infatti, benché molti prediligano l'utilizzo del secondo per produzioni o serate, ammattiti da pubblicità ingannevoli e dalla voglia di fare i fighi a tutti i costi, ci sono molti artisti che su un PC, ed in particolare con un sistema Windows, non hanno mai trovato problemi a far girare tutto l'armamentario correttamente. Tralascio volontariamente il discorso Linux, non me ne vogliate, solo perché si parlerebbe di ripartire da 0 per cercare di imparare nuovi strumenti sconosciuti, il più delle volte senza guide online.
Quindi, perché un qualsiasi creativo che si trovi alle prime armi con il mondo della musica elettronica non può evitare di spendere quei 1000 Euro in più per l'osannato prodotto Apple e cercare di capire se veramente è il suo campo prima di acquistare quello che gli serve?
Sappiamo che tutti i principali strumenti digitali per DJ che possono essere acquistati o scaricati online funzionano su Windows. Sto parlando di Ableton Live, FL Studio, Cubase, Traktor Pro, Serato, senza contare tutti gli infiniti VST (primi fra tutti z3ta+, Massive, Nexus, V-Station, ecc...). Il grosso problema è che quando quella mattina ti svegli e pensi di diventare un DJ nessuno ti avverte di quanto sia difficile far suonare insieme tutta questa roba. La scheda audio del tuo PC o i driver della scheda audio esterna che dovresti cercare di acquistare (o che ti ha lasciato in eredità lo zio disk-jockey) devono essere a bassa latenza e sfruttano, complessivamente quasi sempre, i driver ASIO. La versione libera e gratuita del protocollo per Windows sono le ASIO4ALL, veramente irrinunciabili a meno che tu non voglia avere una latenza di qualche migliaio di ore.
"Ehi Ruj, ma se sono così fenomenali, qual'è il difetto di questi utilissimi driver universali?" - E fammi spiegare! Il primo software che li utilizza, si impossessa completamente della tua scheda audio e non la fa toccare a nessun altro software. Ammazza che avidità!
"Possibile soluzione?" - Eh si, se ho scritto questo articolo vuol dire che una soluzione ci dev'essere per forza. Vi presento JACK, un ponte audio che vi permettere di fare tutte le connessioni che volete tra input e output dei vostri dispositivi e software senza quasi intaccare minimamente le prestazioni del vostro PC.
Come introduzione mi sono dilungato troppo, passiamo direttamente al vivo della questione: voglio far suonare il mio Traktor, che utilizzo per mixare live i pezzi, e Ableton Live, dove invece preferisco gestire sequenze più articolate, contemporaneamente.
Per prima cosa scarichiamo e installiamo JACK2 (io utilizzo la versione 1.9.8 per 64bit, attualmente l'ultima per il mio sistema).
Ora chiudiamo tutti i programmi che sfruttano la scheda audio e avviamo il programma Jack Control con i privilegi di amministratore se ci si trova su Windows Vista o Windows 7, altrimenti non funzionerà correttamente. Vi consiglio di cambiare le proprietà facendo tasto destro sull'icona in modo da avviare sempre il programma in questa modalità.
Ora che ci troviamo di fronte all'interfaccia di Jack, cliccate su Setup... e potrete accedere alle impostazioni. Premettendo che ogni PC ha il proprio settaggio ideale, l'unica cosa che dobbiamo configurare necessariamente è "jackd -S" nel Server Path e "ASIO::ASIO4ALL v2" in Interface. Probabilmente nel menu a tendina di interface non ci comparirà la scritta delle ASIO4ALL, ma non ci preoccupiamo, inseriamola manualmente scrivendola nel campo.
Inoltre dal menu a discesa Driver, è meglio selezionare il più convenzionale "portaudio".

Facciamo click su OK e quindi su Start per avviare il server audio di JACK. Accendendo qualche cerino dovrebbe partire e, una volta trovata la configurazione ideale e funzionante ti consiglio di cambiare le cose solo se sai veramente quello che stai facendo, altrimenti rischi di mandarlo in pappa e di non riuscire a ritrovare la configurazione funzionante.
Avviamo ora Ableton Live sempre con privilegi di amministratore (ti suggerisco di fare la stessa cosa che ho detto prima a riguardo). Nella scheda Opzioni -> Preferenze -> Audio troviamo il menu del Dispositivo Audio. Impostatelo come "ASIO" e "JackRouter". Una volta completato questo passo Ableton è configurato correttamente per funzionare con JACK. Infatti se clicchiamo sul pulsante Connect di Jack Control, troverete Ableton Live come uno dei dispositivi disponibili per il routing audio, cioè vuol dire che ha ingressi o uscite audio disponibili. Se non è questo il tuo caso, controlla in "Config. Entrante" e "Config. Uscite" se ci sono selezionati dei canali.

E' ora giunto il momento di provare a interfacciare Traktor. Apriamo il nostro bel trattore (non c'è bisogno che mi ripeto che debba essere avviato con i privilegi di amministratore, vero?), clicchiamo sull'icona delle impostazioni con l'ingranaggio stilizzato, andiamo su Audio Setup ed ad Audio Device specifichiamo "JackRouter (ASIO)". Occhio a non sbagliare, NON va messo "Jack audio device (Jack)"!
Se tutto continua a filare liscio anche questa rotta può essere visibile attraverso la finestra delle connessioni di JACK. Non mi sto occupando delle impostazioni della scheda audio all'interno dei programmi ora perché dovrebbe essere cosa nota, altrimenti, prima di riprendere questa guida, sarebbe meglio imparare a capire come impostare ASIO4ALL a prescindere da JACK. Comunque tutto questo è personalizzabile dalle configurazioni di Traktor nei menu Output Routing e Input Routing.
La guida sarebbe finita se non volessi mostrarti anche le meraviglie del routing audio. Invece che suonare i due programmi insieme, voglio fare di meglio! Voglio cercare di registrare l'uscita del master di Traktor in Ableton, in modo da, ad esempio, fare un remastering per mettere il set su Soundcloud, o in macchina a palla per mostrare la mio bravura al primo malcapitato.
Niente di più semplice, l'uscita audio di Traktor (ho settato il master ai primi due canali nel mio menu di Output routing, ma collego anche il cue che sono gli ultimi due, non si sa mai), va collegata direttamente ai canali di ingresso di Ableton e l'uscita di Ableton all'uscita di sistema.
Ecco fatto! Come vedi riesco tranquillamente a registrare la traccia audio selezionando i primi due canali in ingresso in Ableton Live. E godetevi sto screen!
Per qualsiasi problema commentate!