DMX Map DAT: карта юниверсов
Визуализация того, что реально уходит по каждому юниверсу, и поиск конфликтов адресов.
DMX Map DAT — оператор, появившийся в версии 2025 вместе с
DMX-POP. Он показывает раскладку юниверсов и
каналов в виде таблицы.
Что он решает
Главная беда любого патча — пересечение адресов. Два прибора, занимающие один и тот же диапазон каналов, ведут себя непредсказуемо: один портит значения другого, и симптом выглядит как «прибор глючит».
До появления этого оператора конфликты искали глазами по таблице. Теперь карта показывает, какой канал каким прибором занят, и наложения видны сразу.
Как пользоваться
По умолчанию DMX Map DAT пристыкован к DMX Out POP. Открыв его, вы
видите:
- какие юниверсы используются;
- какие каналы внутри юниверса заняты и кем;
- где остались дыры;
- где занято дважды.
Это тот же взгляд, что даёт окно патча на консоли, — и он одинаково нужен и при сборке, и при отладке.
Что проверять перед шоу
- Нет наложений. Ни одного канала, занятого двумя приборами.
- Нет неожиданных юниверсов. Всё, что уходит, — уходит туда, куда планировалось.
- Совпадение с патчем консоли, если она есть — Патч и маршрутизация.
- Границы юниверсов. Прибор, начинающийся с 505-го канала и занимающий 16, не поместится: DMX не переносит прибор в следующий юниверс.
Последний пункт — классическая ошибка при автоматической адресации.
Если POP нет
На версиях до 2025 карту приходится строить самому. Минимальный вариант —
Evaluate DAT, раскладывающий таблицу патча в сетку 512 × N и
подсвечивающий занятые ячейки. Двадцать минут работы, которые окупятся
на первом же конфликте.
Ещё проще: скрипт, который проходит по таблице патча и печатает список пересечений:
used = {}
for r in op('fixtures').rows()[1:]:
u = int(r['universe']); a = int(r['address']); fp = footprint(r['type'])
for ch in range(a, a + fp):
key = (u, ch)
if key in used:
debug('конфликт', key, used[key], r['id'])
used[key] = r['id'].val
Наравне с «сеть поднялась» и «приборы отвечают». Конфликт адресов даёт плавающие симптомы, которые ищут часами, а находят за секунду, если посмотреть в правильное место.