lunes, 13 de septiembre de 2010

Controlar NI Traktor con un iPad.

Bueno. Tras recorrer la web buscando, la verdad es que lo mejor que he visto es de pago, y francamente, no me convence demasiado.
Personalmente considero que los productos comerciales han de ser sólidos como rocas y estar muy bien diseñados. Más aún cuando se trata de algo tan crítico como controlar usa sesión de dj, donde los errores deben ser los del dj, no los del sistema. La solución Control1 de NI es un ejemplo de excelencia.
Pero aqui hablamos de algo diferente.

Actualmente estoy embarcado en un proyecto personal con el que pretendo controlar totalmente a Traktor mediante un iPad, implementando los flujos de trabajo de un DJ durante una sesión.
Pretendo realizarlo utilizando software libre, y por supuesto, una vez terminado, poner el resultado a la libre disposición de toda la comunidad.

Este proyecto tiene dos aspectos: (1) Determinar los flujos de trabajo a implementar. (2) Resolver la comunicación entre iPad y Traktor y viceversa.
Respecto al primer aspecto, tengo algunas ideas, procedentes de mi modesta experiencia en el "controlerismo" y el djing, que me han llevado a determinar 6 áreas de control (que se traducen en "pantallas tactiles" en el iPad). Estas áreas serían:
  • Control de los platos A y B
  • Control de los platos C y D
  • Busqueda, carga, localización y "cue point settings", de canciones
  • Control de los 4 platos
  • Gestión de efectos
  • Scratching
Sobre estas áreas estoy abierto a cualquier sugerencia. Las tengo bastante desarrolladas, pero la ayuda de gente más experta en djing será bienvenida. Pronto mostrare, aqui mismo, imágenes de cada pantalla para poder recibir comentarios al respecto.

Lo referente al sistema de base, sobre el que desarrollar la solución, ha requerido un proceso de selección sobre cuyos resultados agradeceré cualquier comentario o sugerencia.

En principio, NI decidió que el protocolo de mensajeria desde y hacia Traktor fuera MIDI. Nada que decir, es universal.
Por otro lado, hace falta una manera de "pintar" controles en la pantalla del iPad, y hacer que estos envien mensajes midi a Traktor.
Afortunadamente existe una aplicación llamada touchOSC para iPad (disponible en app store), que no solo "pinta" controles si no que ademas hace que envíen y reciban mensajes al pc/mac usando el protocolo OSC, de forma inalambrica!!!
Para transformar los mensajes OSC a MIDI, y viceversa, existe una opción de software libre llamada pure data. Se ejecuta en el mismo ordenador que Traktor. 
Es un entorno similar a MAX (progenitores comunes) . La pega, o no, es que se trata de un lenguaje de programación no estructurado. Dispone de una interfase gárafica para definir objetos y explicarles que deben hacer con los datos OSC y MIDI que reciban. Eso quiere decir que para cada objeto (botón, fader, etc) que se diseñe en touchOSC (la parte iPad de la solución), debe crearse y programarse un objeto en pure data (la parte pc/mac).
Digo esto porque si me proponeis alternativas, estas deben ser "cojonudas". Pensad que las 6 áreas / pantallas tienen entre todas mas de 300 objetos definidos (de momento). 300 en touchOSC, 300 en pure data, 300 parametros de control externo de Traktor, poca broma.

Actualmente estoy acabando la parte pure data de la solución, en la que trato de que solucionar temas del tipo realimentación, escalado, y broadcast. Para que por ejemplo los faders no "salten" ni en Traktor ni en Ipad. Ver saltar un fader, cada vez que lo tocas, es muy desagradable y no permite un control muy preciso que se diga.
Si hay algún experto en pure data entre el público, que levante la mano. Yo mientras continuo estudiando la documentación y haciendo pruebas.

Como decía antes, en breve mostrare capturas de las 6 pantallas diseñadas en touchOSC.
Espero vuestra ayuda y comentarios.

Y mientras termino el trabajo, os adelanto una plantilla pure data modificada con los trucos que he ido aprendiendo. Espero que os sea util.

4 comentarios:

  1. ...

    Muy interesante y cuenta con toda mi ayuda y apoyo aunque eso de que nadie lo ha dicho ni plasmado...

    http://www.youtube.com/watch?v=S8izg3jHIfI

    luthier(punto)lab(arroba)gmail(punto)com

    Espero un mail tuyo de contacto.

    ;)

    ...

    ResponderEliminar
  2. gracias Mudo
    Lo de que nadie lo habia dicho ni plasmado, es con referencia a las soluciones y "trucos". Todos sabemos lo que cuesta encontrarlos...
    Para cuando leas esto podras ver publicadas las pantallas de control que he diseñado (de momento los jpg).

    ResponderEliminar
  3. Encomiable el curro; gracias. Una pregunta tonta ¿los auriculares para la preescucha de los temas? Otra cosa: yo me dedico al tema visuales y he preparado varias plantillas para Resolume Avenue, por si alguien está interesado. Gracias de nuevo.

    ResponderEliminar
  4. Hello Great work I have been looking into the sending Messages back from traktor into the iPad using the SendOSC i was wondering if you can email the sample PureData file pictured above. MoyaDJ at gmail dot com

    ResponderEliminar