LTC и MTC – это основные форматы при работе с синхронизацией по времени. Чуть позже мы с вами еще вернемся к вопросу таймкода и разберем несколько альтернативных интерфейсов для кодирования и передачи времени.
EVENT SYNC PROTOCOLS
Поговорим теперь о протоколах, которые передают не время, а сообщения. Они обеспечивают синхронизацию по определенным событиям, а не по времени (в этом случае постоянная синхронизация отсутствует). В начале 70-х годов, в эру зарождения компьютерных технологий, разные компании экспериментировали и придумывали все новые и новые стандарты передачи данных, увеличивая скорость, надежность и дальность их передачи. К этому времени шоу-индустрия нуждалась в более продвинутом и функциональном протоколе синхронизации, так как LTC было уже недостаточно. Настало время появления на свет новых интерфейсов, которые сделали определенный прорыв в шоу-индустрии.
MIDI note / MIDI CC / MIDI PC
Как я уже говорил, новые разработки в мире синхронизации зачастую приходили из музыкальной индустрии. В конце 70-х годов особенное распространение получили музыкальные синтезаторы. Это были электрические музыкальные устройства, которые модулировали определенные звуки, управляемые напряжением.
Для каждой тональности звука существовал свой генератор. Модель каждого синтезатора характеризовалась эффектом или звуком, который она могла модулировать. В те времена рабочее место музыканта состояло из множества различных синтезаторов и управлять всем этим было очень непросто. Потребности росли – и в начале 80-х годов активно развивающиеся технологии в мире электроники подсказали решение этой проблемы. Был сделан шаг в сторону цифрового программного управления. Компании, производившие синтезаторы, смогли удачно договориться о разработке и поддержке единого стандарта интерфейса управления синтезаторами, первая спецификация которого появилась в 1982 году. Смысл заключался в разделении звукообразующего модуля и модуля управления, которые соединялись между собой по цифровому каналу. Протокол, разработанный для этих целей, передавал состояния нажатия клавиши.
Позже его функционал расширили большими возможностями. Благодаря такой системе музыкант мог с одной клавиатуры управлять сразу несколькими синтезаторами. Появилась возможность записывать и воспроизводить сыгранную мелодию. Сложно переоценить влияние нового протокола на музыкальную и шоу-индустрию в целом.
Дамы и господа, позвольте мне представить вам интерфейс синхронизации MIDI Musical Instrument Digital Interface. Несмотря на свой приличный возраст, MIDI до сих пор широко используется в разных направлениях шоу-индустрии.
Язык MIDI состоит только из команд управления и параметров этих команд. Команды в языке MIDI называются сообщениями. Сообщения разделяются на два основных типа: одни управляют звукообразованием, то есть говорят, какую ноту и как громко играть, вторые выполняют служебные функции, то есть регулируют изменения настроек тона генератора и синхронизации.
Сообщения первого типа называются сообщениями канала (Channel Messages).
Сообщения второго типа называются системными (System Messages).
Сообщения канала, в свою очередь, делятся на голосовые (Channel Voice Messages) и сообщения режима канала (Channel Mode Messages).
Системные сообщения делятся на общесистемные (System Common Messages), сообщения реального времени (System Real Time Messages) и эксклюзивные сообщения (System Exclusive Messages).
На изображении выше вы можете увидеть, какой MIDI-протокол к какому типу относится.
При работе непосредственно с MIDI-протоколом мы неоднократно встретим такой параметр, как MIDI Channel – программный канал передачи сообщений. Всего может быть 16 каналов. Этот параметр применим только к сообщениям группы Channel, соответственно, каждое сообщение MIDI note, MIDI CC и MIDI PC несет информацию о том, к какому каналу оно принадлежит. Каналы нужны для разделения в одном потоке нот разных инструментов. Это позволит нам отправить одновременно две одинаковые MIDI-ноты, но для генерации разных музыкальных инструментов.
MIDI note
В сообщении MIDI note содержатся три байта, в которых закодирована информация о номере канала, ноты и ее состояния. Нота может быть активна (Note on) или неактивна (Note off). Каждая нота имеет свой определенный номер – от 0 до 127. Каждый номер соответствует определенной ноте в определенной октаве. Для синхронизации устройств эти ноты могут передавать разные события, с которыми нужно синхронизироваться. Только в отличие от музыкального устройства, принимающее оборудование не генерирует звук, а выполняет определенное действие.
К примеру, можно настроить на световом пульте и на мультимедиа-сервере следующее: при получении ноты до первой октавы первого канала необходимо запустить световую программу и видеоконтент. При получении по MIDI этой ноты мультимедиа-сервер и световой пульт запустят свои программы синхронно. Особенность такого способа в том, что при большом количестве разных команд MIDI note можно запутаться в обозначениях. К тому же при изменении шоу, перемещении CueList внутри пульта нужно следить за ссылками MIDI-команд: будут ли они выполнять то, что нам нужно.
MIDI CC / MIDI PC
Сообщения MIDI CC (Control Change) и MIDI PC (Program Change) очень похожи на сообщения MIDI note. Сообщения этого типа кодируются тремя байтами, где также содержится информация о канале, номере параметра и его состоянии. Используются они для изменения программы с набором инструментов воспроизведения, а также других настроек синтезатора.
Чаще всего при помощи сообщений MIDI CC и MIDI PC производят синхронизацию линейных параметров. К примеру, уровень фейдера или регулятора на MIDI-контроллере. Используя эти сообщения, вы можете передать состояния 128 параметров управления, где каждый канал имеет диапазон от 0 до 127.
MSC (MIDI Show Control)
В определенный момент простого звукового MIDI протокола стало недостаточно для театрально-концертных нужд, и встал вопрос о создании более специализированного протокола управления.
К концу 1989 года Charlie Richmond организовал рабочую группу в составе MMA (MIDI Manufactures Association) и создал общий форум на электронной доске USITT (The United States Institute for Theatre Technology). Созданный в результате проект стандарта был утвержден MMA и JMSC (Japanese MIDI Standard Committee) и 25 июля 1991 года превратился в «Рекомендованную практику RP-002», или иначе – в MIDI Show Control версии 1.0.
Сообщения MIDI Show Control относятся к категории универсальных эксклюзивных сообщений реального времени (Universal Real Time System Exclusive).
В спецификации MSC используется терминология Controller и Controlled Device. Устройство, которое генерирует MSC сообщения, называется Controller, обычно это компьютер со специализированным софтом и MIDI картой. Принимающие устройства, световые пульты, медиа серверы и остальные исполняющие контроллеры— это Controlled Device.
Особенность MSC в том, что сообщения этого формата имеют определенные категории. Они делятся на основные (General Categories) и дополнительные подкатегории. Также есть особая категория All-types, сообщения этого типа транслируются на все типы контроллеров. К общим категориям относятся свет, звук, машинерия, видео, проекция, спецэффекты и пиротехника.
Ко всему этому в MSC сообщении передается информация об устройстве, которое должно получить команду. Каждое устройство внутри одной категории имеет свой собственный ID. Выставляется он вручную в настройках принимающего контроллера.