Software libero per fare musica

Il software che abbiamo visto finora (per scrivere, per calcolare, per disegnare e per gestire dati) utilizza, del computer, le memorie (ROM per accedere al software e per memorizzare i risultati, RAM per avere a portata di mano quanto necessario alle elaborazioni), il microprocessore o CPU (per eseguire le elaborazioni), la tastiera (per immettere i dati e le istruzioni necessari per le elaborazioni) e lo schermo (che, grazie alla scheda grafica, ci fa vedere cosa stiamo combinando). Il computer è sempre stato zitto.
Ma il computer può anche emettere suono, addirittura può generarlo.
Fino a qualche po’ di anni fa si trattava di gracchianti bip e, per produrre suoni degni di tale nome occorrevano apparecchiature esterne collegate al computer, come sintetizzatori, schede audio, ecc. Oggi, anche un portatile di fascia medio bassa ha una scheda audio integrata in un chip della scheda madre, grazie alla quale si possono generare e riprodurre suoni di elevata qualità, soprattutto se, per riprodurli, non ci si accontenta delle altoparlantine del computer ma si danno in pasto a sistemi di altoparlanti surround attraverso l’uscita che ogni computer offre in favore di uno spinottino jack (in genere lo stesso che si usa per le cuffie). Ovviamente, per risultati di elevata professionalità, si procede ancora con l’ausilio di apparecchiature esterne: ma si può ormai fare parecchio anche con il portatile di casa solo e nudo.
Il compito della scheda audio è quello di convertire segnali digitali in segnali analogici o viceversa. A volte immettiamo nel computer un segnale analogico attraverso un microfono inserito in una presa jack del computer o attraverso un cavetto con jack da inserire nella stessa presa o in una presa line-in dedicata: in questo caso la scheda audio trasforma il segnale analogico ricevuto dall’esterno in segnale digitale. Altre volte immettiamo nel computer un segnale digitale, contenuto in un file audio memorizzato sull’hard disk del computer, o su una chiavetta USB, o su un CD audio e la scheda audio lo converte in analogico in favore del sistema di altoparlanti interno o esterno che lo riproduce.
In tutti questi casi, però, il computer converte suoni, rappresentati in vario modo, da un tipo all’altro, ma non li crea lui, li riproduce soltanto. Esiste software per gestire questa riproduzione, per memorizzare e trovare al momento opportuno il brano musicale da riprodurre, per convertire lo stesso formato digitale in tanti modi, per trattare, cioè un suono già prodotto. Ma ci occuperemo di queste cose in altra sede.
In questo articolo, invece, ci occuperemo di software attraverso il quale è il computer che genera il suono e il nostro compito è quello di “dire” al computer quale suono generare, con quale timbro, per quale durata, ecc. fino a creare un vero e proprio brano musicale polifonico; brano musicale che potrà venire semplicemente suonato dal computer o registrato, con i suoni generati dal computer, in un file audio da memorizzare in formato digitale sull’hard disk, su una chiavetta USB o su un CD audio, come se fosse un suono generato da un complesso musicale e registrato.
Lo strumento con cui “diciamo” al computer quale suono generare, con quale timbro, per quale durata, ecc. è il file MIDI.
MIDI è l’acronimo di Musical Instruments Digital Interface (Interfaccia Digitale per Strumenti Musicali) ed è un protocollo standard creato affinché strumenti musicali, elettronici e non, sintetizzatori generatori di suoni elettronici, schede audio, ecc. possano intendersi tra loro.
L’elemento atomico del file MIDI è il messaggio MIDI, composto da due o più byte, uno dei quali si chiama byte di stato e gli altri sono byte di dati. Il byte di stato è il primo che legge il computer e, a seconda della sua natura, il computer si appresta a ricevere e interpretare i byte di dati: se il byte di stato è del genere note on (ti sto mandando una nota e ti indico su quale dei 16 canali MIDI ti arriverà), il computer si appresta a ricevere due byte di dati, uno che indica l’altezza della nota (il Do centrale ha il valore 60, in binario 00111100) e uno che indica la forza (velocity) con cui la nota deve suonare (da poco più di 0, che sta per pianissimo a 127, che sta per fortissimo); se il byte di stato è del genere control change (con quale espressione, con quale volume, in quale posizione stereofonica, ecc. devi far sentire il suono), il computer si appresta a ricevere quattro byte di dati con codificate tutte queste belle cose; se il byte di stato è del genere program change (che timbro devi usare per generare il suono), il computer si appresta a ricevere un byte di dati indicante in codice lo strumento musicale (il pianoforte classico ha il valore 0, la chitarra classica ha il valore 24, la tromba ha il valore 56, ecc. ovviamente espressi in binario). Ovviamente nel file MIDI, su ciascun canale, i messaggi control change e program change sono validi fino a nuovo avviso e, al limite, possono essere presenti nel file una sola volta, mentre i messaggi note on sono quelli che fanno la parte del leone e ce ne saranno tanti quante sono le note da suonare.
Quando il computer riceve il codice dello strumento col cui timbro gli si chiede di generare il suono, in mancanza di meglio va a consultare la tavola sonora aggregata alla scheda audio e preleva da lì il suono da passare alla scheda audio. La tavola sonora è un insieme di suoni prodotti per sintesi ad imitazione del suono dei vari strumenti musicali (128, codificati da 0 a 127) ed è costruita in modo da occupare il meno spazio possibile (sappiamo che la registrazione del suono digitale occupa molto spazio).
Se lasciamo al computer di pescare i suoni dalla tavola sonora otteniamo risultati mediocri: si sente benissimo che i suoni sono finti.
Con i moderni computer, dove il problema di spazio di memoria sul disco rigido è molto relativo, possiamo caricare i così detti sound fonts, che sono degli spezzoni di registrazioni da strumenti veri, effettuate a diverse altezze, da cui il computer può attingere il timbro dello strumento in modo sempre più realistico che non dalla tavola sonora. Una buona raccolta di sound fonts potrà occupare mezzo Giga sul disco, cosa che nei computer moderni fa ridere, e darci la possibilità di ottenere suoni che possono anche non risultare più così finti.
Se poi evitiamo le parti solistiche, che sono le più impegnative da realizzare per le sfumature espressive che dovrebbero avere, e ci limitiamo ad accompagnamento ritmico e a qualche svolazzo di controcanto, possiamo ottenere risultati veramente notevoli: non per nulla le basi per karaoke sono quasi sempre realizzate e conservate su file MIDI, anche per un fatto di portabilità, di scambio veloce con posta elettronica e di velocità di download da Internet. Infatti il file MIDI, rispetto ad un file audio, occupa uno spazio veramente insignificante: contiene, infatti, non suoni digitalizzati ma caratteri in codice binario. Un file MIDI che contiene una canzone abbastanza elaborata difficilmente supera i 30 kB, quando la stessa canzone, su file audio non compresso, arriva tranquillamente a 30 MB (cioè 1.000 volte tanto). La differenza è che il file MIDI contiene istruzioni per costruire un suono, ma il suono non c’è, mentre il file audio contiene suono digitalizzato.
Fatta questa premessa, con la quale spero si sia capito qualche cosa su come si possa far fare musica a un computer, non ci resta che passare in rassegna quali programmi ci offra il mondo del software libero per questo scopo.
Le applicazioni che ho selezionato sono descritte nell’allegato file in formato PDF, scaricabile e stampabile, che contiene tutte le indicazioni per capire a cosa serve ciascun programma presentato, come possiamo procurarcelo e com’è il suo funzionamento di base.
I software presentati sono disponibili anche per i sistemi operativi Windows e OS X.
Per scaricare il file clicca sul suo nome qui sotto.

musica_suono