Produzione musicale con GNU/Linux

Aggiornato al 9/2/2010


Guida di Stefano Droghetti

Licenza

Questa guida è protetta da licenza Creative Commons di tipo "Creative Commons Attribuzione-Non commerciale-Condividi allo stesso modo 2.5 Italia License" e appartiene a Stefano Droghetti. Significa che potete copiare, diffondere, modificare, pubblicare liberamente ogni contenuto a patto che:

1) sia sempre citata la fonte (o il nome dell’autore o un link a questo sito)

2) non sia utilizzato per scopi commerciali. Se intendete utilizzare alcuni contenuti di questo sito per attività commerciali o che comunque producano profitto economico, dovete contattare l’autore per definire eventuale nuove licenze.

3) non venga modificato o, se modificato, lo sia solo per produrre contenuti con la stessa licenza (attribuzione / non commerciale / condividi allo stesso modo)

1. Preparazione

Queste istruzioni sono per Ubuntu 8.04, 9.04 e 9.10 (Hardy Heron, Jaunty Jackalope e Karmic Koala).Ubuntu 8.10 (Intrepid Ibex) lo sconsiglio completamente per l’audio professionale.
Inoltre:
questa guida non è stata testata su versioni a 64 bit, su cui comunque di sicuro non funzionerà tutta la parte riguardante la compatibilità con Windows (VST, wine, eccetera).

Se non l’avete già fatto in precedenza, dobbiamo aggiungere i repository di Medibuntu.

sudo wget http://www.medibuntu.org/sources.list.d/`lsb_release -cs`.list –output-document=/etc/apt/sources.list.d/medibuntu.list; sudo apt-get -q update; sudo apt-get –yes -q –allow-unauthenticated install medibuntu-keyring; sudo apt-get -q update

Poi, su Jaunty e Karmic (su Hardy non ce n’è bisogno) dovete aggiungere i permessi per gestire la scheda audio:
– Sistema -> Amministrazione -> Utenti e gruppi
– Premete "Sblocca" e immettete la password
– Selezionate il vostro utente e cliccate "Proprietà"
– Andate su "Privilegi utente" e selezionate "Usare i dispositivi audio"

Infine, solo su Karmic, date questo comando che sostituisce una libreria con un’altra, risolvendo i problemi che dà Pulseaudio su Karmic:

sudo apt-get install libsdl1.2debian-pulseaudio

2. Installare il kernel RT

Ma adesso dobbiamo fare una cosa strana… Dovete sapere che quando usate il MIDI con Windows in realtà perdete molti piccoli "battiti" perché il kernel di Windows preferisce dare precedenza a certi processi e programmi piuttosto che alla musica e quindi qualche cosa può "saltare" mentre fate musica. Il che va anche bene per fare piano bar, ma non certo se dovete fare una registrazione professionale. Onde per cui esistono i driver "Asio" che vi abbassano la latenza del sistema ma poi non vi permettono più di fare bene cose "da server" finché non li disinstallate.
Il kernel Linux di Ubuntu (non di Ubuntu server) e quello di Windows sono una via di mezzo tra server (alta latenza) e musica (bassissima latenza). Una scelta ottima per le applicazioni di tutti i giorni, ma nel caso non abbiate almeno un dual core (in tal caso la differenza di latenza è impercettibile) la scelta è pessima sia per applicazioni server sia per applicazioni musicali. Per attivare una versione del kernel di Linux che sia adatto per fare musica dobbiamo caricare un kernel diverso, fatto apposta.

Non installate il kernel RT su Intrepid: è buggatissimo e non funziona.

sudo apt-get install build-essential linux-rt

Se vi chiede di riavviare non fatelo.
Poi:

sudo apt-get install linux-headers-generic linux-headers-rt

Se vi chiede di riavviare non fatelo ancora. Prima bisogna dare i permessi agli utenti per usare il kernel lowlatency. Aprite limits.conf:

sudo gedit /etc/security/limits.conf

e prima della riga "#End of file" aggiungete queste linee:

@audio – rtprio 99
@audio – nice -10
@audio – memlock unlimited

Poi dovete riavviare. Non avete fatto nulla di definitivo: quando avviate il PC premendo ESC potete scegliere se partire col kernel "musicale" o con quello che avevate prima. Da Karmic in poi, invece di ESC bisogna premere Shift (Maiuscolo).

Se il kernel RT non funziona bene e il vostro PC è abbastanza recente (un dual core per esempio) il fatto di averlo anche solo installato e configurato vi è sufficiente. Usate pure il kernel generic, e spesso Jack riuscirà a usare lo stesso il modulo RT.

Ho notato che su alcuni PC, specie quelli con driver proprietari (quindi Nvidia, in genere) il kernel rt dà qualche problema, e spesso accade che non fa partire la grafica. Niente paura: se avete una scheda grafica Nvidia o ATI seguite questo post di Corsair:
http://corsairtux.blogspot.com/2009/03/installare-dirver-nvidia-e-ati-su-linux.html ricordandovi però dientrare nel recovery mode del kernel rt, non di kernel generic.

Se ancora non funziona, è sempre possibile tornare indietro avviando con il kernel precedente (premendoESC quando fa il conto alla rovescia all’avvio del PC, o Shift da Karmic in poi). E se non funziona ulteriormente c’è sempre la possibilità di rimettere i driver open: ripartire in recovery mode col kernel generic, e quando ve lo chiede ditegli di riconfigurare xorg e tutto il resto. Partirà bene, in grafica, ma senza i driver proprietari Nvidia o ATI, che potrete reinstallare come avete fatto in precedenza.

Su Karmic l’installazione è incredibilmente liscia. DKMS si occupa di ricompilare i moduli nvidia, virtualbox e compagnia bella direttamente durante l’installazione. Perfetto.

3. Installare i programmi

E poi installiamo l’occorrente:

sudo apt-get install ubuntustudio-audio ubuntustudio-audio-plugins lmms hydrogen-drumkits lingot rezound sweep fluid-soundfont-gs ams csladspa csound-gui csound-utils jokosher gmorgan wine rosegarden

Fra le tante cose che installa, troverete:
Rosegarden è l’equivalente di Cubase, di Cakewalk, di Sonar, di Finale… È anche più potente e configurabile, ed è gratis.
Ardour è uno studio di registrazione, molto molto potente. È veramente straordinario per l’audio recording. Qui trovate un ottimo tutorial per usarlo.
Audacity è un ottimo editor audio, disponibile anche per Windows. Non supporta Jack.
Jokosher fa più o meno le stesse cose di Audacity, ma ha un’interfaccia più carina per gnome, molto molto user-friendly e non esiste per Windows. Sembra simile ad Ardour, ma non supporta Jack.
Sweep è un altro editor audio, non multitraccia, può far comodo perché è molto semplice.
Rezound è un altro editor audio non multitraccia, semplicissimo e coloratissimo, vede tutti i plugin. Io lo metto come default per l’edit delle tracce audio di Rosegarden.
Gmorgan vi permette di pilotare gli accordi "live" da una tastiera esterna, mentre il computer spara fuori l’arrangiamento con lo stile che volete. Fa anche da arrangiatore in stile Band In a Box.
Qsynth è un programma che permette di prendere dei suoni di strumenti e di usarli con effetti e volumi, trasformando un file di suoni di strumenti musicali in un modulo rack emulato via software. In sostanza vi fa le veci del mio Korg. Anche se avete un modulo rack o una tastiera fichissima piena di suoni, installate lo stesso Qsynth, è sempre utile, e poi non fa solo quello, fa anche mille altre cose strepitose.
jackd è il cuore di tutto: è una patch bay in sostanza, cioè un programmino che vi mostra tutte le entrate e tutte le uscite dei programmi che avete caricato e della scheda sonora, che voi potete collegare graficamente. Cioè, è come uno scatolotto a cui collegare tutti i cavi provenienti dai vostri strumenti, con combinazioni da scienziato pazzo (Anzi da musicista pazzo): il sogno di ogni musicista…
qjackctl è l’interfaccia grafica di jackd
hexter è un VST, cioè l’imitazione software di un apparecchio che produce suoni particolari. In questo caso si tratta dell’imitazione perfetta del Yamaha DX7, quella mitica tastiera anni ’80 che è diventata famosa per il suono di "The Final Countdown" degli Europe e di "Jump" dei Van Halen, ma in generale è una figata assurda averlo disponibile fra gli strumenti perché un po’ tutta la musica degli anni ’80 e inizio ’90 ha usato i suoni di questa tastiera.
xsynth-dssi è un altro VST, che vi imita una perfetta macchina da musica elettronica, proprio come i vecchi Moog, con centinaia di manopoline per sperimentare nuovi suoni, e un bel po’ di suoni già fatti, tutti elettronicissimi. C’è anche un perfetto imitatore di theremin. Leggenda.
Flac è un codec (compressione / decompressione audio), molto usato. Senza installarlo peraltro Rosegarden protesta all’avvio.
lingot è un accordatore per la vostra chitarra
Hydrogen è una drum machine che, in rigoroso linguaggio tecnico, spacca i culi.
hydrogen-drumkits sono dei drumkit per hydrogen… che ve lo dico a fare?
Jack-rack vi permette di rendere disponibili alcuni plugin audio. Sono simili ai dssi, però sono disponibili per tutte le applicazioni e non solo per Rosegarden
caps è il re di questi plugin (detti LADSPA), perché è quello che vi simula anche in realtime ogni tipo di amplificatore e distorsore. Ci sono delle distorsioni valvolari da paura, e con un po’ di pazienza potrete far suonare la vostra chitarra come se aveste un Vox AC-30 in stile Brit-pop o un Marshall da burino del metal.
lmms è l’equivalente su Linux di FruitLoops su Windows (ma è gratis e open source).
fluid-soundfont-gs è una banca di suoni.
ZynAddSubFx è un sintetizzatore che, in linguaggio prettamente tecnico, spacca diversi culi.

