giovedì 29 luglio 2010

Introducción al OSC (Open Sound Control) - Primer parte


1. Introducción

Open Sound Control (OSC) es un protocolo para la comunicación entre ordenadores, sintetizadores musicales y otros dispositivos multimediales inspirado en la moderna tecnología de las redes. El protocolo tiene algunas ventajas como por ejemplo la independencia del medio de transmisión y la flexibilidad para transportar cualquier tipo de datos. Pensado originalmente para la comunicación de instrumentos musicales (como en el caso del protocolo MIDI), en estos últimos años ha ganando terreno en otros sectores como el multimedial gracias a su potencia y flexibilidad.

El medio de transporte por excelencia son las redes de ordenadores y para obtener velocidad y simplificar las comunicaciones generalmente se usa el protocolo de transporte UDP (User Datagram Protocol) aunque si se pueden usar otros protocolos como por ejemplo el TCP.

2. Características principales del OSC
  • Expansible, dinámico.
  • Esquema de nombres simbólicos tipo URL
  • Datos simbólicos y numéricos ad alta resolución
  • Pattern matching que permite de comunicar simultáneamente con varios dispositivos a través de un único mensaje
  • Indicadores de tiempo (time tags) de alta resolución.
  • Posibilidad de empaquetar varios mensajes para aquellos eventos que deben ocurrir simultáneamente.

3. Tipos de mensaje



La base de la comunicación OSC se encuentra en los mensajes. Los mensajes pueden ser de dos tipos: mensaje único (message) o paquete de mensajes (bundle). El paquete de mensajes es un contenedor que puede alojar uno o varios mensajes únicos.

4. Mensaje único (messagge)

Está compuesto por una cadena de bytes (un byte equivale a 8 bit) y se puede dividir en tres partes fundamentales:



La característica común de todas las partes de un mensaje OSC (y como consecuencia del mensaje en si mismo) es que la cantidad de byte que componen cada una de estas es un valor múltiplo de 4. Esto da la posibilidad de controlar y mantener el alineamiento en la lectura de los distintos datos.

5. Dirección (address)

La primera parte de un mensaje OSC es la dirección (address) y consiste en una cadena que inicia con el símbolo "/". Se asemeja a un sistema tipo URL de internet permitiendo la navegación en una estructura jerárquica (o ad árbol). Generalmente la dirección se usa para identificar el mensaje (como si fuera un código de comando).




En la figura podemos observar un ejemplo de dirección que permite de alcanzar un hipotético modulo interno "md1" a través de una estructura tipo árbol invertido.

Ejemplos de direcciones son:

/status
/test/light
/adc/input/3

Fin de la primer parte

Nessun commento:

Posta un commento