DMX Map DAT: карта юниверсов
Таблица того, что на самом деле уходит в каждый юниверс из DMX Fixture POP и DMX Out POP. Фильтры, проверка перед шоу и скрипт-заменитель для проекта на CHOP.
У света появились свои операторы: DMX Fixture POP, DMX Out POP, DMX Map DAT и Pan Tilt CHOP.
DMX Map DAT пришёл в ветке 2025.30000 вместе с DMX Fixture POP: берёт DMX Fixture POP или DMX Out POP и выводит их юниверсы таблицей.
Главная проблема патча — пересечение адресов. Два прибора на одних каналах мешают друг другу, и выглядит это как «прибор глючит». Пишут два Fixture POP в один канал — DMX Out POP предупреждает, а карта показывает, где.
К каждому DMX Out POP карта уже пристыкована, свою ставят отдельно
и указывают оператор в DMX Fixture/Out POP.
| Параметр | Что делает |
|---|---|
Net Filter, Subnet Filter, Universe Filter, Network Address Filter |
Нужные юниверсы по шаблону |
Exclude Unused Channels |
Выключен — все 512 каналов, включён — только занятые |
Update Value |
Значения вживую или последнее |
Active |
Выключенный держит последнюю раскладку |
По сути это окно патча, как на консоли, и нужно оно и при сборке, и при отладке.
Перед шоу: ни одного канала на двух приборах и ни одного предупреждения
на DMX Out POP; ничего не ушло в незапланированный юниверс; совпадение
с патчем консоли, если она есть, Патч и маршрутизация;
и границы юниверсов. Прибор не может начаться в одном юниверсе и кончиться
в другом, а DMX Fixture POP с Quantize Universe = Off именно так его
и разрежет — By Fixture перенесёт его целиком.
На ветках до 2025.30000 карту делают сами. Проще всего скрипт по таблице
патча: fixtures со столбцами id, universe, address, type
и ваша footprint(), возвращающая число каналов профиля.
t = op('fixtures')
used = {}
for i in range(1, t.numRows):
u = int(t[i, 'universe'])
a = int(t[i, 'address'])
fid = t[i, 'id'].val
for ch in range(a, a + footprint(t[i, 'type'].val)):
if (u, ch) in used:
debug('конфликт', u, ch, used[(u, ch)], fid)
used[(u, ch)] = fid
Пересечения можно вывести и на служебную панель — двадцать минут, которые окупаются на первом же конфликте.
Рядом с «сеть поднялась» и «приборы отвечают». Конфликт адресов ищут часами, а находят за секунду в правильном месте.
Нашли в статье ошибку, устаревшее или непонятное место?