“JFugue é uma biblioteca Java em código-aberto para programar música sem as complexidades do MIDI.”
A idéia é criar músicas através de programação Java. Não se assuste com a palavra “programar”, é mais simples que isso. Manja só um exemplo:
Player player = new Player(); player.play("C D E F G A B"); // resultado
Isso vai tocar um dó-ré-mi-fá-sol-lá-si. Agora, vamos fazer o mi-fá mais rápido, transformando cada nota em colcheia (eighth):
player.play("C D Ei Fi G A B"); // resultado
Legal, agora vamos fazer um dois acordes: dó maior e fá maior:
player.play("Cmaj Fmaj"); // resultado
Hmm, tá muito rápido. Vamos transformá-los em semibreves (whole):
player.play("Cmajw Fmajw"); // resultado
Legal. Agora vamos juntar o solo e a base (Voz 0 e Voz 1):
Pattern p = new Pattern(); p.add("V0 C D Ei Fi G A B"); p.add("V1 Cmajw Fmajw"); player.play(p); // resultado
Ok, vamos ajeitar este final, colocando mais um acorde dó maior, e uma seqüência dó-ré-dó no solo. Note que colocamos a seqüência na sexta oitava (o padrão é a quinta):
Pattern p = new Pattern(); p.add("V0 C D Ei Fi G A B C6 D6 C6w"); p.add("V1 Cmajw Fmajw Cmajw"); player.play(p); // resultado
Agora, só pra ficar mais moderno-brega, vamos fazer este solo com um saxofone tenor:
Pattern p = new Pattern(); p.add("V0 I[Tenor_Sax] C D Ei Fi G A B C6 D6 C6w"); p.add("V1 Cmajw Fmajw Cmajw"); player.play(p); // resultado
Bem, a notação é bem simples e útil para escrever música. Mais interessante parece, porém, a idéia de programar músicas que se escrevem sozinhas, ou seja, gerar músicas. Músicas semi-aleatórias, músicas baseadas em padrões de outras músicas.
Vou deixar aqui dois outros exemplos, com código-fonte:
- Crab Canon por David Koelle, www.jfugue.org. Esta música de Bach é como um palíndromo. Ela é espelhada: o acompanhamento tocar a mesma melodia, só que de trás para frente. No JFugue, foi codificada apenas uma voz, e a outra foi derivada invertendo a primeira e transpondo-a para uma oitava abaixo.
- Nada, por João Del Valle. Primeira música que fiz no JFugue, para aprender o uso. É um monte de loops e notas escolhidas “estatisticamente”. A cada execução do programa, uma música diferente é gerada. Dá para você ouvir enquanto faz natação com seu iPod à prova d’água.
A biblioteca parece bastante poderosa. Ainda temos um infinito a explorar. Vá até a seção Getting Started do www.jfugue.org.
Muito show essa biblioteca!! Se eu pudesse agradeceria quem fez ela pessoalmente hehehe