Hola Enrique,

> Gracias Juan por el Patch. Qué habría que hacer para que no se
> produzca una escala cromática sino arpegios?
> 

Toca utilizar una función escalonada. Por ejemplo

Si la nota es impar --> silencio.
Si la nota es par   --> suena.

Pero hay un método mejor que de pronto en Pd no es tan fácil de
implementar. 

Basándose en los modos musicales de mayor, menor, etc, deduces cuales
son las posiciones de la nota en la escala. Por ejemplo utilizando el
acorde mayor en el tónico, se que el arpeggio en su versión raíz, esta
conformado por alturas en el tónico, mediante y dominante. En
castellano, la primera nota de la escala, la tercera y la quinta. 

Si tomamos la escala de Do mayor, en notas MIDI, partiendo del Do
central, tenemos que la primera nota es 60, la tercera 64 y la quinta
67. La octava es 72.

Para establecer una formula o patrón, entre la tercera y la primera hay
una diferencia de cuatro y entre la quinta y la primera hay una
diferencia de siete. Por lo que puedo establecer que a partir de una
tónica, al sumar cuatro y siete encuentro los intervalos del arpeggio
mayor.

En notas MIDI todos los DO son divisibles por 12. Esto significa que con
el operador modulo '%' o la función de MOD, puedo construir una función
escalonada que me detecte todos los DOs. 

Para construir la función escalonada utilizo condicionales como IF,
CASE, SWITCH, etc, y en Pd, [select]. La clave es que 60%12 o,
mod(60,12) dan cero porque 60 es divisible por 12. Igualmente 48%12 da
cero pero 64%12 no da cero. Por lo tanto el condicional puede ser 
 (if midinote%12 == 0,)

Con la formula del acorde TONICA, TONICA+4, TONICA+7, podría hacer el
arpeggio partiendo de los DO's de las notas MIDI.

El problema del generador en tiempo real con restricciones de este tipo
es que obviamente el ritmo no va a ser equivalente en todas las notas,
por lo que habría que compensar con [delays]. Sin embargo es claro que
se puede utilizar para llenar arreglos para que estos si suenen en
tiempo real.

También pienso que al afinar un algoritmo de esta forma, el ingenio y la
creatividad del compositor, juega un papel crucial.

Saludos,

  --* Juan  

_______________________________________________

Expyezp mailing list
[email protected]
http://lists.slow.tk/listinfo.cgi/expyezp-slow.tk

Archivo de mensajes:
http://lists.slow.tk/pipermail/expyezp-slow.tk/

Responder a