miércoles, 2 de mayo de 2012

Interfaz gráfica de usuario 1: primera aproximación

Para hacer que todos los módulos que vamos a incluir en nuestro software confluyan de forma eficiente y que el músico pueda usar nuestro software más intuitivamente, necesitamos dotar a nuestro programa de una interfaz gráfica de usuario.
Interfaz de usuario de ArduinoSynth: primera aproximación
Pure Data es un lenguaje de programación potente que permite, además de procesar flujos de datos y de audio fácilmente, crear interfaces visuales con paneles, botones, sliders y demás controladores que modulan el comportamiento de los demás objetos del programa.
Además de la carátula del módulo sintetizador que ya trae el ‘polywavesynth’, diseñamos la base de una interfaz completa con los siguientes elementos:

  • Subsistema de comunicación con Arduino En él podemos abrir y cerrar comunicación con el puerto serie correspondiente, activar o desactivar la ejecución del módulo de Active Sensing, del parseado de tramas MIDI y de la computación de audio del Pure Data. En este módulo se encuentra todo el código de la puesta a punto del sistema MIDI (toda la comunicación con la placa).
  • MIDI Display Aquí se muestra el flujo de instrucciones MIDI según llegan al PC, cuyos bytes han sido parseados y se muestran de forma inteligible, utilizando una mejora del patch pd printMidi (explicado aquí) y redirigiendo los mensajes de la consola a la interfaz gráfica (Por ejemplo, al tocar un La bemol en el canal 1 veremos en la pantalla: [Channel 0] | | | NoteOn | | | Ab4 | | | 88 | | | ).
  • LED Matrix Dentro de este módulo se aloja el sistema encargado del análisis de las tramas y del envío de mensajes de control de la iluminación.
  • Módulos de síntesis En la zona inferior se dispone de un espacio para los módulos de síntesis que se deseen emplear. En las primeras pruebas colocamos 8 ‘polywavesynths’ para comprobar que podíamos reproducir varios instrumentos simultáneamente, pero podemos recolocarlos para dejar sitio a los demás módulos.

No hay comentarios:

Publicar un comentario