Dobbiamo però anche configurare wine per usare ALSA (il modulo sonoro di Linux) e Jack (un programma la cui funzione vedremo più avanti).
Digitate nel terminale:
winecfg

Andate su "Audio" e mettete la spunta solo a "Jack" e ad "ALSA". Premete "OK".

Su Jaunty, certe volte Rosegarden non parte. È un bug nei permessi: dovete andare nella cartella di Rosegarden dentro alla vostra /home e dare tutti i permessi e rendere proprietario il vostro utente.

4. Installare i soundfont

I Soundfont sono i banchi di suoni di strumenti. In pratica sono un’intera orchestra: i file MIDI sono lo spartito, e i soundfont sono gli orchestrali. Ovviamente, orchestre diverse hanno un "sound" diverso. Ne consiglio due in particolare, gratis. Apriamo il terminale e digitiamo:

wget ftp://ftp.personalcopy.net/pub/Unison.sf2.gz
wget ftp://ftp.personalcopy.net/pub/PC51f.sf2.gz
gunzip Unison.sf2.gz
gunzip PC51f.sf2.gz
sudo mv Unison.sf2 /usr/share/sounds/sf2/
sudo mv PC51f.sf2 /usr/share/sounds/sf2/

5. Soundfont nella wavetable

Se avete una Sound Blaster della Creative Labs o una scheda sonora che supporti la funzione "Wavetable" (andate qui per vedere se ha tale funzione: http://www.alsa-project.org/main/index.php/Matrix:Main) potete caricare i soundfont direttamente nella memoria della scheda sonora, eliminando la necessità di dover usare QSynth e altre cose che spiego dopo.
Se non avete la funzione Wavetable, saltate pure al punto 6.

Altrimenti, installiamo asfxload:

sudo apt-get install awesfx

Se volete usarli basta aprire la console e scrivere:

asfxload /usr/share/sounds/sf2/nome_del_soundfont

Oppure se volete averli sempre automaticamente disponibili in Rosegarden andate nelle impostazioni e cliccate "Carica sound fonts all’avvio", mettete asfxload come comando e/usr/share/sounds/sf2/nome_del_soundfont

Per esempio:
asfxload /usr/share/sounds/sf2/Unison.sf2
oppure:
asfxload /usr/share/sounds/sf2/PC51f.sf2

Non sognatevi di farlo con i fluid-soundfont perché sono enormi e ben oltre le capacità della vostra povera Sound Blaster.

Potete mettere uno dei comandi succitati in Sistema -> Preferenze -> Sessioni, per caricare i suoni direttamente all’avvio.

6. Jack

Ora siamo pronti a lavorare veramente. Tutto si trova sotto Applicazioni → Audio e Video: prima di tutto lanciamo Jack Control e premiamo su "Setup". Con i parametri che vedete in figura a me funziona molto bene, ma siete liberi di provarne altri. Un consiglio: per questo e gli altri programmi impostate sempre la frequenza a 44100 se volete realizzare solo musica, ma se dovete realizzare cose che andranno sincronizzate a del video per finire in un DVD, usate in questo e in tutti gli altri programmi 48000.

Jack è il cuore di tutto il sistema. Vi permette di sincronizzare tutte le applicazioni e di fare da super patch-bay. Mi spiego meglio: su Windows in genere avete una suite commerciale costosissima che fa tutto (Acid, Cubase, Sonar, eccetera). Un progetto lo fate con una o con un’altra suite; non è semplice se non impossibile trasportare un progetto da una suite all’altra. Questo all’inizio sembra una buona cosa – appare tutto più semplice – ma in realtà è molto limitante: ci si fossilizza sul modus operandi di una sola suite (quella che si è comprata svenandosi) e quindi capita spesso che si senta subito se un musicista usa questo o quel programma. L’unica libertà è costituita dai plugin (i VST). Con Linux invece abbiamo tanti programmi che si occupano di tante cose diverse. Rosegarden per il MIDI, Ardour per la musica, Hydrogen per la drum machine, eccetera, tutto sincronizzato da Jack. Ma se ci piace usare MusE invece di Rosegarden, nessun problema. Diciamo a tutti i software di usare Jack come clock, e premendo "Play" in un’applicazione a caso, tutte le altre partiranno in sincrono.
Jack è anche un’enorme patch-bay. Immaginate di avere uno studio di registrazione audio professionale: avrete decine e decine di strumenti, apparecchi, mixer, effetti, eccetera. Diventereste pazzi a collegare ogni volta tutti i cavi: molto meglio collegare tutti gli strumenti e gli effetti a un unico apparecchio, che istruirete con varie configurazioni. Questo apparecchio, addetto a collegare "tutto con tutto" secondo varie configurazioni, viene comunemente chiamato "patch bay" e Jack svolge questa funzione: collega l’uscita di un software all’entrata di un altro, dirotta un effetto da un software all’altro, dal microfono a un’applicazione, dall’uscita del mixer di un software alle casse o a un’altra applicazione, eccetera. Lo potete gestire direttamente dalla pagina di configurazione di Jack Control, o altrimenti direttamente dall’interno di Ardour. Più avanti vedremo qualche esempio pratico.

Premendo su "Options" comunque potete smanettare con le opzioni. Fondamentalmente dovete agire su questi parametri:
Driver – Impostatelo su "alsa".
Realtime – Ovviamente va selezionato se usate il kernel RT.
No memory lock – Conviene selezionarlo. Deselezionatelo solo se avete problemi.
Soft mode – Questo parametro vi permette di lasciar funzionare jack anche dopo troppi xrun ("battiti" persi, sintomo che il sistema non funziona, fonte di disturbi e interruzioni nell’audio). Conviene deselezionarlo, perlomeno quando registrate.
Monitor – Se lo selezionate, vi crea come ingresso anche due porte "alsa pcm monitor". Serve per registrare tutto quello che sentite, in sostanza. Io ne faccio a meno perché una porta in più così mi fa solo confusione e preferisco avere un controllo chiaro di cosa entra nella scheda sonora e cosa ne esce con alsamixer, e basta.
Force 16bit – Da selezionare solo se la vostra scheda non supporta alcun altro bitrate. In generale lasciatelo deselezionato, e selezionatelo solo se riscontrate problemi.
H/W Monitor – Questo va sempre selezionato, perché è un’ottima funzione che però c’è solo in poche schede audio. Se la vostra scheda audio non la supporta, semplicemente non la userà. Quindi tanto vale lasciarlo selezionato.
H/W Meter – Come sopra
Verbose messages – Conviene selezionarlo, così Jack vi dà più spiegazioni quando qualcosa va storto.
MIDI driver – Va messo su "seq", tranne rarissimi casi di alcune tastiere MIDI che richiedono "raw" per essere riconosciute.
Priority – Su "default" va benone. Se però utilizzate alcuni "tweak" con il kernel RT per migliorare le prestazioni (vedi Appendice E) questo parametro lo potete variare.
Frames/Period – Questo è il parametro più importante. Cominciate con i valori più bassi, fate partire Jack e vedete se parte. Se non parte, mettete un valore più alto. Quando parte, probabilmente troverete molti xrun (i numerini verdi sotto "Started" diventano rossi e da zero cominciano a salire). Fermatelo, aumentate il valore e riavviate Jack finché non avrete più xrun (perlomeno finché non li avrete troppo frequenti: diciamo che uno ogni quarto d’ora ci può anche stare). Potete vedere la latenza di Jack crescere e decrescere in basso a destra nella finestra delle opzioni a seconda di quanto variate questo parametro.
Sample rate – 44100 se lavorate per un CD. 48000 se lavorate per fare la usica di un DVD. Comunque sia, anche se vi sbagliate, poi se usate Ardour potete esportare tutto con la frequenza che vi serve.
Periods/Buffer – Qui dipende dalla vostra scheda sonora. Selezionate il più basso possibile che fa partire jack. In genere è 2.
Dither – "None" migliora le prestazioni, e non ho mai riscontrato alcun miglioramento della qualità dell’audio impostando questo parametro diversamente. Probabilmente dipende dalla scheda sonora.
Audio – "Duplex" è fondamentale, altrimenti non riuscite a registrare mentre ascoltate. Ovviamente c’è il caso che abbiate una scheda sonora così scarsa che non supporta il duplex, nel qual caso il consiglio è di buttarla via immediatamente e comprare qualcosa di decente.
Device – Sia Input che Output vanno impostati su "hw:0", cioè la scheda sonora default di sistema.

Gli altri parametri sono ininfluenti.

Nelle opzioni, andate anche su "Misc" e selezionate:
– Start JACK audio server on application startup
– Enable system tray icon
– Start minimized to system tray
– Save JACK audio server configuration
– Enable ALSA sequencer support

7. Soundfont in QSynth

Adesso lanciamo QSynth e premiamo su "Setup". La prima cosa da fare è dirgli dove sono i soundfonts.Li trovate tutti sotto /usr/share/sounds/sf2/
Potete mettere anche una lunga lista, lui userà solo il primo della lista:


Spostandoci negli altri settaggi avremo questa configurazione (occhio alla frequenza nel caso del video):


Se non state usando QSynth "dal vivo" (per esempio solo come player MIDI o karaoke) vi consiglio vivamente di
disabilitare Riverbero e Chorus. Li aggiungerete tramite LADSPA o VST (vedi più avanti) dopo averli registrati come audio.

8. Soundfont in Timidity

Timidity fa finta di essere un modulo sonoro, come QSynth con i soundfonts, è più ostico da configurare (bisogna cambiare a mano un file di testo) e spesso ha molta più latenza di QSynth. Fondamentalmente, è una chiavica di software. Quindi perché usarlo? Semplice: in sistemi con una CPU lenta e una scheda sonora ridicola, smanettando nel file di configurazione di Timidity è possibile disabilitare molte funzioni e rendere il MIDI – seppur di scarsa qualità – udibile anche su quei sistemi. È l’equivalente del "Microsoft GS Wavetable", quella cosa che su Windows vi fa sentire i MIDI (in maniera oscena) anche senza configurare nulla, ma che non potete cambiare (l’unico modo di avere dei suoni più belli su Win è quello di comprare un modulo VST, tipo l’Edirol HyperCanvas, e di ascoltare i MIDI file solo attraverso applicazioni che supportino la tecnologia VST).
Timidity quindi è la migliore soluzione per chi non vuole registrare, per chi usa l’audio solo per ascoltare file midi o per fare del karaoke, e ha un computer scarso.

Vi conviene tenere tutto: Timidity, QSynth con certi soundfont e la wavetable (se la vostra scheda sonora la supporta) con altri soundfont. In questo modo potete sempre scegliere l’uscita che volete, in qualsiasi programma che supporti il MIDI. Basta andare nelle impostazioni (da qualche parte ci sono sempre nei programmi che usano il MIDI) e dire quale macchina MIDI vogliamo usare. In alcuni programmi come Rosegarden (cioè nei sequencer MIDI) è possibile scegliere per ogni traccia quale macchina MIDI (QSynth, la wavetable, Timidity, un’eventuale tastiera collegata alla presa MIDI esterna…) e quale strumento di questa macchina usare.

Per installare Timidity basta il solito:

sudo apt-get install timidity

Vi installa anche "freepats", che sono in pratica dei soundfont, purtroppo orribili: cambiamoli. Per far questo apriamo il file timidity.cfg:

sudo gedit /etc/timidity/timidity.cfg

Commentate la riga "source /etc/timidity/freepats.cfg" e aggiungete il path e il nome dei soundfont che volete usare, in modo che alla fine, per esempio coi nostri soundfonts PersonalCopy, la parte finale diventi:

# Disabling some of the Midi Controls can help with the CPU usage a lot.
# The same goes to the VLPF, sample anti-aliasing and effects such as
# reverb and chorus
# By default, try to use the instrument patches from freepats:
#source /etc/timidity/freepats.cfg
soundfont /usr/share/sounds/sf2/PC51f.sf2

Ovviamente cambiate PC51f.sf2 con il soundfont che vi piace di più, fra quelli che abbiamo visto prima. Ma attenzione: più è grande il soundfont, più Timidity su PC scarsi gracchierà e andrà lento o veloce senza rispettare il tempo della canzone.

Salvate, e poi riavviate Timidity:

sudo /etc/init.d/timidity restart

Su Karmic è possibile che vi dia un errore e che non ritorni alla console: niente paura, basta premere CTRL+C e tutto funziona. A questo punto ascoltate la canzoncina con i nuovi suoni. Per ascoltare potete usare un qualsiasi player MIDI (vedi l’Appendice A), dicendo al player di usare Timidity come device MIDI.

Infine, vediamo di cambiare Timidity per le CPU o le schede sonore poco efficienti. Se sentite rallentamenti o rumoracci durante la riproduzione, riaprite il file di prima:

sudo gedit /etc/timidity/timidity.cfg

Vedete che c’è una sezione di cose da attivare se avete una CPU scarsa. Il campionamento, gli effetti, eccetera. Provate a disabilitare qualcosa (togliete il "#" alla riga), salvate il file e riavviate Timidity:

sudo /etc/init.d/timidity restart

(premendo sempre Ctrl+C se non esce)
Ascoltate e decidete se il rapporto fra qualità ed efficienza è buono. Se non lo è, disabilitate qualcos’altro, e via dicendo.

Un altro trucco è quello di avviare Timidity con priorità alta. Quando funziona – e lo fa raramente – fa andare tutto liscio, ma le probabilità che il sistema si impalli completamente e vi vada addirittura tutto in freeze sono parecchio alte. Quindi occhio!
Per la cronaca – e solo per la cronaca! – potete aumentare la priorità di Timidity in questo modo:

Chiudete più programmi possibili, compreso il player MIDI. Poi, fermate Timidity:

sudo /etc/init.d/timidity stop

Quindi riavviatelo con priorità altissima:

timidity –realtime-priority=70 -iAD -B2,8 -Os1l -s 44100

Riaprite il player MIDI e incrociate le dita.

Per ritornare sui vostri passi, chiudete il player e terminate timidity:

killall timidity

Riavviate il vecchio Timidity così:

sudo /etc/init.d/timidity start

E premete sempre Ctrl+C nel caso che vi dia errore e non esca dallo start.

9. Gli effetti LADSPA

Se usate Ardour (registratore audio multitraccia), potete saltare questo passaggio e andare direttamente al punto 10. Ardour vi permette di aggiungere gli effetti in cascata, prima o dopo il fader di ogni traccia.

Se non usate Ardour e volete fare tutto con Rosegarden, che comunque ha una primitiva gestione dell’audio, allora vorrete registrare qualche effetto, sulla voce per esempio, o sulla chitarra.
Viene quindi in nostro aiuto Jack Rack. È molto intuitivo e funziona proprio come un vero rack multieffetto. Un ottimo settaggio per una chitarra elettrica è, per esempio:
(li trovate premendo "Aggiungi" in Jack Rack)
– Amplitude -> Dynamics -> Compressors -> C* Compress
– Simulators -> C* AmpVTS
– Simulators -> C* CabinetII
– Simulators -> Reverbs -> C* Plate

Per collegare questi effetti a Rosegarden o agli altri programmi, useremo Jack. Farò un esempio più avanti, al punto 11. Ma prima carichiamo gli altri programmi.

10. VSThost

I VST sono plugin, molti dei quali free, pensati per Windows ma molto compatibili con Linux grazie a wine. Ce ne sono di splendidi, che suonano benissimo. Su Linux ci sono gli equivalenti, detti "LADSPA" come abbiamo visto sopra, che sono anche superiori ai VST ma che soffrono del terribile difetto di essere completamente sprovvisti di preset. E andare a configurare a mano TUTTI gli effetti, per quanto dovrebbe essere il compito di un vero tecnico audio, è per il principiante un compito allucinante e mostruoso. Se si è abituati coi VST di Windows perciò, o se ne abbiamo comprato qualcuno molto costoso come AmpliTube o Guitar Rig, possiamo comunque usarlo su Linux.
Ci sono due modi:

– Tramite VSThost. È come Jack Rack, ma per i VST di Windows. Li mettete in cascata e li comandate attraverso MIDI Through Port (per quelli MIDI) e Wine_ASIO_driver (per quelli audio). Qui trovate le istruzioni.
– Tramite Ardour. La nuova versione di Ardour supporta nativamente VST, ma va compilata a mano. È facile, ma può spaventare il neofita. Leggete le istruzione sulla
guida presente in questo stesso sito.

Tra i due metodi, suggerisco vivamente il secondo. Ha l’unico difetto di non poter essere usato per il MIDI, ma per i singoli strumenti MIDI abbiamo già visto quante strade disponibili abbiamo. Per i rari effetti misti MIDI/audio (Vocoder, Autotune) possiamo usare anche VSThost: nessuno ce lo vieta.

11. Ardour, Rosegarden, Hydrogen

Il cuore di tutto è Jack, dicevo. Ma gli organi vitali sono ovviamente la drum machine (Hydrogen), il sequencer MIDI (Rosegarden) e il registratore audio multitraccia (Ardour).

Carichiamoli tutti e tre, dopo aver avviato ovviamente Jack.
In ognuno andremo a scegliere Jack come trasporto, in modo che i tre programmi vadano insieme, come se fossero un unico programma.

Ardour: In alto a destra vicino al timer, sopra a "Time Master", selezionate "Jack"


Rosegarden: Impostazioni -> "Configura Rosegarden…" -> Generale -> Comportamento. Spuntare la casella "Usa il trasporto Jack".

Hydrogen: File -> Preferenze -> Sistema audio. Alla voce "Driver audio" scegliere "Jack".

Premendo play in qualsiasi programma, gli altri due partono.
Ricordatevi di cambiare il metronomo in tutti e tre i programmi, in quanto la sincronizzazione avviene solo per il play/stop/pause, non per tutto il resto.

A questo punto non resta che studiare i programmi che usiamo.

Per Rosegarden: http://www.rosegardenmusic.com/resources/

Per Ardour: http://www.wguitars.it/ardour.php (se non visualizza bene la pagina, su Firefox andate su Visualizza -> Stile pagina -> "Nessuno stile"). Un altro splendido manuale (in inglese) che vi porta per mano nella costruzione di una canzone intera, coprendo tutte le funzionalità di Ardour, si trova qui:http://en.flossmanuals.net/ardour/

Per Hydrogen: http://www.hydrogen-music.org/?p=docs

Infine, se non usate Ardour, a questo punto potete anche premere su "Connect" in Jack e divertirvi a collegare gli strumenti. Lo potete fare anche se usate Ardour ma, avendo Ardour una gestione interna di Jack, potete farlo da lì (è più veloce) e visualizzare graficamente quello che avete fatto premendo "Connect" su Jack.

Io in questo esempio bizzarro ho collegato il microfono (Capture in alsa_pcm) a Jack Rack, cioè in sostanza ho detto di collegare la presa della mia scheda sonora (a cui è collegata la mia chitarra elettrica) all’ingresso di Jack Rack, dove c’è una serie di distorsioni, poi ho collegato l’uscita di Jack Rack all’ingresso di registrazione di Rosegarden e alle casse (per sentire in diretta cosa sto suonando). Inoltre ho anche connesso Qsynth alle casse (così sento i suoni delle tracce midi) e ovviamente l’uscita di Rosegarden alle casse per sentire il risultato finale. È solo un esempio, potevo fare tante altre cose: potevo mandare l’uscita record monitor di Rosegarden alle casse invece dell’uscita di Jack Rack, potevo far entrare nella scheda sonora l’uscita del mio Korg e collegarla direttamente alle casse o alla registrazione di Rosegarden per trasformare in file sonoro la base MIDI, eccetera eccetera. Le combinazioni sono infinite e sono tutte da provare.


12. Arrangiare con gmorgan

Gmorgan ci permette di testare la nostra canzone prima di costruire la base da zero. Assomiglia, in piccolo, a Band in a Box (che però è a pagamento, per Windows, ma funziona anche su Ubuntu grazie a wine, vedi appendice B). Ossia ha due funzioni:
– decidiamo lo stile (jazz, country, dance, quello che volete), colleghiamo una tastiera MIDI al computer, e mentre con la sinistra suoniamo solo gli accordi, con la mano destra suoniamo lo strumento solista. Gmorgan cambia al volo gli accordi degli altri strumenti: chitarra, basso, piano…
– per ogni battuta della canzone, gli diciamo con quale stile e quale accordo fare. Gli diciamo anche dove ripetere, quando ripetere, quando fare una variazione (per esempio un break o un fill, o un finale, o un’intro) e lui la esegue diligentemente. Se ci piace, la esportiamo come MIDI.

12.1 – CONFIGURAZIONE

La prima che si avvia gmorgan, occorre dirgli un po’ di cose, altrimenti non funziona.
Avviatelo e andate su Settings → Global. Otterrete una schermata che va configurata così:

(se non vedete bene, cliccandoci su la renderete più grande).
Lì dove vedete selezionato "Timidity 0", potete ovviamente scegliere quello che volete: QSynth, un rack esterno, la wavetable…
Premete "Save" e riavviate gmorgan.

12.2 – USO

A questo punto vi si presenterà questa schermata:



Selezionate dall’elenco a destra lo stile che volete (a sinistra ci sono le variazioni di quello stile) e premete "Start/Stop". Sentirete l’orchestrina che comincia a suonare. Se siete collegati con una tastiera MIDI, ora potete fare un accordo con la mano sinistra, e magicamente gmorgan sposterà la tonalità della canzone su quell’accordo, e tutti gli strumenti verranno dietro. Con la destra intanto potete sbizzarrirvi in un assolo. Ed è subito piano bar! ^_^

Ora che vi siete divertiti e avete trovato lo stile giusto per la vostra canzone, fermate premendo su "Start/Stop" e premete, nel menu, "Sequencer". Lì potete mettere gli accordi (ogni quadratino è un quarto della battuta) e lo stile (il numero in alto a destra di ogni battuta corrisponde a uno stile, il cui elenco è in basso a sinistra). Potete anche dirgli anche dove ripetere e dove tornare indietro, e dove terminare. Se non scrivete nulla fa l’accordo e lo stile precedente. Premete "Start/Stop" per ascoltare la vostra creazione. Si capisce meglio con un esempio:

(ovviamente potete cliccarci sopra, così si vede più in grande).

Qui trovate istruzioni molto più dettagliate: http://gmorgan.sourceforge.net/doc.html
In particolare, per quanto riguarda il sequencer:
http://gmorgan.sourceforge.net/doc.html#III.H%20-The%20Sequencer%20Song|outline

Ultimata la bozza della canzone, la esportate andando, nella finestra del sequencer, su "File" → "Export MIDI file". A questo punto potete importarla in Rosegarden per modificarla come si deve, per renderla più bella e più varia, per adattarla alle vostre esigenze.

13. Produrre la nostra canzone

Ora che abbiamo configurato Rosegarden, Ardour e Hydrogen e sappiamo come importare ed esportare, possiamo cominciare a registrare la nostra canzone.

Prima di tutto impostiamo il metronomo su Rosegarden.
Posizionatevi all’inizio della canzone e premete: "Composizione" -> "Apri l’editor di tempo e di metro".
Doppio click sulla riga "Ritmo". Cambiatelo a vostro piacimento. Lo stesso per il tempo. Sarà sempre possibile cambiarli in futuro, e variarli in successivi eventuali cambi di metronomo all’interno del brano.

Ora cambiamo il metro e il tempo anche su Ardour.
Sopra la traccia "master", se ci fate caso, ci sono parecchie righe: Timecode, Meter, Tempo… Cliccando col destro su "4/4" e scegliendo "Modifica" potrete variarlo a vostro piacimento. Lo stesso per il metronomo.

Il metronomo di Hydrogen è in bella vista nel player, basta cliccarci sopra.

Impostiamo a questo punto gli strumenti MIDI su Rosegarden.
Premete "Studio" -> "Gestisci dispositivi MIDI".
Premendo il menu a tendina nella colonna "Connessione" in corrispondenza di "General MIDI device" vedrete un po’ tutti gli strumenti di cui disponete. Se per esempio avete un modulo esterno collegato via MIDI a una SoundBlaster, imposterete l’uscita su "Emu10k1 MPU-401". Se avete Timidity, lo imposterete su Timidity. Se avete precaricato nella SoundBlaster Creative i soundfont tramite asfxload, imposterete "Emu10k1 Port 0". Se usate i soundfont con QSynth, imposterete "Synth input port".
Potete anche scegliere più di uno strumento, usando i successivi "out 2", "out 3" e via dicendo, cambiando loro nome. Se volete usare uno strumento VST tramite VSThost, dovete (dopo aver lanciato VSThost) scegliere "MIDI through". In questo caso, dovete anche andare su VSThost, premere "Devices" -> "MIDI" -> "MIDI input devices" e selezionare "Midi through".
Come dispositivo di registrazione, se non digitate a mano le note MIDI ma vi aiutate con una tastiera esterna collegata via MIDI, sceglierete MPU-401. Se usate "Virtual MIDI keyboard" (lo trovate nei repository) imposterete quello.
Se avete un modulo esterno (rack o tastiera che sia) che vi fa da orchestra MIDI, sotto "Dispositivi di riproduzione" selezionate quel dispositivo e premete "banchi". Nell’elenco, selezionate quel dispositivo e premete "Importazione in corso". Se c’è nella lista, avete anche tutto l’elenco degli strumenti della vostra tastiera.


Ecco un altro esempio:

Come vedete, in questo esempio fra i vari output ho due dispositivi (o "macchine MIDI") che uso:
1) "General MIDI device" collegato al
dispositivo QSynth
2) "MIDI software device 2" collegato al
dispositivo Timidity

