jueves, 31 de diciembre de 2009

¿Qué es REQUIEM Environment?


Cualquier producto que no pueda ser definido en pocas palabras es un mal producto (comercialmente hablando) así que voy a tratar de hacerlo lo mejor posible.

REQUIEM es una groovebox interactiva programada completamente usando objetos del Environment.

Ampliando la definición anterior, REQUIEM no es un sencillo secuenciador conectado a un sintetizador, sino que es una completa estación de trabajo rítmica y melódica para generar paisajes sonoros tipo chill-out o complejas atmósferas sintéticas repletas de movimiento.

Su estructura consta de 8 partes melódicas (8 pistas) y 1 parte rítmica (con 8 pistas más). Cada parte melódica (o sintética, si así lo prefieres) consta de un sintetizador independiente con una sección de síntesis completa con 128 memorias Preset, una sección de modulación con 4 fuentes y 4 destinos (también gestionada por 128 memorias Preset, una sección de efectos con 128 memorias Preset y una sección de patrones con 128 memorias para patrones. El sintetizador puede ser seleccionado por el usuario: un ES-P o un ES-M.

La sección de patrones consta de 5 pasos en los que es posible definir qué frase musical va a sonar (de 128 que pueden ser grabadas por el usuario) y cuantas veces se repetirá antes de proceder con el patrón del siguiente paso. Cada frase consta de una resolución de 1/16, y almacena los números de nota, velocidades de pulsación y duraciones de nota. Es posible grabar las frases a tempo real tocando desde el teclado, paso-a-paso vía MIDI, o en pantalla con el interface de usuario.

Todas estas secciones con memorias conforman una Scene. Cuando el usuario selecciona una Scene (de 128 existentes en cada parte melódica), automáticamente se selecciona el preset de sonido, preset de modulación asignado, preset de efectos y preset de patrones. Las Scenes se pueden encadenar en el modo Song o alternativamente ser disparadas vía notas MIDI (para interpretaciones en directo). Además cada Scene selecciona la configuración de los moduladores, formada por 6 LFOs “normales”, 2 LFOs circulares y algo llamado Arkanoid LFO (una paranoia que genera modulaciones partiendo de los rebotes de una pelota virtual en una sala virtual).

Cada Scene puede ser transportada musicalmente siguiendo el tono de la pista de acordes, o a tiempo real mediante el motor reconocimiento de acordes de REQUIEM (al más puro estilo “Casiotone”, este motor aun está en fase previa y con varios problemas graves que deben solucionarse, como la latencia generada)

Técnicamente REQUIEM emplea dos capas de datos: los datos reales que son enviados a los sintetizadores de cada parte y los datos mostrados al usuario en el interface de usuario (GUI). Este segundo flujo de datos va retrasado expresamente respecto al primero para no generar retardos en la señal real, El retardo es mínimo e imperceptible para el usuario, y sólo afecta a los datos visuales.

NOTA: La parte rítmica todavía no ha sido desarrollada, pero constará de 128 patrones con 8 pistas y una resolución de 1/32.


Estado del proyecto

Actualmente hay programada la parte melódica con todo el interface de usuario funcionando y en estado de pruebas. Desafortunadamente hay varios problemas de visualización que voy resolviendo uno a uno.

miércoles, 30 de diciembre de 2009

¡Bienvenido a este rincón de sabiduría Lógica!


Si has llegado hasta aquí posiblemente sea por una de estas tres posibilidades:
  1. Eres usuario de Logic / Logic Pro y odias el Environment (¡me niego a llamarlo “Entorno”!)
  2. Eres usuario de Logic / Logic Pro y te encanta el Environment (sigo negándome a llamarlo “Entorno”…)
  3. Te has perdido completamente entre las olas del océano binario de la red…


Este blog no será una masterclass de Environment, sino que expondré la creación de un mega-Environment de programación muy avanzada (macros, alias, metas y otras cosillas muy simpáticas…) Mis tiempos de “doctor especializado” acabaron cuando mis obras circularon impunemente por las peer-to-peer y dejé de poder ganarme la vida vendiendo mis conocimientos (y con perdón, que no son pocos…)

Pero seamos positivos, ¡he vuelto! Dejé de programar Environments hace más de 4 años. Gracias a una buena terapia de grupo tipo “freakys unidos jamás serán vencidos” he decidido acabar lo que comencé, y no sólo esto, sino continuar mucho más allá. Lo genial de este mundo es que da cabida para todo tipo de locuras: creer que la Tierra sigue siendo un disco plano (efectivamente, y con foro incluido para debatir acerca de ello) o programar aplicaciones musicales usando el Environment. Observa que empleo el vocablo “aplicaciones”, esto es programas completamente funcionales usando únicamente el Environment, y cuyo resultado musical puede exportarse al secuenciador de Logic en tiempo real.

(Nota mental: “no me cree… deberás mostrarle algo…”)


Ok, hablemos de ello. El primer gráfico pertenece a SOPHY, mi niña bonita. Básicamente es un secuenciador de 8 pistas melódicas y 8 pistas rítmicas, cada una de ellas con 128 patrones (cuyos datos se almacenan en el Environment, no en Logic), con modo canción, 8 LFOs asignables, modulación interna, funciones de edición (copiar, pegar patrones, etc…), exportación a Logic y un montón de prestaciones más (128 presets de parámetros de síntesis para cada pista, mezclador con 128 escenas, etc…) Es del año 2002 (madre mía cómo pasa el tiempo) y tuve el placer de mostrárselo directamente a Gerhard Lengeling de Emagic en su propia sede. ¡8000 objetos!


Este segundo gráfico es el proyecto MOODY, un “Environment-dentro del-Environment”. Se trata de un conjunto de más de 70 módulos altamente funcionales para la creación de un sintetizador modular tipo groove-box, integrando distinto hardware externo como si fuera una única entidad. LFOs con memorias, secuenciadores con 128 patrones, generadores de rampas en los que puedes dibujar tus propias curvas, transformaciones, controles remotos, monitores… todo en formato Macro.


El tercer gráfico no es un proyecto, sino un experimento. Quise crear el genial interface gráfico del desaparecido Rebirth (Propellerhedas) en forma de Environment. El resultado es cuanto menos curioso, pero más allá no hay nada más: ni motor de datos ni interacción con el usuario.


¿Qué es una “aplicación musical completa diseñada únicamente el Environment”?

Afortunadamente todavía quedan usuarios con inquietudes a los que el Environment les susurra. Hay excelentes ejemplos de lo que es capaz de ofrecer esta mágica ventana a la programación que nos ofrece Logic. En el proyecto REQUIEM Environment las características especiales que le otorgan el estado de “aplicación musical completa” son las siguientes:

  • Interface de usuario: Contiene menús superiores como los de cualquier aplicación, con funciones de copiar, cortar y pegar para cada área de la aplicación. La visualización de los valores de los parámetros es dinámica, empleando unas pocas pantallas. La ruta de los eventos es independiente para “lo que está sonando” y para “lo que se está viendo”, es decir, hay dos capas de programación que interactúan: la que soporta los datos reales salientes de la programación y la ruta con la representación visual de esos datos para el usuario.
  • Memoria interna!: REQUIEM almacena todos los datos en los objetos que lo conforman por lo que Logic es usado tan sólo como reloj. La capacidad de memoria de REQUIEM es asombrosa: 128 patrones de 16 notas cada uno (con velocidades y duraciones) + 128 memorias de parámetros de síntesis (para sintetizadores ES-E / ES-M / ES-P) + 128 memorias de efectos (5 plug-ins con todos sus parámetros) + 128 memorias de modulaciones (matriz de 4 destinos de modulación con ancho de banda de modulación y corrección de modulación), todo ello multiplicado por 8. Dicho de otra forma, cada uno de los 8 dispositivos virtuales de REQUIEM almacena todo lo anterior.
  • La experiencia de uso debe ser tan sólida como la de cualquier aplicación: el objetivo es lograr que el usuario olvide que está usando un Environment.


¿Es posible lograrlo?...

Por cierto, sigo usando Logic 5.5 (con licencia y su XS Key, por supuesto) en versión Windows. No he cambiado a Mac para poder usar el flamante Logic Pro 9. Los motivos son varios, posiblemente algún día los comente. Digo esto porque los gráficos que verás son de la versión Logic 5.5.1 PC.

¡Larga vida al Environment!

(Hasta la próxima amigo…)