
Otwarte Sterowanie Dźwiękiem (OSC)
Zdalne sterowanie DMXDesktop za pomocą protokołu OSC
Czym jest OSC?
Otwarte Sterowanie Dźwiękiem (OSC) to protokół do sieciowania syntezatorów dźwięku, komputerów i innych urządzeń multimedialnych w celach takich jak występy muzyczne czy kontrola pokazów. DMXDesktop implementuje OSC, aby umożliwić zdalne sterowanie z różnych urządzeń i aplikacji.
Jak to działa
DMXDesktop uruchamia serwer OSC, który nasłuchuje przychodzących wiadomości. Te wiadomości mogą kontrolować różne aspekty oprogramowania, od podstawowych funkcji, takich jak kontrola głównego ściemniacza, po złożone wyzwalanie efektów. Serwer obsługuje zarówno protokoły UDP, jak i TCP, przy czym UDP jest najczęściej używany.
Rozpoczęcie
- Otwórz DMXDesktop i przejdź do Ustawienia → Ogólne
- W sekcji OSC znajdziesz:
- Przełącznik włączania/wyłączania OSC
- Wybór interfejsu sieciowego (wybierz preferowany interfejs sieciowy)
- Numer portu (domyślnie: 8000)
- Wybór protokołu (UDP/TCP)
- Usługa odkrywania działa na porcie 9000 i pozwala zgodnym aplikacjom automatycznie znaleźć DMXDesktop w sieci
Łączenie z TouchOSC
TouchOSC to popularne narzędzie do kontrolowania wielu różnych typów aplikacji i może być używane do kontrolowania DMXDesktop za pomocą protokołu OSC.
Proszę pamiętać: TouchOSC jest płatnym oprogramowaniem, proszę zapoznać się z oficjalną stroną w celu uzyskania szczegółów.
- Pobierz i zainstaluj TouchOSC na swoim urządzeniu:
- iOS: App Store
- Android: Google Play
- Desktop: Desktop
- Otwórz TouchOSC i utwórz nowe połączenie:
- Protokół: OSC
- Host: Adres IP twojego komputera (pokazany w ustawieniach DMXDesktop)
- Port wysyłania: 8000 (domyślnie)
- Port odbierania: 9000 (dla usługi odkrywania)
- Użyj funkcji odkrywania w TouchOSC, aby automatycznie znaleźć DMXDesktop w swojej sieci
- Utwórz swój układ, korzystając ze ścieżek OSC wymienionych w tabeli poniżej
Porady dotyczące sieci
- Upewnij się, że twoje urządzenie i komputer są w tej samej sieci
- Jeśli używasz zapory, zezwól na przychodzące połączenia na portach 8000 i 9000
- Aby uzyskać optymalną wydajność, użyj dedykowanej sieci lub połączenia WiFi 5GHz
Dodatkowe zasoby
- Oficjalna strona OSC - Dowiedz się więcej o protokole OSC
- Dokumentacja TouchOSC - Szczegółowy przewodnik po TouchOSC
- Specyfikacja protokołu OSC - Szczegóły techniczne protokołu OSC
Polecenia wejścia OSC
Wyślij te polecenia do DMXDesktop, aby kontrolować swoje oświetlenie. Wszystkie ścieżki są wrażliwe na wielkość liter.
| Ścieżka OSC | Parametry | Opis |
|---|---|---|
| KONTROLE GŁÓWNE | ||
| /master/dimmer | float (0-1) | Kontroluje intensywność głównego ściemniacza |
| EFEKTY NA ŻYWO | ||
| /live/strobe/{on|off|pulse} | brak | Kontroluje stan stroboskopu |
| /live/blackout/{on|off|pulse} | brak | Kontroluje stan blackout |
| /live/blinder/{on|off|pulse} | brak | Kontroluje stan blinder |
| /live/freeze/{on|off|pulse} | brak | Kontroluje stan freeze |
| /live/fog/{on|off|pulse} | brak | Kontroluje stan maszyny do mgły |
| EFEKTY SPECJALNE | ||
| /effects/{effect}/start | brak | Uruchamia określony efekt (fala, paparazzi, kolorowy, grzmot, puls, iskra, losowy) |
| /effects/{effect}/stop | brak | Zatrzymuje określony efekt specjalny |
| /effects/stop | brak | Zatrzymuje wszystkie aktualnie działające efekty specjalne |
| /effects/bpm | float (0-1) | Ustawia BPM dla synchronizacji efektów specjalnych (mapuje 0-1 na 60-200 BPM) |
| EDYTY NA ŻYWO | ||
| /live/edit/{action}/{name} | action: enable|disable|toggle | Kontroluje stan edycji na żywo według nazwy |
| /live/edit/group/{action}/{name} | action: enable|disable|toggle | Kontroluje stan grupy edycji na żywo według nazwy |
| /live/edit/disable-all | brak | Wyłącza wszystkie edycje na żywo |
| KONTROLE CUE | ||
| /cue/effect/play/{name} | string | Odtwarza konkretny cue efektu według nazwy |
| /cue/effect/{action} | play|stop|next|prev | Kontroluje nawigację odtwarzania cue efektu |
| KONTROLE DJ | ||
| /dj/app/{app} | musicplayer|virtualdj|traktor | Przełącza konkretną aplikację DJ |
| /dj/deck{1|2}/{action} | play|stop|eject | Kontrole transportu decku |
| /dj/deck{1|2}/volume | float (0-1) | Kontroluje głośność decku |
| /dj/crossfader | float (0-1) | Kontroluje pozycję crossfadera |
| BEZPOŚREDNIA KONTROLA DMX | ||
| /dmx/{universe}/{channel} | float (0-1) | Ustawia wartość kanału DMX (mapuje 0-1 na 0-255) |
| /dmx/{universe}/{channel}/clear | brak | Czyści nadpisanie kanału DMX |
| /dmx/clear | brak | Czyści WSZYSTKIE nadpisania kanałów DMX |
Wiadomości wyjścia OSC
DMXDesktop przesyła stan i zdarzenia do aplikacji zewnętrznych za pośrednictwem OSC. Skonfiguruj docelowy host i port w Ustawieniach. Dostępne od v1.0.46
Kontrole na żywo
/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 (wave, thunder, etc.)Audio i BPM
/dmxdesktop/v1/bpm float (BPM value)/dmxdesktop/v1/beat float, int, int, float (bpm, ts_high, ts_low, confidence)/dmxdesktop/v1/audio/level float 0-1 (RMS level)/dmxdesktop/v1/audio/energy float 0-1 (energy level)Cues efektów
/dmxdesktop/v1/cue/active string (cue name or "")/dmxdesktop/v1/cue/name string (current cue)/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 (next cue name)Edyty na żywo i nadpisania
/dmxdesktop/v1/liveedit/{id} int 0|1/dmxdesktop/v1/liveedit/group/{id} int 0|1/dmxdesktop/v1/override/color string (palette ID or "")/dmxdesktop/v1/override/position string (preset or "")DJ Mode
/dmxdesktop/v1/dj/enabled int 0|1/dmxdesktop/v1/dj/app string (app name or "")/dmxdesktop/v1/dj/master int 1-4 (master deck)/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 (Artist - Title)/dmxdesktop/v1/dj/deck{1-4}/loaded int 0|1 (track loaded)/dmxdesktop/v1/dj/deck{1-4}/loading int 0|1 (analyzing)/dmxdesktop/v1/dj/deck{1-4}/showready int 0|1 (DMX show ready)/dmxdesktop/v1/dj/deck{1-4}/vu float (VU meter level)QuickShow - Efekty wiązki
/dmxdesktop/v1/quickshow/beam string (effect name or "")/dmxdesktop/v1/quickshow/beam/speed int (raw slider value)/dmxdesktop/v1/quickshow/beam/phase int (raw slider value)/dmxdesktop/v1/quickshow/beam/background int (raw slider value)/dmxdesktop/v1/quickshow/beam/spread int (raw slider value)/dmxdesktop/v1/quickshow/beam/intensity int (raw slider value)QuickShow - Efekty ruchu
/dmxdesktop/v1/quickshow/move string (effect name or "")/dmxdesktop/v1/quickshow/move/speed int (raw slider value)/dmxdesktop/v1/quickshow/move/size int (raw slider value)/dmxdesktop/v1/quickshow/move/phase int (raw slider value)/dmxdesktop/v1/quickshow/move/fanning int (raw slider value)/dmxdesktop/v1/quickshow/move/direction int -1|0|1QuickShow - Ogólne
/dmxdesktop/v1/quickshow/theme int (theme ID)/dmxdesktop/v1/quickshow/themecount int (8|16|24|32)/dmxdesktop/v1/quickshow/preset string (preset ID or "")/dmxdesktop/v1/quickshow/groups string (JSON array)/dmxdesktop/v1/quickshow/groups/move string (JSON array)/dmxdesktop/v1/quickshow/stopall int 1 (pulse event)QuickShow - Enkodery
/dmxdesktop/v1/quickshow/encoder/beam/{id} int 0-255 (DMX value)/dmxdesktop/v1/quickshow/encoder/move/{id} int 0-255 (DMX value)Identyfikatory enkoderów są w formacie: beam_aux_{groupId}_{channelKey} lub move_aux_{groupId}_{channelKey}
Uwaga: Wyjście OSC wymaga płatnej subskrypcji i musi być włączone w Ustawieniach. Domyślny port to 9000.
Znaczniki czasu bitów są dzielone na dwie 32-bitowe liczby całkowite (ts_high, ts_low), ponieważ OSC nie obsługuje wartości 64-bitowych.
