jueves, 15 de abril de 2010

Automatízame un poco, por favor…

 
Hacía unos cuantos días que no me pasaba por este barrio. Confieso que a veces me cuesta “environear”, normalmente después de preguntarme para qué servirá semejante esfuerzo. Aún así, todavía no me he caído: sigo teniendo la esperanza de aunar todas las ideas acerca de REQUIEM y lograr terminarlo.

Hoy toca hablar de las automatizaciones, esto es, poder grabar y reproducir cambios en los controles del interface de usuario. Logic tiene un excelente sistema de automatizaciones, al igual que Cubase, Reason (en menor medida) y la mayoría de secuenciadores de audio y/o MIDI. ¿Y REQUIEM? (dejando a un lado sus potentes 6 LFOs)

Primero veamos en qué consiste un sistema de automatización: se trata de pistas especiales en las que podemos grabar cambios en los controles. Esos datos pueden grabarse de diversos modos: al tocar el fader deseado y moverlo, reemplazando datos existentes, incrementando o reduciendo la automatización existente, etc… La edición suele ser gráfica en forma de curvas o bien en forma de lista (como una lista de eventos). Técnicamente hablando es algo tan sencillo como ir grabando a cierta resolución los cambios en los controles.

¿Cómo se implementa todo esto en un environment para Logic? Lo primero a resolver es cómo grabar esos datos y a qué resolución hacerlo. Es decir, en un compás, ¿cuántos eventos de automatización podremos grabar?, ¿y durante cuantos compases? No valen las respuestas como “a la máxima resolución” y “durante infinitos compases”. REQUIEM es un environment y cuenta con serias limitaciones… 8000 objetos (en la versión 5.5 de Logic, desconozco cual es ese limite en la versión actual) y un ancho de banda de proceso muy reducido (no pretendas procesar 200 streams de datos a través de 200 objetos de forma simultánea…)

Usando el elemento clave en cuanto a construcción de memorias en E-Code, el objeto Transformador, podemos memorizar 128 eventos de automatización. Eso nos podría valer para una resolución de 1/128, es decir, 128 eventos en cada compás. Pero si quiero poder grabar durante 100 compases, deberé usar 100 Transformadores. ¡Y esto sólo para un control en pantalla, imagina si deseamos automatizar 10 controles!

Lógicamente este método no nos vale, hay que reducir la resolución interna. Usando una resolución de 1/32, es decir, 32 eventos de automatización por compás, podemos usar un Transformador para memorizar 4 compases (4 x 32 = 128). Y encadenando más Transformadores, podemos cubrir fácilmente 500 compases. En este caso necesitaríamos 125 objetos Transformadores. Esos Transformadores deberían ir conmutándose entre sí, por ejemplo, al llegar al compás 5 sería el segundo Transformador el que actuaría, al llegar al compás 9, sería el tercero y así sucesivamente. Y lo mejor… se podrían empaquetar esos 125 Transformadores en un par de objetos Macro, convirtiéndolos en ¡2 únicos objetos!

¿Qué podríamos automatizar en REQUIEM?

La idea es poder grabar y reproducir cualquier control de síntesis o control de estado (eso es sencillo), pero lo difícil es hacerlo con todos simultáneamente: harían falta cientos de Macros como la anteriormente citada. Creo que lo mejor es ofrecer varias pistas de automatización, y que sea el usuario el que indique qué control grabará en cada una de ellas. Inicialmente la idea es probar con 4 pistas de 500 compases cada una, con una resolución de 1/32. Esto puede verse limitado por “todas las otras tareas de REQUIEM”, es decir, las 9 pistas de ritmos, las 8 pistas solistas, los LFOs y el manejo del interface de usuario… es decir, ¡el famoso ancho de banda!

Si el rendimiento fuera óptimo, probaría con 8 pistas de automatización (duplicando lo anterior). Con 8 pistas ya es posible efectuar buenas mezclas y efectos de producción. Por otro lado, el sistema de automatización no podría tener edición gráfica, y en caso de tener edición numérica (en forma de lista), su programación sería terriblemente compleja (debería extraer los datos grabados en cada Transformador según la posición de reproducción de la canción). Además, funciones tipo “Copy”, “Paste” serían realmente imposibles de lograr… ¿Cómo copiar un rango de datos de automatización que se ha grabado al final de un Transformador continuando en el inicio del siguiente? Creo que para tratarse de un environment, el simple hecho de poder grabar y reproducir, enmudecer, escalar o reducir la automatización ya es un logro, así que con eso ya me daría por satisfecho.

Como siempre, el tiempo dirá…

No hay comentarios:

Publicar un comentario