E tra gli INPUT ho:
1) "MIDI hardware input device" collegato alla presa del cavo MIDI IN, che da me si chiama "EMU10K1 MPU-401" ma da voi non so come si chiama perché dipende dalla vostra scheda MIDI.
2) C’è anche la possibilità di avere un ingresso software (per esempio una tastiera virtuale disegnata sullo schermo) che però nell’esempio non ho attivato.

A questo punto siamo pronti per scrivere la nostra base musicale o a importare il file MIDI con la base che vogliamo modificare.
Se volete per esempio fare una cover di una canzone, potete importare in Rosegarden la base MIDI di quella canzone (File → Inserisci). Oppure potete modificare una base creata con software come Band in a Box come potete leggere nell’Appendice B. Generato e reso compatibie il file wav, si importa in Ardour da Sessione → Importa.

Ma torniamo a Rosegarden e importiamo un file midi su cui vogliamo lavorare (File → Inserisci) o scriviamo lo spartito traccia per traccia con i metodi che mette a disposizione Rosegarden e che potete leggere nella documentazione che ho citato in precedenza.

Assegniamo ora gli strumenti: cliccando col destro sui vari "Senza titolo" sceglierete il dispositivo MIDI di quella traccia.
Esempio: ci sembra che il basso di QSynth sia migliore. Quindi tasto destro, scegliamo QSynth e un canale a caso (cominciate dal primo. L’unica differenza: se è la batteria, per convenzione prendete sempre il canale 10), poi andiamo a sinistra su "Parametri dello strumento" e scegliamo il basso nel menu a tendina. Io per esempio ho un bellissimo suono di pianoforte nel Korg, nel banco di suoni non GM, quindi clicco col destro sul "Senza titolo" del pianoforte, seleziono il Korg, lo imposto sul primo canale, e poi a sinistra come banco scelgo il suo proprietario e come strumento scelgo "Piano 16". Se ci piace il sassofono del VST "Roland Sound Canvas" da noi comprato in precedenza, importiamo il Roland in VSThost ("File" -> "Add plugin"), sul Roland impostiamo un sassofono sul canale 1, su Rosegarden clicchiamo col destro su "senza titolo", scegliamo il banco corrispondente al MIDI through e mettiamo il canale 1.
Naturalmente, se usate più strumenti della stessa macchina MIDI, le assegnerete più canali MIDI diversi. Per esempio: macchina Korg, basso sul canale 1, piano sul canale 2, e così via. Macchina QSynth, violini sul canale 1, sassofono sul canale 2, batteria sul canale 10. Occhio perché i canali MIDI sono in genere al massimo 16 per ogni macchina.
In realtà è molto meno complicato di quello che sembra. E oltretutto, vi fa finalmente capire l’utilità di "MIDI through", sulla cui funzione vi siete – ne sono certo – interrogati per anni. :-)

