OSC: управление по сети
Адреса существуют сразу, назначать ничего не надо. Разобраться придётся с относительными путями и с тем, что 0,5 не всегда половина.
OSC — сообщения по сети, и любой параметр имеет адрес, по которому его читают и меняют. Ничего назначать не нужно: адреса существуют изначально.
/composition/layers/1/clips/3/connect
/composition/layers/2/video/opacity 0.25
/composition/master
/composition/tempocontroller/tempo
Общего списка адресов не существует и быть не может: он зависит от того,
сколько у вас слоёв и какие стоят эффекты. Точный адрес показывает сама
программа — Shift + Ctrl + O, щелчок по нужной ручке, адрес в панели
копируется.
Два адреса у одного элемента
/composition/layers/1/video/effects/goo/speed абсолютный
/composition/selectedlayer/video/effects/goo/speed относительный
Первый управляет эффектом на первом слое и только на нём. Второй — тем же эффектом на слое, который выбран сейчас, так что один адрес обслуживает все слои. Нет на выбранном слое такого эффекта — сообщение просто ничего не сделает.
Значения
| Тип | Как читать |
|---|---|
| Float 0.0–1.0 | Дробное от нуля до единицы, отображается в реальный диапазон параметра |
| Int | Целое: например, режим смешивания слоя это число от 0 до 50 |
| Color | 32-битный RGBA одним значением |
Отображение нелинейно к смыслу: у масштаба композиции тип Float 0.0–1.0 при реальном диапазоне 0–1000 %, то есть 0,1 даёт 100 %, а 0,5 — 500 %. У поворота 0,5 означает ноль градусов, потому что диапазон идёт от −180 до +180. Целочисленному адресу можно послать и дробное: оно линейно растянется на диапазон параметра.
Связь
Порт по умолчанию 7000, меняется в Preferences → OSC, там же виден адрес машины. Программа объявляет себя по ZeroConf, он же Bonjour, и приложения с его поддержкой находят её сами; остальным адрес и порт вписывают руками.
Самая частая ошибка — собрать большую панель и обнаружить, что не работает вообще ничего. Проверьте связь одним сообщением: мастер или прозрачность первого слоя.
В настройках разворачивается монитор с последними двумя сотнями сообщений. Это первое место, куда смотрят, когда «не работает».
Монитор показывает исходящие сообщения наравне с входящими.
Отдача наружу
Выход включается там же, а поток настраивается пресетами сочетаний:
Shift + Ctrl + O → панель сочетаний → выбор пресета. Пресет
«Output All OSC Messages» шлёт вообще всё — запуск клипов, движения мыши,
вход MIDI, автоматизацию, позицию плейхеда, по всем адресам сразу. Понять
состояние программы снаружи так удобно, а канал забивается мгновенно,
поэтому под задачу собирают свой пресет.
| Источник | Типичная задача |
|---|---|
| Планшет с TouchOSC | Своя панель управления в руках |
| Companion или стримдек | Кнопки под конкретные действия |
| Световой пульт | Свет и видео из одной точки |
| TouchDesigner, Max, Processing | Связка софта в одну систему |
| Свой скрипт | Автоматизация и интеграции |
OSC работает по UDP, и сообщения теряются. Wi-Fi годится, пока их немного, но сила сигнала падает, когда в зале пять тысяч человек с телефонами. В ответственных местах на однократную отправку не полагаются — Проблемы управления.
Нашли в статье ошибку, устаревшее или непонятное место?