Рассинхрон с пультом и видео
Свет опережает или отстаёт: источники времени, задержки тракта и как их измерить, а не угадать.
Свет, отстающий от музыки на полсекунды, разрушает шоу сильнее, чем неверный цвет. Причины делятся на постоянную задержку и накапливающийся дрейф.
Постоянная задержка
Свет всегда отстаёт на одну и ту же величину. Складывается из звеньев:
источник события → анализ → кадр TD → сеть → узел → прибор
| Звено | Порядок величины |
|---|---|
| Анализ звука | 10–30 мс |
| Кадр TouchDesigner | 16 мс при 60 fps |
Сглаживание (Lag) |
сколько задали |
| Сеть и узел | 5–30 мс |
| Светодиодный прибор | почти мгновенно |
| Галогенный прибор | 100–300 мс на разгорание |
| Механика головы | сотни миллисекунд |
Часто виноват не тракт, а собственное сглаживание: Lag в полсекунды —
это ровно та задержка, которую вы видите.
Лечится компенсацией: если известно, что свет отстаёт на 120 мс, подавайте команды на 120 мс раньше — это возможно, когда шоу идёт по таймкоду и будущее известно.
Дрейф
Расхождение растёт со временем — значит, разные источники времени.
| Причина | Лечение |
|---|---|
| Свет по своим часам, звук по своим | Общий таймкод |
| Частота таймкода не совпадает | Проверить 29.97 / 30, drop frame |
| Таймлайн проекта привязан к таймкоду | Не делайте так; считайте состояние из времени |
| Видео играет «само», а не по индексу | Позиционировать по таймкоду |
Свет, видео и звук должны считать своё состояние из одного и того же времени. Любая схема, где каждый идёт по своим часам, разъедется — вопрос только в том, за сколько минут.
Свет против видео
Если экран и свет должны совпадать по акцентам, помните: видеотракт обычно длиннее светового. Процессор LED-экрана, скалер, коммутатор — каждый добавляет кадры.
Практика: измерьте разницу (снимите на камеру вспышку света и кадр видео
одновременно) и компенсируйте, задержав свет на нужное число кадров.
Cache-подобная задержка на CHOP делается элементарно, и это честнее,
чем спорить о том, кто виноват.
Как измерить
- Камера с высокой частотой съёмки (телефон 240 fps годится).
- Снять одновременно источник события (хлопок, кадр на экране) и реакцию света.
- Посчитать кадры между ними.
Это единственный способ получить число вместо ощущения.
Несколько машин
Если света несколько машин, они расходятся между собой. Лечение:
- общий таймкод для всех;
- состояние считается из времени, а не накапливается;
- проверка синхронности прогоном с одинаковой картиной на всех.
Не гонитесь за нулём. Приведите расхождение к паре кадров и займитесь чем-нибудь более полезным.