Vediamo un esempio pratico:


(cliccateci sopra per ingrandirla)
In questo esempio ho fatto click col tasto destro sulla prima traccia, a cui voglio assegnare lo
strumento"Basso elettrico" del dispositivo QSynth. Quindi ho scelto prima il dispositivo "General MIDI device" (che, come avete visto nell’ultimo esempio prima di questo, è collegato a QSynth) e poi gli ho detto di usare come strumento il basso elettrico, che è il numero 34, sul canale MIDI #2 (come sapete, ogni dispositivo ha 16 canali MIDI).

Poi vado con un altro strumento, per esempio il piano, ma lo voglio da Timidity e non da QSynth:


Ingreandite l’immagine cliccandoci su: come vedete, ho cliccato col desto sulla traccia del pianoforte (la terza dall’alto), ho scelto come dispositivo "MIDI software device 2" (a cui è connesso Timidity, vedi sempre l’esempio di due schermate sopra) e come strumento il pianoforte, che è lo strumento #1. L’ho messo sul primo dei 16 canali disponibili.

Se poi ora cliccate sulla REGISTRAZIONE di una traccia (in ogni traccia ci sono due pallini: il secondo abilita la registrazione), senza premere veramente il record/play, abilitate il suono "in diretta". Cioè, se selezionate la registrazione della prima traccia dell’esempio e avete una tastiera collegata via MIDI al PC, suonando con la tastiera sentirete il suono del basso di QSynth. Se invece abilitate la registrazione della terza traccia del mio esempio, suonando la vostra tastiera sentirete il suono del pianoforte di Timidity.
Ogni dispositivo ha circa 128 strumenti, ma non ne può suonare più di 16 contemporaneamente. Per questo è spesso necessario avere più di un dispositivo.
Se ora premete il pulsantone rosso della registrazione, potete anche registrare e riascoltare le vostre performance, magari cambiando strumento successivamente.

