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/
