Uno dei problemi principali che affliggono il neofita quando si avvicina alla produzione audio/musicale con GNU/Linux è il supporto hardware. E' vero che molto è stato fatto, e la situazione oggi è molto migliorata rispetto agli inizi, quando comprare una scheda audio pienamente supportata era quasi come un terno al lotto, ma ancora in questo ambito ci sono dei problemi.

Driver audio per linux ALSA, FFADO

I driver delle schede audio nel kernel Linux si chiamano ALSA, acronimo che sta per "advanced linux sound architecture".

Per quanto riguarda le schede integrate nei personal computer, che spesso sono varianti basate su chipset piuttosto comuni e noti, generalmente non ci sono grossi problemi nel supporto, e anzi, spesso le cose funzionano "out of the box", diversamente da quello che succede per esempio su windows.

Il discorso cambia per schede audio rivolte ad un mercato più professionale o specificamente per musicisti: in questo caso il supporto è meno scontato perché il mercato è molto più piccolo e perché nel 99% dei casi il produttore non fornisce driver per GNU/Linux.

I driver quindi, quando esistono, sono il frutto di uno sforzo volontario della community, spesso con pochissimo (o senza) supporto da parte del produttore.

Per una discussione sui tipi di interfaccia delle varie schede, si veda "scegliere una scheda audio o MIDI" su linuxaudio.it, tenendo presente che le schede firewire (ieee1394) sono pilotate da un progetto diverso da ALSA, chiamato FFADO.

Prima di qualsiasi acquisto è opportuno verificare sul sito di ALSA o FFADO se la scheda risulta supportata, e soprattutto cercare evidenza di qualcuno che prima di noi l'ha usata con successo. Se non si trova, si può chiedere online (mailing list, gruppi facebook, IRC), ma in ogni caso mai acquistare compulsivamente senza prima verificare.

Vantaggi dei driver open

Come dicevamo il mondo delle periferiche audio per uso musicale è relativamente "di nicchia" ma è in continua evoluzione, con nuovi modelli che appaiono continuamente sul mercato. Questo porta ad una rapida obsolescenza delle schede audio, che spesso in capo a qualche anno perdono il supporto per nuovi sistemi operativi da parte del produttore.

Questo con i driver open source non accade: ecco perché con GNU/Linux è possibile utilizzare schede audio che su altri sistemi sono considerate obsolete, perché il relativo driver ALSA viene compilato sempre con i nuovi kernel. Ottima cosa per noi, perché queste periferiche diventano molto più economiche sul mercato dell'usato, grazie al fatto che sono diventate "unsupported".

Splendore e miseria dell'USB

In alcuni casi esistono specifiche standardizzate che facilitano molto la scrittura dei driver, e ciò è vero in particolare per le periferiche USB. Se una periferica USB è class compliant spesso è pubblicizzata sottolineando questa caratteristica, con frasi tipo "non necessita l'installazione di driver" e cose simili.

ALSA ha un driver per questo tipo di dispositivi (snd-usb-audio) capace di gestire sia audio che MIDI. Ecco alcune schede che ho provato personalmente e che funzionano:

  • Alesis IO2 express
  • Roland SCD70
  • Roland UA25
  • Griffin iMic
  • Prodipe MIDI 4i4o

USB inoltre è una scelta quasi forzata se il computer dove vogliamo usare la scheda è un laptop/portatile: ormai l'interfaccia PCMCIA è obsoleta e pochi portatili hanno integrata una porta firewire.

Il problema con le schede USB è che in genere (tranne alcune eccezioni), non si tratta di hardware professionale, ma di prodotti di confine tra il mondo consumer e quello pro. USB fornisce in molti casi anche l'alimentazione alle periferiche, e questo è un bene perché ci evita scomodi alimentatori esterni, ma è anche un elemento che può interferire negativamente sulla qualità audio con rumori, ronzii e simili. Nella mia esperienza non ho mai trovato una scheda audio USB che potesse eguagliare la qualità (e il numero di canali) audio di schede PCI.

Dove USB eccelle invece è nell'ambito dei controller MIDI dove ormai è uno standard indiscusso. Anche in questo caso prima dell'acquisto è bene controllare che la periferica sia class compliant e che non usi protocolli proprietari non utilizzabili su GNU/Linux. Ecco una lista di controller che utilizzo e che funzionano egregiamente:

  • Studiologic vmk176
  • Roland pc300
  • AKAI lpk25
  • Korg PadKontrol
  • Korg nanoKontrol
  • AKAI lpd8
  • Novation Remote Zero (senza automap)

Spesso è presente un editor software per configurare questi dispositivi, e normalmente funziona con wine, un emulatore che riesce ad utilizzare programmi scritti per windows.