Quando si hanno più fonti, è normale che i volumi siano completamente sballati. Andate nel mixer di Ubuntu (o nel terminale digitando alsamixer) ed aggiustateli nella scheda "Riproduzione" finché non ottenete più o meno lo stesso effetto di quando ascoltavate la base con una sola macchina MIDI. Per aiutarvi coi singoli volumi, silenziate le tracce che non vi interessano (il pallino giallo di fianco a "Senza titolo"). Naturalmente, una volta decisi gli strumenti, cambiate "Senza titolo" e mettete il nome effettivo dello strumento, magari specificando nel nome la macchina MIDI usata. Per esempio "Basso Korg", "chitarra QSynth", "Batteria Timidity" eccetera.
Questo passaggio è piuttosto delicato e cambia completamente a seconda della scheda sonora che si ha.
Io per esempio ho una Creative Soundblaster Live Platinum con frontalino esterno: il volume dei banchi precaricati nella memoria della scheda sonora col comando awfxload è determinato dall’ingresso "Synth"; il volume di QSynth è determinato dall’ingresso "Wave"; il volume del Korg collegato ai due PIN nel frontalino esterno è determinato dall’ingresso "LiveDrive 2"; "Wave" e "Synth" sono a loro volta comandati da "PCM"; "PCM" e tutto il resto dipende da "Master", eccetera. È divertente studiare come funziona la propria scheda sonora. Una volta che si è capito come si controllano i volumi in riproduzione, bisogna poi anche capire come si controllano i volumi in registrazione: occhio, perché alcune schede sonore hanno degli interruttori che permettono di registrare un mix di quello che sta entrando, oppure solo singoli ingressi (nel mio caso l’interruttore "Mix").

N.B. Per provare la registrazione, basta impostare Ardour perché registri, e smanettare nelle schede "Registrazione" e "Interruttori" del mixer di Ubuntu (o di alsamixer) fino a che non capirete bene come funziona la propria scheda. Questa operazione potete farla per prova, su un progetto temporaneo.

Modificate la base midi come vi pare, tenendo presente che comunque potrete modificarla e cambiare strumenti anche strada facendo.

Ora possiamo registrare le tracce audio con Ardour.

Ardour è molto complesso ma per i nostri scopi non useremo tutte le sue molteplici funzioni. L’importante è premettere il funzionamento generale di Ardour:
– Il suono proveniente da fonti esterne, detto "System:Capture_1" e "System_Capture_2" (il microfono, Qsynth, la chitarra elettrica tramite un VST come Amplitube, eccetera: tutto quello che avete impostato nella sezione "Registrazione" del mixer di Ubuntu o di alsamixer) si immette in una traccia audio di Ardour.
– L’audio di ogni traccia si può far passare per un effetto LADSPA (riverbero, eco, chorus, flanger, eccetera). Ossia: si prende l’uscita di una traccia audio e la si manda all’effetto, e l’uscita dell’effetto lo si manda a "Master IN".
– Il "Master" prende le fonti che gli mandiamo e ne controlla il volume (e il pan, cioè il bilanciamento sui canali destro e sinistro) e per default manda tutto alle casse o alla cuffia.

Quando esportiamo il risultato finale della nostra composizione, Ardour riproduce velocemente tutto quello che passa per il Master e invece di mandarlo alle casse lo trasforma in un file.

Schematicamente, e in maniera estremamente semplificata, il comportamento minimo di Ardour è:
Fonte sonora -> traccia audio -> effetti -> Master -> casse o cuffia

Create qualche traccia audio: mono per la voce, stereo per ogni strumento che registrerete dalle macchine MIDI, stereo per ogni strumento generato da un VST.
Per essere pratici, facciamo un esempio semplice: una traccia mono che chiamerete "Voce", una traccia stereo che chiamerete "Chitarra" e una traccia stereo che chiamerete "Basso".

A questo punto aprite il vero centro di comando di Ardour: il mixer.
"Window" -> "Show mixer"

