
Control de Sonido Abierto (OSC)
Envía comandos a DMXDesktop y recibe transmisiones de estado a través de OSC
¿Qué es OSC?
Open Sound Control (OSC) es un protocolo para la interconexión de sintetizadores de sonido, computadoras y otros dispositivos multimedia con fines como actuaciones musicales o control de espectáculos. DMXDesktop implementa OSC para comunicación bidireccional: recibe comandos de controladores externos y transmite cambios de estado a otras aplicaciones.
Cómo Funciona
DMXDesktop soporta tanto OSC Input como Output. El servidor OSC Input escucha mensajes entrantes para controlar varios aspectos del software. OSC Output transmite cambios de estado y eventos a aplicaciones externas, permitiendo la sincronización en tiempo real con software de video, visualizadores e integraciones personalizadas. Ambos soportan el protocolo UDP para comunicación de baja latencia.
Comenzando
- Abre DMXDesktop y navega a Configuraciones → General
- En la sección OSC, encontrarás:
- Interruptor de Habilitar/Deshabilitar OSC Input
- Selección de Interfaz de Red
- Número de Puerto de Entrada (predeterminado: 8000)
- Selección de Protocolo (UDP/TCP)
- Interruptor de Habilitar/Deshabilitar OSC Output
- Host y Puerto de Salida (predeterminado: 127.0.0.1:9000)
- El servicio de descubrimiento se ejecuta en el puerto 9000 y permite que aplicaciones compatibles encuentren automáticamente DMXDesktop en la red
Conectando con TouchOSC
TouchOSC es una herramienta popular para controlar multitudes de diferentes tipos de aplicaciones, y se puede usar para controlar DMXDesktop a través del Protocolo OSC.
Por favor nota: TouchOSC es un software de pago, consulta el sitio web oficial para más detalles.
- Descarga e instala TouchOSC en tu dispositivo:
- iOS: App Store
- Android: Google Play
- Escritorio: Escritorio
- Abre TouchOSC y crea una nueva conexión:
- Protocolo: OSC
- Host: La dirección IP de tu computadora (mostrada en la configuración de DMXDesktop)
- Puerto de Envío: 8000 (predeterminado)
- Puerto de Recepción: 9000 (para el servicio de descubrimiento)
- Usa la función de descubrimiento en TouchOSC para encontrar automáticamente DMXDesktop en tu red
- Crea tu diseño utilizando las rutas OSC listadas en la tabla a continuación
Consejos de Red
- Asegúrate de que tu dispositivo y computadora estén en la misma red
- Si usas un firewall, permite conexiones entrantes en los puertos 8000 y 9000
- Para un rendimiento óptimo, usa una red dedicada o conexión WiFi de 5GHz
- Para OSC Output, configura la IP y el puerto del host objetivo en Configuraciones
Recursos Adicionales
- Sitio Web Oficial de OSC - Aprende más sobre el protocolo OSC
- Documentación de TouchOSC - Guía detallada para TouchOSC
- Especificación del Protocolo OSC - Detalles técnicos del protocolo OSC
Comandos OSC Input
Envía estos comandos a DMXDesktop para controlar tu iluminación. Todas las rutas son sensibles a mayúsculas y minúsculas.
| Ruta OSC | Parámetros | Descripción |
|---|---|---|
| CONTROLES MAESTROS | ||
| /master/dimmer | float (0-1) | Controla la intensidad del atenuador maestro |
| EFECTOS EN VIVO | ||
| /live/strobe/{on|off|pulse} | ninguno | Controla el estado del estroboscopio |
| /live/blackout/{on|off|pulse} | ninguno | Controla el estado de apagón |
| /live/blinder/{on|off|pulse} | ninguno | Controla el estado del blinder |
| /live/freeze/{on|off|pulse} | ninguno | Controla el estado de congelación |
| /live/fog/{on|off|pulse} | ninguno | Controla el estado de la máquina de humo |
| EFECTOS ESPECIALES | ||
| /effects/{effect}/start | ninguno | Inicia el efecto especificado (onda, paparazzi, barrido de colores, trueno, pulso, chispa, aleatorio) |
| /effects/{effect}/stop | ninguno | Detiene el efecto especial especificado |
| /effects/stop | ninguno | Detiene todos los efectos especiales que se están ejecutando actualmente |
| /effects/bpm | float (0-1) | Establece BPM para el tiempo de los efectos especiales (mapea 0-1 a 60-200 BPM) |
| EDICIONES EN VIVO | ||
| /live/edit/{action}/{name} | acción: enable|disable|toggle | Controla el estado de la edición en vivo por nombre |
| /live/edit/group/{action}/{name} | acción: enable|disable|toggle | Controla el estado del grupo de edición en vivo por nombre |
| /live/edit/disable-all | ninguno | Desactiva todas las ediciones en vivo |
| CONTROLES DE CUE | ||
| /cue/effect/play/{name} | cadena | Reproduce el cue de efecto específico por nombre |
| /cue/effect/{action} | play|stop|next|prev | Controla la navegación de reproducción del cue de efecto |
| CONTROLES DJ | ||
| /dj/app/{app} | musicplayer|virtualdj|traktor | Alterna la aplicación DJ específica |
| /dj/deck{1|2}/{action} | play|stop|eject | Controles de transporte del deck |
| /dj/deck{1|2}/volume | float (0-1) | Controla el volumen del deck |
| /dj/crossfader | float (0-1) | Controla la posición del crossfader |
| CONTROL DMX DIRECTO | ||
| /dmx/{universe}/{channel} | float (0-1) | Establece el valor del canal DMX (mapea 0-1 a 0-255) |
| /dmx/{universe}/{channel}/clear | ninguno | Limpia la anulación del canal DMX |
| /dmx/clear | ninguno | Limpia TODAS las anulaciones de canales DMX |
| CONTROLES DE PILA | ||
| /stack/{id}/go | ninguno | Dispara el siguiente cue en la pila especificada |
| /stack/{id}/back | ninguno | Retrocede al cue anterior |
| /stack/{id}/halt | ninguno | Congela la transición actual del crossfade |
| /stack/{id}/stop | ninguno | Detiene la reproducción en la pila especificada |
| /stack/{id}/level | float (0-1) | Establece el nivel maestro de la pila |
| EJECUTAR GRID | ||
| /execute/{row}/{col} | ninguno | Activa el botón de ejecutar en la posición especificada |
Comandos de Live Wire y Tempo
El modo Live Wire, Live Wire Hold y los controles de tempo medio y doble pueden ser controlados a través de OSC. Live Wire es una característica de Standard y Pro. Disponible desde v1.0.52
| Ruta OSC | Parámetros | Descripción |
|---|---|---|
| Live Wire | ||
| /livewire/mode/{band|dj|ambient} | ninguno | Cambia Live Wire a ese modo y comienza Live Wire si no es ya la aplicación de audio en ejecución |
| /livewire/hold/{on|off|toggle} | ninguno | Mantiene Live Wire en la apariencia de espera del modo, o lo libera para escuchar. Rechazado cuando el modo en ejecución no tiene apariencia de espera para mantener |
| TEMPO | ||
| /live/tempo/{half|double|normal} | ninguno | Ejecuta el equipo a medio o doble tiempo, o lo devuelve a la normalidad. Medio y doble son bloqueos, por lo que enviar el mismo de nuevo regresa a la normalidad |
Una configuración de tempo, en todas partes. Medio y doble tempo es una sola configuración que la consola, los pads MIDI, OSC y el control remoto móvil leen y escriben, por lo que no pueden discrepar sobre la velocidad a la que está funcionando el equipo.
OSC ya no puede silenciar el audio del cual depende una función en ejecución. Live Wire necesita captura de audio en vivo y detección de BPM, y un mensaje OSC podría anteriormente desactivar cualquiera de ellos, dejándolo habilitado pero sordo. Esos mensajes ahora son rechazados mientras una función en ejecución dependa de ellos.
Mensajes OSC Output
DMXDesktop transmite estado y eventos a aplicaciones externas a través de OSC. Configura el host y el puerto objetivo en Configuraciones. Disponible desde v1.0.46
Controles en Vivo
/dmxdesktop/v1/master float 0-1 (0-100%)/dmxdesktop/v1/blackout int 0|1/dmxdesktop/v1/strobe int 0|1/dmxdesktop/v1/blinder int 0|1/dmxdesktop/v1/freeze int 0|1/dmxdesktop/v1/fog int 0|1/dmxdesktop/v1/effect int 0|1/dmxdesktop/v1/specialeffect/{name} int 0|1 (onda, trueno, etc.)Audio y BPM
/dmxdesktop/v1/bpm float (valor BPM)/dmxdesktop/v1/beat float, int, int, float (bpm, ts_high, ts_low, confianza)/dmxdesktop/v1/audio/level float 0-1 (nivel RMS)/dmxdesktop/v1/audio/energy float 0-1 (nivel de energía)Effect Cues
/dmxdesktop/v1/cue/active string (nombre del cue o "")/dmxdesktop/v1/cue/name string (cue actual)/dmxdesktop/v1/cue/action string (play|stop)/dmxdesktop/v1/cue/lifecycle string (fadeIn/OutStarted/Finished)/dmxdesktop/v1/cue/lifecycle/duration int (ms)/dmxdesktop/v1/cue/lifecycle/newCue string (nombre del siguiente cue)Pilas de Cues
/dmxdesktop/v1/stack/{id}/step int (índice del paso)/dmxdesktop/v1/stack/{id}/fading int 0|1/dmxdesktop/v1/stack/{id}/paused int 0|1Ediciones en Vivo & Sobrescrituras
/dmxdesktop/v1/liveedit/{id} int 0|1/dmxdesktop/v1/liveedit/group/{id} int 0|1/dmxdesktop/v1/override/color string (ID de paleta o "")/dmxdesktop/v1/override/position string (preset o "")DJ Mode
/dmxdesktop/v1/dj/enabled int 0|1/dmxdesktop/v1/dj/app string (nombre de la app o "")/dmxdesktop/v1/dj/master int 1-4 (deck maestro)/dmxdesktop/v1/dj/crossfader float 0-1/dmxdesktop/v1/dj/deck{1-4}/playing int 0|1/dmxdesktop/v1/dj/deck{1-4}/paused int 0|1/dmxdesktop/v1/dj/deck{1-4}/track string (Artista - Título)/dmxdesktop/v1/dj/deck{1-4}/loaded int 0|1 (track cargado)/dmxdesktop/v1/dj/deck{1-4}/loading int 0|1 (analizando)/dmxdesktop/v1/dj/deck{1-4}/showready int 0|1 (show DMX listo)/dmxdesktop/v1/dj/deck{1-4}/vu float (nivel del medidor VU)Live Wire
/dmxdesktop/v1/livewire/mode/active string (band|dj|ambient, or "")/dmxdesktop/v1/livewire/hold/state string (held|listening|unavailable)/dmxdesktop/v1/livewire/mode string (mode selected)/dmxdesktop/v1/livewire/hold int 0|1QuickShow - Efectos de Haz
/dmxdesktop/v1/quickshow/beam string (nombre del efecto o "")/dmxdesktop/v1/quickshow/beam/speed int (valor del control deslizante en bruto)/dmxdesktop/v1/quickshow/beam/phase int (valor del control deslizante en bruto)/dmxdesktop/v1/quickshow/beam/background int (valor del control deslizante en bruto)/dmxdesktop/v1/quickshow/beam/spread int (valor del control deslizante en bruto)/dmxdesktop/v1/quickshow/beam/intensity int (valor del control deslizante en bruto)QuickShow - Efectos de Movimiento
/dmxdesktop/v1/quickshow/move string (nombre del efecto o "")/dmxdesktop/v1/quickshow/move/speed int (valor del control deslizante en bruto)/dmxdesktop/v1/quickshow/move/size int (valor del control deslizante en bruto)/dmxdesktop/v1/quickshow/move/phase int (valor del control deslizante en bruto)/dmxdesktop/v1/quickshow/move/fanning int (valor del control deslizante en bruto)/dmxdesktop/v1/quickshow/move/direction int -1|0|1QuickShow - General
/dmxdesktop/v1/quickshow/theme int (ID del tema)/dmxdesktop/v1/quickshow/themecount int (8|16|24|32)/dmxdesktop/v1/quickshow/preset string (ID del preset o "")/dmxdesktop/v1/quickshow/groups string (array JSON)/dmxdesktop/v1/quickshow/groups/move string (array JSON)/dmxdesktop/v1/quickshow/stopall int 1 (evento de pulso)QuickShow - Codificadores
/dmxdesktop/v1/quickshow/encoder/beam/{id} int 0-255 (valor DMX)/dmxdesktop/v1/quickshow/encoder/move/{id} int 0-255 (valor DMX)Los IDs de los encoders están en el formato: beam_aux_{groupId}_{channelKey} o move_aux_{groupId}_{channelKey}
Nota: OSC Output requiere una suscripción de pago y debe ser habilitado en Configuraciones. El puerto predeterminado es 9000.
Las marcas de tiempo de los beats se dividen en dos enteros de 32 bits (ts_high, ts_low) ya que OSC no soporta valores de 64 bits.

