Blogia
mundosimaginados

Experimentos

Instalación && Performance II

 

He cambiado el planteamiento. Los componentes mecánicos son delicados y uno es informático. He llegado a utilizar dos Arduinos para que controlen el asunto enviandose datos mediante impulso luminosos. Al final no va bien al 100%. La idea es la misma, barrer una círculo mediante un radio que identifique los objetos encontrados y proporcione información de los mismos. Recuerden que en la primera versión utilicé el ventilador para simplificar.

La solución por la que me he decantado es utilizar algorítmos de visión artificial y trabajar en Processing. Para ello he utilizado además las siguientes librerías...

- BlobDetection que proporciona información de los objetos encontrados en la imágen que superen un umbral de luminosidad u obscuridad (programable). También proporciona información de geometría y tamaño. En el ejemplo dependiendo del tamaño de los objetos se identifican con el color rojo o azul y el sonido asociado es diferente.

- GSVideo que proporciona acceso a la webcam bajo Linux.

- oscP5 que implementa el protocolo Open Sound Control que he utilizado para pasar los datos al Pure Data. Véase aquí una explicación del protocolo cuya principal característica es superar las carencias del MIDI aunque yo lo empleo como protocolo de red puro y duro. Podría implementar un puerto UPD en la máquina y cualquiera que se conectara escuchar lo que produzca en un a modo de emisión vía Internet.

Por el camino he utilizado otras librerías para MIDI en processing e incluso he atacado directamente el modulo de sonido que implementa Java (processing no deja de ser una capa que facilita la programación gráfica en Java). Los resultados no han sido satisfactorios. Las versiones e implementaciones que he usado no han sido suficientemente robustas para lo que busacaba. Al final la solución ha pasado por utilizar PureData para el tema del secuenciado de sonido traduciendo a MIDI la información pasada desde Processing mediante el OpenSoundControl. Por último me preocupaba el "pacheo" del montaje pero la utilización de la interface gráfica de jack configurando la opción Pachbay da unos resultados a la altura de las circunstancias y así puedo utilizar cualquier instrumento software MIDI (o externo) para la generación del sonido.

Una vez terminado el proyecto he encontrado un vídeo de un señor que ha hecho algo parecido e incluso más resultón...

 

Teclado controlador MIDI con Arduino

 

Fruto de los trabajos veraniegos traigo este video con el circuito de un prototipo para utilizar el Arduino como control para un teclado MIDI.

Buscando información por allí vi que utilizando unos multiplexores básicos se podía hacer un circuito que proporcionara información al Arduino más allá de sus limitaciones físicas en cuanto a puertos. Multiplexando a un nivel se puede llegar fácilmente a controlar 48 pulsadores (que informen de valores de resistencia con lo que se puede hacer algo bastante complejo y completo)

La gestión del teclado no está realizada por interrupciones (que sería lo elegante) sino mediante direccionamiento y consulta. Tengo que depurar el código y publicarlo.

Por el momento disfruten de la cancioncilla...

Joystick y PD = Instrumento Musical

 

+

Sigo trabajando con PureData. Lo que hoy traigo es un pach en el que utilizo las librerías hid para lanzar sonidos con un joystick.

Lo único que me ha costado un poco más es conseguir que se mantengan los sonidos mientras estuvieran pulsados los botones y que fuera polifónico.

Dado que un joystick tiene pocos botones, comparado con un acordeon :-), he mapeado una escala pentatónica y utilizado unos sonidos que le peguen con un resultado muy andino!!!

Estoy terminando de pulirlo pero si a alguien le interesa que lo diga.

Gimp edición de imágenes con controlador MIDI

 

 

Hace algunos días que vengo probando una opción no muy conocida del GIMP que permite asociar eventos MIDI a acciones y controles de edición.

La idea es utilizar los controladores MIDI para lanzar algún comando del programa o modificar parámetros.

En el vídeo se puede ver:

  • Conexión del controlador al programa mediante jack.
  • Asociación de un evento MIDI a un comando del programa.
  • Utilización de los controles para modificar parámetros de las herramientas y el zoom.
  • Demostración de una propuesta creada con estas técnicas.

Quién podría haber imaginado en los años 80, cuando el protocolo MIDI se estableció para comunicar sintetizadores y secuenciadores que en el SXXI se podría emplear para controlar software de dibujo y de una forma relativamente sencilla. Es que los tiempos...

Herramienta para presentaciones.

Herramienta para presentaciones.

 

Ya les comenté que para la conferencia en el Zentrum había programado con processing una herramienta para hacer la presentación. La llamé Interfase web 3d.0 ya que se puede interactuar en tres dimensiones con los textos y se pueden seguir enlaces desde el entorno navegando con un joystick.

La he adaptado para funcionar en la web y para ello lo que he tenido que asignar teclas del telclado a cada uno de los movimientos asociados al joystick.

En la página está enlazado el fuente del programa . Decir que la estructura está bien pero no aprobaría ningun exámen de programación... demasiados efectos laterales en las funciones y modificación de variables públicas desde las mismas. Sirva como reto a quien quiera mejorarlo/usarlo... bastaría con convertir en parámetros las variables globales cuando son modificadas en las funciones y hacer que éstas devuelvan como resultado los valores modificados. Con respecto al resto la parte de los enlaces es una chapucilla que espero que alguien se encargue de mejorar.

Si necesitan ayuda para usarlo digánlo. Para autodidactas descarguen el código fuente, allí veran que necesitan una fuente de tipo de letra (que se encuentra en los ejemplos de la instalación por defecto de processing) y un archivo llamado lista.txt en el que están los textos. Todo se puede encontrar también navegando por la clase java que lo implementa.

Para contactar utilizar el email de la web (al final de la página)

Para utilizarla es necesario tener el JAVA instalado y activado. Úsenlo a su propio riesgo.

Acceso a la herramienta:

INTERFASE 3D.0

 

 

MundosImaginados para móviles

MundosImaginados para móviles

 

Ya hace tiempo (algunos meses mas de un año) que hice una versión para móviles de MundosImaginados. Véanla aquí . Entonces probaba con un bono de bienvenida de GPRS sobre un móvil bastante sencillo. Un truco que utilicé también fue hacer la ventana del navegador muy pequeña, lo mas parecido a lo que se veía cuando navegaba con el móvil (como en la imágen).

Hoy el maestro telefonólogo (Javier Torres ) nos avisa de un sitio en el que chequean la compatibilidad de una web utilizando estos dispositivos. Hay varios apartados, a mi me gusta especialmente la página del emulador (aquí con la versión para móviles de MI). También se puede obtener un informe sobre una web indicando la dirección.

Desde mi faceta de músico echo en falta que nos cuente como sonaría si la web tuviera música. No todos los móviles suenan igual. Hay politonos más o menos logrados y dependiendo de los terminales el resultado es bastante desigual (tengo oído que Nokia tiene un instrumento en formato VST que se puede pinchar en el anfitrión con el que se trabaje para hacer música y escuchar cómo sonaría la canción o tono o politono que se quiera probar, no encuentro el enlace los interesados comentar y os lo busco). Aunque me atrevo a adivinar que el problema es que una web con música no está muy bien vista desde el punto de vista navegabilidad/accesibilidad. La cuestión sería que informara de si va a sonar bien lo que fueramos a descargar (dependiendo del formato en que esté). 

Gracias Javier, si es que está todo por inventar (o inventado ya...)