Come potete vedere, ogni traccia (ogni colonna) ha un input, uno spazio vuoto, un cursore per il volume, un altro spazio vuoto e l’output. A destra, c’è il Master.

Nella colonna della traccia "Voce" premete in alto su "input" -> "Modifica". Come potete vedere, a sinistra avete gli ingressi selezionati, e a destra quelli possibili. Dovrebbe già essere impostato su "system:capture_1" ma se non lo è selezionatelo da sinistra e mettetelo a destra.
Sempre nella traccia "Voce", selezionate in basso "output" -> "Modifica" e scegliete "ardour:master/in 1" e "ardour:master/in 2". È normale che ci sia un solo ingresso e due uscite, in quanto il microfono è mono ma al mixer va un segnale stereo (che poi è il segnale mono automaticamente sdoppiato da Ardour).
A questo punto, a sinistra nella colonna "Master", in basso premiamo "output" -> "Modifica" e, se non è già selezionato, mettiamo "system:playback_1" e "system:playback_2"


In pratica abbiamo detto ad Ardour di registrare nella traccia "Voce" quello che proviene dalla scheda sonora e di mandarlo al Master, e quindi abbiamo detto al Master di mandare tutto alle casse.
system:capture -> IN "Voce" OUT -> IN Master OUT -> system:playback

Per capire meglio quello che abbiamo fatto, possiamo premere su "input" in alto nella traccia Master, e constatare che come input sono già selezionate (per default) tutte le tracce audio, compresa "Voce" OUT 1 e 2. Se andiamo su Jack Control e premiamo "Connect" vediamo graficamente quello che abbiamo fatto.

Adesso però dobbiamo dire al nostro computer che cosa effettivamente deve uscire da quel fantomatico "system:capture" (che poi è la nostra scheda sonora) che andrà a finire nella nostra traccia "Voce". In questo caso dobbiamo far uscire soltanto il microfono, perché nella traccia "Voce" bisogna registrare solo la voce: lapalissiano, nevvero?
Collegate quindi il microfono alla scheda sonora. Ora dovete fare in modo di ascoltare la base prodotta da Rosegarden insieme alle altre tracce di Ardour, ma registrare SOLO il microfono.
Andate nel mixer di Ubuntu, nella scheda Riproduzione (o in alsamixer nella scheda Playback) e alzate il volume degli strumenti MIDI (nel caso di Qsynth, è in genere semplicemente "Wave" o "PCM"; nel caso abbiate una Soundblaster Creative e abbiate caricato in memoria dei soundfont con il comando awfxload, in genere il volume è "Synth"). Non alzate il volume del microfono perché è meglio non sentire il ritorno della vostra voce mentre cantate. Escludete tutto ciò che non volete sentire. Se volete ascoltare anche quello che state registrando, andate su Ardour e premete "Options" -> "Monitoring" -> "Ardour does monitoring".
Sempre nel mixer di Ubuntu, selezionate la scheda
Registrazione (o in alsamixer la scheda Capture) e abbassate tutto tranne il volume principale di cattura (in genere "Capture") e il volume del microfono (in genere "Mic", ma nei frontalini esterni delle Creative per esempio è "LiveDrive 1"). In alcune schede bisogna selezionare una determinata fonte, la quale esclude alcune altre fonti. Un esempio nelle schede Creative Audigy e simili: l’interruttore "Line" permette di registrare dal frontalino, ma poi bisogna anche selezionare "Livedrive 1" e/o "LiveDrive 2" rispettivamente per il microfono o i due pin stereo. Se invece accendete l’interruttore "Mix" allora abiliterete tutti gli ingressi possibili, compreso quello che state ascoltando, rischiando di creare dei loop assordanti. In generale, alsamixer ha un controllo un po’ più completo, in certe schede sonore: spostandovi con il tasto TAB selezionate la riproduzione o la registrazione, spostandovi con le frecce destra e sinistra selezionate la fonte desiderata, premendo "M" la silenziate, premendo la barra spaziatrice la selezionate per la registrazione.


Per vedere se siete pronti per registrare, basta vedere nella finestra principale di Ardour in corrispondenza della traccia "Voce" se la barretta del volume dà segni di vita o meno se parlate nel microfono. Se sì, fate qualche prova urlando nel microfono al massimo volume che pensate possiate raggiungere registrando la canzone, abbassando il volume di registrazione nel mixer di Ubuntu fino a che non vedrete più picchi rossi nell’indicatore del volume di registrazione della traccia "Voce" di Ardour.

A questo punto premete il pallino rosso della traccia "Voce", il pallino rosso in alto a sinistra nel controllo principale di Ardour, e quindi Play per registrare.


Per variare il volume di singole parti della voce, per spezzare l’audio, per cancellare le parti con il silenzio e cose del genere, vi rimando alla guida ufficiale tradotta in italiano in questo sito:
WGuitars
(se non vedete bene la pagina, con Firefox basta andare su "Visualizza" -> "Stile pagina" -> "Nessuno stile")

Per registrare la chitarra da un plugin audio VST e non avete Ardour VST, è sufficiente andare nella finestra del mixer, selezionare "input" -> "Modifica" della colonna "Chitarra" e come input selezionare "Wine_ASIO_Jack_Client:Output0" e "Wine_ASIO_Jack_Client:Output1". A sua volta, l’ingresso del segnale che va a VSThost (nel nostro esempio la chitarra) è sempre determinato dalla scheda "Registrazione" del mixer di Ubuntu. Se avete Ardour VST invece troverete i VST direttamente tra i plugin: nella finestra del mixer di Ardour, premiamo il tasto destro del mouse in corrispondenza dello spazio vuoto tra il volume e input, e scegliamo "New plugin" -> "Plugin manager".

Se lo strumento VST è MIDI, l’avete precedentemente impostato con Rosegarden, come ho scritto all’inizio.
Ci sono esperimenti malefici da fare in questi casi. Un esempio: se in Rosegarden mandiamo la traccia MIDI della voce (c’è in molte basi, serve per il karaoke) al MIDI through e come VST usiamo un Vocoder o un Autotune, e poi registriamo in una traccia di Ardour l’uscita di VSThost mentre cantiamo, otteniamo più o meno l’odioso e abusato effetto "Cher".

Ora che voce e chitarra sono registrate, è probabile che vogliamo cambiare alcuni strumenti della base MIDI, perché quando l’abbiamo composta non abbiamo tenuto conto delle frequenze di voce e chitarra. Spostiamoci su Rosegarden e cambiamo quindi la base, modificando le note, trasponendo le ottave, cambiando gli strumenti e/o le macchine che li producono, aggiungendo anche eventuali altri strumenti, con la grande comodità di ascoltare sempre la parte audio di Ardour, ben sincronizzata.

N.B.: se ogni tanto va fuori sincrono, non preoccupatevi. Basta posizionare il cursore in un punto del brano e premere play in Rosegarden, e tutto torna in sincrono. Se non torna in sincrono, fate la stessa cosa, ma con Ardour. Presumo che sia un bug di Jack, o del modulo di sincronizzazione a Jack di uno dei due software (Ardour o Rosegarden).

A questo punto bisogna registrare ogni strumento MIDI in una traccia audio diversa di Ardour. È un compito piuttosto ripetitivo e fastidioso, che ci scamperemo quando Ardour avrà il supporto MIDI e non dovremo nemmeno più usare Rosegarden.

Per quanto riguarda Hydrogen, esportate direttamente il file audio: "File" -> "Esporta la canzone" e importate il file .wav in una nuova traccia stereo di Ardour.

Per Rosegarden è più dura. Creiamo una nuova traccia audio stereo in Ardour (nel nostro esempio ne avevamo già pronta una: "Basso"). Andiamo in Rosegarden e silenziamo tutte le tracce a parte il basso. Andiamo nel mixer di Ubuntu e scegliamo in registrazione la fonte: se è un modulo esterno collegato all’ingresso Line scegliamo "Line", se sono i soundfont della Soundblaster scegliamo "Synth", se è uno strumento VST o QSynth scegliamo "Wave" e/o "PCM", e via dicendo (un consiglio: togliere gli effetti Chorus e Reverb di QSynth o dello strumento VST). Mettiamo in registrazione la traccia "Basso" di Ardour e registriamo.
Lo stesso procedimento va fatto per ogni strumento.

Ora possiamo chiudere Rosegarden. Non dimentichiamoci di salvare la sessione di Ardour e procediamo a mettere gli effetti.
In sostanza ora abbiamo tutto su audio, ma sono suoni secchi, senza riverbero, chorus, compressore, equalizzatore, echo/delay e via dicendo.
Andiamo nella finestra mixer di Ardour. Vedete che per ogni colonna/traccia c’è uno spazio vuoto tra input e volume, e tra volume e output. È nello spazio vuoto tra volume e output che metteremo gli effetti LADSPA (e anche quelli VST se avete Ardour VST), in modo che il nostro schemino, per ogni traccia, diventi:
system:capture -> IN Traccia OUT -> effetti -> IN Master OUT -> system:playback

