lunes, 19 de junio de 2017

Arpégio aleatorio con alsaseq ( parte II )

En el articulo anterior, creamos un guion que generaba un arpegio aleatoriamente, que con ciertos cambios va a ser más utilizable. En vez de crear solo un arpegio, van a ser dos, uno que simule un acorde Do mayor y otro que simule un acorde Fa mayor. Por otra parte se añaden unas lineas de código que permiten interactuar con una fuente que va a disparar la ejecución de los arpegios, manteniendo la duración de cada uno de ellos igualmente en cuatro compases de 120 pulsos por minuto.

import alsaseq
import alsamidi
import time
import random

alsaseq.client('linux_jonico',1,1, True)
alsaseq.start()

arpdo=[60,62,64,67,69]
arpfa=[65,67,69,72,74]



def secuencia_arpegio(arp) :
    random.shuffle(arp)
    for i in range (8):
        for ii in range (5):
        nota=alsamidi.noteonevent(0,arp[ii],100)
        alsaseq.output(nota)
        time.sleep(0.20)
        nota=alsamidi.noteoffevent(0,arp[ii],100)
        alsaseq.output(nota)

   
   

while 1 :
   
    notaonoff=alsaseq.input()
    nof=notaonoff[7][1]
    if notaonoff[0]== 6 and nof == 48 :
        secuencia_arpegio(arpdo)
    if notaonoff[0]== 6 and nof == 53 :
        secuencia_arpegio(arpfa)
    if notaonoff[0]== 6 and nof == 59 :
        print " Programa Finalizado "
        break

   


Podemos guardar por ejemplo como arp_do_fa.py y ejecutar de la forma habitual mediante terminal ( python arp_do_fa.py ). Para utilizarlo, se puede usar cualquier secuenciador que permita conexiones midi in y midi out, en este caso yo utilizaré LMMS de la siguiente forma:

1.- Creo una pista de instrumento que va a disparar el arpegio Do o FA durante 4 compases y la conecto al midi in del servidor que hemos creado con el guión.
2.- Creo una pista de instrumento que va a reproducirlo y la conecto al midi out del servidor que hemos creado con el guión.

Silencio la pista que dispara el arpegio, y con el editor midi, creo la partitura, en este caso C3 va a disparar el arpegio Do y F3 va a disparar el arpegio Fa. La silencio porque no queremos que suene, solo que dispare el arpegio. El guión acaba cuando recibe la nota B3 o con control + c.


No hay comentarios:

Publicar un comentario

SuperCollider

    SuperCollider es una plataforma de síntesis de audio y composición algorítmica, originalmente publicado en 1996 por James McCartney, ut...