Archive

Posts Tagged ‘yarmi’

El diseño actual de YARMI

julio 13, 2011 Deja un comentario

Luego de meses de desarrollo estamos llegando a la etapa final del proyecto. YARMI es ahora una aplicación funcional, con un conjunto de características interesante, pero que podrá expandirse mucho más en un futuro. Con el fin de cerrar la tesis de grado de nuestra carrera, fue necesario precisar y congelar este conjunto de características, a pesar de la gran cantidad de mejoras e ideas nuevas que quedaron pendientes. A continuación describiremos su funcionamiento actual. El texto fue extraído de el paper que presentaremos al evento AES LAC 2011 que tendrá lugar en Montevideo, Uruguay a fines de Agosto de este año.

 

El instrumento

El instrumento consta de una o varias estaciones. Una estación consiste en una superficie de trabajo, un conjunto de fichas de madera, una cámara, una computadora y, potencialmente, un proyector. Cada estación es operada por uno o varios músicos interactuando con ella por medio de sus interfaces tangible y visual.

El instrumento musical es colaborativo tanto dentro de una misma estación –debido a que las fichas pueden ser manipuladas por más de una persona– como al formar la red de estaciones: el instrumento puede mantenerse en comunicación con otras instancias cercanas para hacer música en conjunto, de una forma coherente.

 

La interfaz tangible y la salida visual

La interfaz tangible está formada por un conjunto de fichas de madera (tokens) con marcadores visuales reconocibles por el sistema (fiducials) pegados en una de sus caras y símbolos identificables por un ser humano en la otra. Estas fichas son manipuladas por el músico, y su ubicación y rotación dentro del espacio de trabajo son captadas por el sistema mediante una cámara.

La salida visual de la interfaz se construye en base a la información recibida a través de la interfaz tangible, y puede proyectarse sobre una superficie grande, visible tanto para el músico como para la audiencia.

En la superficie de trabajo se presentan distintos secuenciadores musicales –que llamamos pistas– y máquinas de efectos de sonido de tiempo real, que serán operadas por los músicos para generar la salida de audio esperada, en sincronía con la de los músicos de las demás estaciones.

 

Pistas

YARMI cuenta con dos tipos de pistas, que se crean utilizando dos tokens particulares: con la rotación del StartToken se selecciona el tipo de pista deseada y cuando un EndToken aparece en el área de trabajo, la nueva pista se crea.

Las pistas representan un compás de cuatro pulsos (o beats), que pueden subdividirse en hasta cuatro partes –modificando el parámetro de cuantización, mediante la rotación del EndToken– transformándola en un secuenciador de dieciseis pulsos.

Moviendo sus tokens de comienzo y fin, una pista puede reposicionarse en el área de trabajo. También puede colapsarse sobre un StartToken; esto es, llevarse a un estado en el que el área que ocupa es mucho menor y con solo ocultar o volver a mostrar el token, la pista detiene o reinicia su reproducción, proveyendo de esta forma un método de secuenciación manual.

La forma de componer sobre una pista depende de su tipo. Una pista de muestras funciona colocando SampleBankTokens –esto es, tokens que representan bancos de muestras– en sus ranuras. Con la rotación de cada uno de estos tokens se modifica la altura tonal de la muestra seleccionada, mientras que con ayuda del SelectorToken –que se mencionará más adelante– se elige la muestra a reproducir.

Una pista de sintetizador funciona con la ayuda de tres tokens adicionales, que permiten al músico asignar una nota particular a cada ranura, o eliminarla. El sonido generado por esta pista es básico: una onda de diente de sierra con una envolvente de amplitud predeterminada. Sin embargo, con ayuda del MIDIToken puede hacer que su salida se redirija por un canal MIDI para poder ser interpretada por un software externo.

Finalmente, las pistas pueden ser eliminadas utilizando el DropToken.

 

Loops

El instrumento soporta la secuenciación continua y en bucle de un tipo particular de muestras, llamadas loops. Éstas son generalmente piezas rítmicas pregrabadas a una velocidad (BPM) particular, que se extienden sobre una cantidad determinada de compases.

Un LoopBankToken contiene un banco de loops previamente configurado. Con solo colocarlo sobre la mesa, la reproducción del primer loop del banco comienza. La selección del loop y de la altura tonal con el que este se reproducirá se realiza de la misma manera que para un SampleBankToken.

Gráficamente, un token de loop es muy similar al de una pista colapsada, permitiendo que la secuenciación de ambos tipos de construcciones se pueda realizar intuitivamente mediante el mismo mecanismo.

 

Control

No se ha mencionado hasta ahora una funcionalidad importante del instrumento: la capacidad de detener o reanudar la composición completa de la estación utilizando un token algo particular –un token con un fiducial de cada lado– que según la cara que muestre a la cámara, ejecutará uno u otro comando.

Otro token importante es el BPMToken, que controla la velocidad de reproducción de la composición entera: tanto pistas como loops ajustan en todo momento su velocidad de reproducción al valor que este token modifica.

Antes de introducir el próximo token, es necesario introducir el concepto de acoplabilidad, la capacidad de un token de asociarse a un objeto particular de la interfaz para afectarlo de una u otra manera.

El VolumeToken controla con su rotación –en su modo de funcionamiento normal– el volumen general de la estación. Sin embargo, este token puede también acoplarse a pistas, tokens de loops y tokens individuales dentro de una pista de muestras para cambiar volúmenes específicos.

Por último, existe además un token similar al anterior que permite controlar el balance estéreo de la salida de audio general.

 

Efectos

Los EffectTokens son tokens que pueden ser acoplados tanto a pistas como a tokens de loop para modificar la salida de audio que estos objetos generan. Si el token no está acoplado a ningún objeto, la salida de audio que se ve afectada es la global de la estación.

Actualmente están soportados tres tipos de efectos: reverb, tremolo y delay. Una vez que el token de efecto está en el área de trabajo, mediante su rotación y con la ayuda del SelectorToken pueden modificarse –con resultados en tiempo real– sus parámetros.

 

Herramientas

Si bien hasta ahora no se ha mencionado explícitamente, varias de las funcionalidades descritas utilizan el concepto de dimensión: un parámetro que ciertos tipos de tokens –los tokens dimensionables– poseen y que toma un valor dentro de un conjunto discreto de posibilidades (que varía de token a token) y según el cual modifican su comportamiento de alguna u otra forma.

El SelectorToken permite, mediante el mecanismo de acoplamiento combinado con su propia rotación, modificar la dimensión seleccionada en un token.

Los tokens dimensionables son: SampleBankToken, LoopBankToken y EffectToken. A todos ellos puede acoplarse el SelectorToken para modificar su dimensión seleccionada –que para los dos primeros es la muestra seleccionada y para el último, el parámetro del efecto que la rotación del token original modifica.

 

Características de red

Como se mencionó anteriormente, el instrumento tiene la capacidad de funcionar en conjunto con otras estaciones YARMI en forma coherente.

En este escenario, la estación líder –la última estación que haya puesto el LeaderToken sobre su mesa– tiene el control sobre la producción musical global, pudiendo decidir cuando ésta se detiene o reinicia, y especificando parámetros como el volumen general, BPM y el balance estéreo.

 

 

Esto es todo por ahora. En breve publicaremos videos del instrumento en acción, reseñas sobre la implementación de la aplicación e ideas o características que podremos seguir trabajando en un futuro.

Categorías:Diseño Etiquetas: , ,