In un vero studio analogico si usava un passaggio in più: si tenevano da parte gli effetti fissi, e poi per ogni strumento si decideva "quanto effetto" mandare al mixer. La cosa è più intuitiva e meno complessa di avere una cascata di effetti (ognuno da configurare) diversa per ogni strumento, ma lascia molta meno libertà. Visto che possiamo, prendiamoci un po’ di tempo e usiamo uno studio in cui abbiamo infiniti effetti da collegare autonomamente a ogni strumento (naturalmente alcune tracce possono essere raggruppate e comportarsi come una singola traccia, e per esempio mandarli a una traccia virtuale di soli effetti, detta "Bus", la cui intensità possiamo variare durante la riproduzione: per tutto questo vedi la guida ufficiale).

Premiamo il tasto destro del mouse in corrispondenza dello spazio vuoto tra il volume e output, e scegliamo "New plugin" -> "Plugin manager". Ci appare una lista degli effetti LADSPA.
Quelli più comuni sono quelli che cominciano per "C*". Per la voce, abbiamo bisogno di un riverbero che abbia l’ingresso mono e l’uscita stereo (uno ottimo è "C* Plate"), mentre per gli strumenti abbiamo bisogno di un riverbero con ingresso stereo e uscita stereo (quindi nel nostro esempio "C* Plate2x2"). Occhio che vanno in cascata dall’alto verso il basso, quindi sta a voi decidere se preferite, per esempio, riverberare un suono con del chorus, o mettere il chorus su un suono riverberato. Molto utile è anche l’equalizzatore: "C* Eq" o "C* Eq2x2" sono molto comuni e versatili.
Se avete letto la guida di Ardour, avete visto che si possono cambiare in una singola traccia anche i singoli parametri dei singoli effetti, mettendoli a grafico. Per esempio possiamo aumentare durante un acuto della voce le dimensioni della stanza dell’effetto riverbero, creando un tipico effetto "la stanza diventa uno stadio mentre sto cantando", oppure possiamo aumentare il threashold del flanger, creando quell’effetto di "suono che si sporca e diventa sempre più alieno" usato molto spesso per esempio dai Queen (in "The Miracle" alla fine quando dice "end to war" sulla parola "war").

Quando poi ascoltate il prodotto finale, tenete conto che se sentite dei disturbi essi possono essere dovuti a un difetto nella registrazione o soltanto nella riproduzione. Se sono nella registrazione (per sincerarsene basta mettere in "solo" la traccia che ci sembra faccia difetto e riprodurla più volte per sentire se fa sempre lo stesso difetto nello stesso punto) bisogna registrare di nuovo. Se sono nella riproduzione non c’è problema, in quanto quando faremo l’export del file, Ardour farà tutti i calcoli scientificamente senza affidarsi ai problemi di sync realtime della riproduzione.

Se tutto ci sembra ok, salviamo e andiamo su "Sessione" -> "Esporta" -> "Esporta la sessione corrente come audio". Il gioco è fatto.
Il file wav prodotto può già essere ascoltato su qualsiasi player, o trasformato in MP3 128k 44100Hz o qualsiasi altro formato da qualsiasi programma come Audacity, Rezound o Sweep.

Appendice A – Il player MIDI

Un bel programma per il karaoke? il migliore è per Windows, è gratis, si chiama "Van Basco" e va benissimo anche su Linux, con Wine.

Scaricate Van Basco da qua:
http://www.vanbasco.com/download.html
Installatelo come si fa con Windows, facendoci doppio clic sopra (o tasto destro, "Apri con Wine").
Il programma parte da solo. Cliccate col destro su una parte libera della finestra del player, e scegliete "impostazioni". Al posto di "MIDI-MAPPER" mettete il primo "Timidity" della lista, o qualsiasi altro strumento (QSynth se l’avete caricato, la wavetable se avete una scheda sonora compatibile con queste funzione, l’uscita MIDI esterna se avete una tastiera o un modulo rack collegato, eccetera) e fate OK.

Se trovate dei player free altrettanto validi e magari nativi per Linux, vi prego di segnalarmeli.

Appendice B – Band in a Box

Questo splendido arranger per Windows, che vale tutti i soldi che costa (ci hanno lavorato davvero tanti musicisti e arrangiatori) funziona perfettamente su Linux. Se l’avete comprato, vi basta creare la vostra canzone, magari con i RealDrums (batteria preregistrata, mostruosamente verosimile).

Prima di installarlo dovete anche installare winetricks e lanciare l’installazione di tutti i codec, di tutti i font e di Windows Media Player 9. Poi lanciate l’installazione di Band In a Box e tutto fila liscio.

Per configurarlo andate su "Opt." -> "MIDI/Audio driver setup" e scegliete "No MIDI sound Input" come input e quello che volete come output (Timidity, la wavetable, Qsynth…) quindi premete su OK.
Arrangiate la vostra canzone e, quando sarete pronti (io in genere arrangio singoli pezzi della canzone, che poi "sommo" importandoli in Ardour e Rosegarden) esportiamo.
Salvate la canzone (File -> Save as…) e ricordate il percorso.
Andate su File -> "Make a standard MIDI file" -> "File on disk", scegliete lo stesso percorso di prima e premete "Salva".
A questo punto chiudete pure Band in a Box.

Se avete usato RealDrums, dirigetevi nella cartella che avete usato per il salvataggio del file MIDI. Lì troverete un file nome_RealDrums.WAV con la traccia di batteria. Purtroppo questo file non è leggibile dai più comuni programmi, ma si può convertire facilmente con VLC.
– Aprite VLC
– "Media" -> "Open file"
– Trovate il file e selezionatelo ma NON premete "Play"
– Vicino a "Play" c’è un bottoncino con una freccetta a triangolino. Premetelo e selezionate "Convert"
– Mettete la spunta a "File", cliccate su "Browse" e digitate un nome, per esempio "OK.wav", e premete su "Save"
– Sotto "Encapsulation" premete su "WAV"
– Sotto "Audio codecs" mettete la spunta a "Audio" e nel menu a tendina selezionate "WAV".
– Premete "Save"

Ora il file può essere letto. Magari convertitelo ulteriormente con Audacity nel caso che abbia una frequenza diversa dal progetto di Ardour che state usando. A questo punto, importate il file audio in Ardour e il file MIDI in Rosegarden.

Appendice C – Pubblicare la propria musica

Una volta che avrete imparato a usare questi programmi, produrrete – immagino – canzoni. Per pubblicarle vi consiglio la licenza Creative Commons, che vi mette al riparo da eventuali plagi (vale in tribunale dalla data di pubblicazione), è gratuita, non necessita dell’iscrizione alla SIAE, permette comunque l’uso per scopi commerciali (ovviamente il prezzo lo fate voi) ma permette sempre l’uso e la copia gratuita della vostra musica non a scopo di lucro, a patto che si dica sempre che è roba vostra.

Per pubblicare, dovete salvare la vostra canzone in due formati:
– WAV non compresso, PCM, 44100Hz, 16 bit.
– MP3, 44100Hz, bitrate costante 128k.
Tenete sempre questi due formati per ogni canzone che avete, perché i vari siti chiedono uno o l’altro. Per salvare in MP3, usate il programma "lame".

Ovviamente, quando fate un CD audio dei vostri pezzi, usate i file WAV.

I siti migliori che accettano le vostre canzoni e che ci mettono sopra una licenza Creative Commons, sono:

SoundClick. Per me è il migliore. L’upload è semplicissimo e immediato, il player compatibilissimo per tutti. Pochi fronzoli, molta sostanza.
Dmusic. Ottimo anche questo. Graficamente offre un po’ meno banner, players eccetera ma è davvero ricco di contenuti. L’upload e il tagging non sono molto intuitivi.
Internet Archive. Qui non c’è solo musica, c’è TUTTO. Dispersivo ma essenziale: è la memoria di internet.
Jamendo. In italiano. Conosciutissimo, è la migliore vetrina. Ma l’upload è di una lentezza mostruosa (si carica solo album per album, non canzone per canzone, con un client solo per Windows, e si attende anche un mese prima di essere pubblicati).
Last.fm. Celeberrima radio (di recente passata a pagamento, ma il sito e i singoli pezzi sono ancora gratuiti), vi permette di avere una certa visibilità ma non è molto chiara come licenza. Conviene aver già PRIMA messo la licenza Creative Commons su altri siti, POI mettere la propria musica su Last.fm.

Per sentire alcuni dei risultati ottenuti con i metodi spiegati questa guida, potete ascoltare le mie canzoni presenti nel menu qui a sinistra.

Vi invito a lasciare commenti (anche negativi: non mi offendo!) nei siti in cui ho pubblicato la mia musica:

Soundclick

Jamendo

DMusic

Last.fm

The Internet Archives

Appendice D – Senbee, che scheda audio mi consigli?

