lunedì 21 novembre 2011

Quando il programmatore è anche musicista... MMA!

Una delle esigenze più comuni per i poveri mortali che gettano ore del proprio tempo libero nello studio di uno strumento musicale è avere a disposizione delle basi su cui suonare. Uno si studia un lick, ci si esercita a bocce ferme, cioè suonandolo solo sul proprio strumento, arriva a padroneggiarlo e poi, quando anche il metronomo gli da ragione, avrebbe ben piacere di sentire l'effetto che fa se suonato su un accompagnamento. Sacrosanto.

Ebbene, mi sono trovato spesso nella situazione ma ho sempre dribblato il problema vuoi con la band (complicato...), vuoi con veloci registrazioni di me stesso su una drum machine (macchinoso e poco scalabile... cambio accordi? cambio velocità?), vuoi arrangiandomi con qualche mezzo di fortuna, come editare accordi su un software per tabulazioni come PowerTab (uff...).

Ieri, complice una domenica nebbiosa e pigra, non avevo voglia di fare nulla di tutto ciò, solo di suonare il mio dannato lick su una base. E allora Google. E scopro che un settore di software apparentemente banale è in realtà pieno di applicazioni commerciali e di pochissimo free. Già mi prudevano le mani e nasceva l'idea per un progetto, quando mi sono imbattuto (per fortuna) in questo MMA: Musical MIDI Accompaniment.

E' in python, quindi portabile su diverse piattaforme. Per l'occasione navigavo con una macchina Windows, ma al più presto lo installerò anche sulla mia Fedora. Cercavo il modo quick and dirty per fare quel che mi serviva e... beh, più quick e, soprattutto, più dirty sarebbe stato difficile trovare!

MMA è software per un programmatore. Editare la propria base è proprio come scrivere un programma, e l'editor in sé è niente più che un editor di testo. Esatto, potete scrivere la vostra base anche con gedit, o notepad, proprio come fosse un listato C. Poi, tra le (poche) voci di menu che mi trovo? Build, naturalmente. Il risultato della build è un midi.

Ecco un esempio di base:

Tempo 120
Groove Tango

1  C
2  F
3  G7
4  C  / Em
5  C
6  /
7  F
8  C

L'impatto è stato un po' una sorpresa, un po' un ritrovarsi a casa propria, come potete immaginare. Per un programmatore nulla di più intuitivo che scrivere codice, fare build e verificare il risultato. Rimane da capire se anche gli utenti non del mestiere si trovino bene con questa modalità operativa.

Per quanto mi riguarda, un software assolutamente da segnalare! E ora scusatemi, ho dei fraseggi da debuggare...

Nessun commento:

Posta un commento