Purtroppo non ho modo di provare le schede audio. Io ho la mia, una vecchia Creative SoundBlaster Platinum con frontalino esterno, uscita di produzione, superbamente compatibile e dalle performance accettabili.
Certamente, se fate registrazioni anche solo amatoriali, buttate via la schedina audio integrata alla scheda madre del vostro PC o del vostro portatile. Compratene una PCI con un frontalino, o una esterna, che abbia preferibilmente la funzione "Wavetable" (anche se non credo che ci siano più schede in vendita con questa preziosa funzione), e che soprattutto sia compatibile con Linux.
Qui potete vedere, scheda per scheda, che funzioni ci sono e se sono compatibili con Linux:
http://www.alsa-project.org/main/index.php/Matrix:Main. Anche qui:http://freebob.sourceforge.net/index.php/List_of_Supported_Devices. Come vedete, sono numerose le schede professionali supportate. Occhio: una buona scheda viaggia sui 250€, ma, insieme a un buon microfono, è l’unica spesa importante da fare.

Se volete, ho aperto un thread sul forum di Ubuntu per condividere esperienze sulle schede audio professionali, per segnalare quelle compatibili:
http://forum.ubuntu-it.org/index.php/topic,285007.msg2060054.html#msg2060054

Appendice E – Migliorare le prestazioni (SOLO KERNEL RT)

Se sapete cosa sono le interrupt (dette "IRQ") sappiate che il kernel RT ha come fondamentale differenza dal kernel generic il fatto che assegna i driver delle periferiche a precise IRQ a cui quindi potete assegnare la priorità (qui potete avere una bella spiegazione di cosa siano le interrupt).
Questa funzione è fondamentale, perché così potete dire a Ubuntu di usare con massima priorità la scheda audio, facendo "aspettare" tutto il resto, così eviterete ogni tipo di rallentamento, latenza e fastidiose interruzioni dell’audio mentre registrate.

Capire quali siano le interrupt assegnate alla scheda audio e assegnare le priorità degli altri driver conseguentemente è un lavoro un po’ difficile ma per fortuna c’è uno script che fa tutto automaticamente (occhio: questo script c’è già in UbuntuStudio, quindi non dovete installarlo se usate UbuntuStudio).
Lo trovate qui: http://www.rncbc.org/jack/ verso il fondo della pagina. Si chiama rtirq e ovviamente dovete scaricare il "tar.gz" più recente. Lo scompattate in una cartella, e ci andate dentro col terminale.
Solo la prima volta, lo scompattate in una cartella, e andateci dentro col terminale. Scrivete:

sudo cp ./rtirq.conf /etc/

e poi:

sudo cp ./rtirq.sh /usr/bin

Ogni volta che volete lanciarlo, scrivete:

sudo rtirq.sh start

Ovviamente lo potete disattivare così:

sudo rtirq.sh stop

Quando lo lanciate avrete una risposta simile a questa:

Setting IRQ priorities: start [rtc] irq=8 pid=851 prio=90: OK.
Setting IRQ priorities: start [snd] irq=3 pid=1175 prio=85: OK.
Setting IRQ priorities: start [uhci_hcd] irq=10 pid=1883 prio=79: OK.
Setting IRQ priorities: start [uhci_hcd] irq=11 pid=1255 prio=78: OK.
Setting IRQ priorities: start [uhci_hcd] irq=14 pid=1117 prio=77: OK.
Setting IRQ priorities: start [ehci_hcd] irq=15 pid=1147 prio=79: OK.
Setting IRQ priorities: start [i8042] irq=1 pid=844 prio=75: OK.

Questo script in sostanza ha individuato a quale IRQ è assegnato il driver della scheda audio ("snd", al di là di come si chiama effettivamente il driver) e gli ha assegnato – nell’esempio qui sopra riportato – priorità 85, dopodiché ha assegnato le priorità delle altre cose fondamentali per non far andare tutto in freeze (per esempio il timer di sistema, "rtc", ha priorità più alta).

Siccome la catena è "Il timer di sistema controlla Jack che controlla la scheda sonora che controlla i vari QSynth e Timidity", dovremo adesso impostare la priorità di Jack – seguendo l’esempio riportato or ora – tra 85 e 90 (esclusi gli estremi), e i vari QSynth e Timidity appena sotto l’ultima priorità assegnata dallo script, cioè appena sotto 75.

Impostare la priorità di Jack

A questo punto potete dire a Jack di avere un priorità appena più alta di quelle assegnate dallo script: per esempio 87. Andate quindi su Jack Control, cliccate su Options, e impostate "Priority" a 87. Riavviate Jack e noterete una risposta del sistema molto migliore, specie con il MIDI.

Impostare la priorità di Timidity

Per dare priorità a Timidity, così non farà più quell’orribie difetto di rallentare e velocizzarsi a caso, dobbiamo dire al sistema di NON caricare Timidity all’avvio e farlo partire ogni volta con una priorità da noi decisa (nel nostro esempio, 70).

Per non farlo caricare all’avvio:

sudo cp /etc/init.d/timidity /home/timidity.backup
sudo rm /etc/init.d/timidity

(eventualmente per ripristinarlo all’avvio scrivete sudo cp /home/timidity.backup /etc/init.d/timidity)

Quindi ogni volta lo fate partire così:

timidity –realtime-priority=70 -iAD -B2,8 -Os1l -s 44100

Per arrestare timidity: killall timidity (e controllate che sia veramente terminato in Sistema -> Amministrazione -> Monitor di sistema)

Impostare la priorità di QSynth

Bisogna lanciarlo da riga di comando attraverso il comando chrt (un comando che imposta le priorità dei programmi che girano sul kernel RT):

chrt -f 68 qsynth

Ho messo 68 perché così non fa conflitto con Timidity, ma se non usate Timidity potete mettere la priorità di QSynth a 70.

Appendice F – DSP plugins

Nel sempre geniale forum italiano di Ubuntu, fucina di idee e di utenti davvero appassionati, è venuto fuori che esistono questi plugin di effetti di qualità straordinaria, nativi per Linux e compatibili con Jack:http://www.linuxdsp.co.uk/.

Sono eseguibili: si lanciano direttamente facendoci doppio click sopra, o copiandoli (da aministratore) in /usr/local/bin. Suportano Jack, sono graficamente molto carini e hanno dei bei suoni.

Appendice G – Rakarrack (effetti per chitarra)

Sono effetti splendidi. All’interno c’è pure un modulo che passa da wav a MIDI in diretta (cioè: tu canti o suoni la chitarra, e il computer scrive lo spartito e salva in MIDI). Ha moltissimi preset e i suoni sono buoni (un paio sono davvero belli).
Per installarlo, abbiamo bisogno di due librerie aggiuntive:

sudo apt-get install libfltk1.1-dev libxpm-dev

Poi, entriamo nei repository di Rakarrack:

cvs -d:pserver:anonymous@rakarrack.cvs.sourceforge.net:/cvsroot/rakarrack login

Alla richiesta di password, premere invio. Quindi:

cvs -z3 -d:pserver:anonymous@rakarrack.cvs.sourceforge.net:/cvsroot/rakarrack co -P rakarrack2

A questo punto entrate nella cartella:

cd rakarrack2

E, uno dopo l’altro, diamo questi comandi:

./autogen.sh
./configure
make
sudo make install

È compatibile con Jack, quindi lo potete connettere a tutti i software che volete. Funziona molto bene anche dal vivo al posto di una pedaliera. Qui trovate anche altri preset.

Oltre a Rakarrack, un lettore (Salvo Inzerilli) ci segnala questo meraviglioso progetto: Guitarix, un amplificatore per chitarra che in futuro potrà decisamente dare del filo da torcere ad applicazioni commerciali come Amplitube2. È ancora a uno stadio piuttosto embrionale poiché mancano preset fondamentali (purtroppo i file .wav campionati dai più famosi amplificatori per modulare il timbro nelle categorie dei preset, non sono liberamente distribuibili e quindi comunque ogni amplificatore open source richiede un minimo di hacking). Se lo volete provare, sul sito di Guitarix ci sono anche i pacchetti installabili con un click per Ubuntu. Li ho testati su una Karmic e vanno benissimo. Conviene lanciarlo da solo e connetterlo con Jack, perché lanciandolo come plugin da Ardour non parte l’interfaccia grafica e non è disponibile gran parte delle funzioni. Se trovate dei bei preset segnalateli all’autore. Una piccola guida all’uso la trovate qui.

Fonte: http://sites.google.com/site/stefanodroghetti/Guide/not-to-my-havings

5 thoughts on “Produzione musicale con GNU/Linux

  1. Grazie!
    Immaginavo che fosse stata una svista. Ti ringrazio per la solerzia.
    Ottimo blog, ora mi ci iscrivo subito!

  2. You really make it seem so easy with your presentation but I
    find this matter to be really something which I
    think I would never understand. It seems too complex and extremely broad for me.
    I am looking forward for your next post, I’ll try to get the hang of it!

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...