А сейчас предлагаю посмотреть, как устроено приложение для работы с BLE-MIDI в MAC OS.
Чтобы попасть в настройки BLE-MIDI в MAC OS, так же, как и в случае с RTP-MIDI, нам нужно открыть окно MIDI Studio. Напомню, для этого нужно зайти в папку Applications и открыть приложение Audio MIDI Setup. Если перед вами откроется окно настроек аудио, без окна MIDI, в панели меню откройте Window и в выпадающем меню нажмите на опцию Show MIDI Studio. Перед вами откроется окно со всеми MIDI картами, которые подключены к системе, и также вы увидите иконки для доступа к дополнительным меню для работы с технологиями передачи MIDI.
Чтобы открыть меню настройки технологии BLE-MIDI, необходимо нажать на иконку Bluetooth в правой части панели управления.
Как мы видим, здесь все довольно просто. В поле NAME мы можем задать имя BLE-MIDI подключения, которое будут видеть остальные клиенты. Чтобы начать «рекламирование» своего подключения, достаточно нажать кнопку Advertise справа от поля ввода NAME. Ниже мы можем увидеть список устройств, которые также «рекламируют» свое подключение, и также тех клиентов, которые уже подключились к нам. Если мы хотим подключиться как клиент к серверу, нам нужно просто нажать на кнопку Connect напротив того устройства, к которому мы хотим подключиться.
Резюмируя особенности BLE-MIDI протокола, можно сказать:
• Основное предназначение BLE-MIDI – организация простой синхронизации между несколькими устройствами.
• BLE-MIDI – это исключительно беспроводная технология передачи MIDI сообщений, ограниченная дистанцией работы Bluetooth, в среднем это до 10 метров.
• Чтобы увидеть и подключить BLE-MIDI устройства, необходимо приложение, которое поддерживает работу с этим интерфейсом передачи данных.
• Пакеты данных, передаваемые по BLE-MIDI, имеют в заголовке маркеры времени, что позволяет принимающему устройству вычислить задержку на доставку и определить правильный порядок полученных пакетов данных.
• И также, благодаря технологии BLE-MIDI, сообщения поэтому протоколу передаются с минимальными задержками, что делает его вполне надежным и быстрым.
TC Net
Протокол TCNet был создан в 2004 году программистами компании TC Supply. Основное направление этой компании – создание программных продуктов для синхронизации шоу систем с DJ оборудованием, поэтому по большей части весь функционал этого протокола опирается на потребности клубной сферы. Базируется этот протокол на технологии передачи данных Ethernet.
Несмотря на то, что этот протокол синхронизации имеет ряд преимуществ при работе с таймкодом в сравнении с SMPTE, в профессиональной концертной индустрии он широко не используется. Но при этом в клубной сфере это один из самых функциональных протоколов для синхронизации.
По своей сути этот протокол очень схож с RTP-MIDI. Он также работает через транспортный протокол UDP, также каждое устройство рекламирует себя в сети, в одной сети также может быть несколько мастер устройств, и также может быть множество клиентов, которые могут сами выбирать, данные с какого сервера получать.
Если говорить об отличиях, то так как TC Net не был принят ни одной из официальных ассоциаций, то единственная компания, которая поддержала этот протокол, была Pioneer, в сравнении с RTP-MIDI, которую по итогу модернизировала компания Apple, чьи изменения впоследствии были приняты двумя ассоциациями MMA и JMSC. И также компания Apple включила поддержку этого протокола в свои операционные системы, что несомненно явилось решающим фактором в популяризации этого протокола.
Но пожалуй, основное отличие этих двух протоколов в том, что RTP-MIDI передает данные серийного протокола MIDI, а TC Net работает полностью со своими собственными данными. С одной стороны, это плохо, потому что этот протокол полностью несовместим со старыми системами, а с другой стороны, такой протокол передачи данных синхронизации не зажат рамками возможностей старых технологий.
Итак, давайте более подробно разберем, что может протокол TC Net. Несмотря на название самого протокола, он передает информацию не только о таймкоде, но и дополнительно метаданные.
Timecode
Как и следовало ожидать, это более усовершенствованная версия классического SMPTE таймкода.
• Через TC Net можно передать несколько источников таймкода.
• Скорость таймкода может изменяться в пределах 0%—200%.
• Направление таймкода может быть как вперед, так и назад.
Media Information
TC Net может передавать текущую информацию о медиа данных с каждого DJ проигрывателя.
• Трек и аудио метаданные.
• BMP и скорость воспроизведения.
• Данные для построения волновой формы трека.
• Название трека, альбома, исполнителя, изображение обложки альбома.
• Служебные сообщения для управления сторонними программами.
В общей сети TC Net выделяются три типа устройств.
Master
Этот тип устройства может предоставлять в сеть таймкод и отправлять дополнительные мета данные и команды управления.
Slave
Этот тип устройств может принимать данные таймкода, мета данные и команды управления, при этом Slave тип устройств может отправлять только команды управления.
Repeater
Этот тип устройств может принимать и отправлять все данные синхронизации и управления.
Позже мы с вами еще вернемся к этому протоколу, когда будем обсуждать возможные варианты синхронизации DJ оборудования с шоу системами.
ArtTimeCode
Скорее всего, вы уже не в первый раз слышите о такой компании, как Artistic License, и о протоколе передачи данных ArtNet, главная цель которого – передача данных серийного протокола DMX512 через сеть Ethernet. Но мало кто знает, что этот протокол также поддерживает передачу данных таймкода. Модификация протокола ArtNet для передачи таймкода называется ArtTimeCode, также многие для упрощения называют его ArtNet Timecode.
В отличие от предыдущего протокола, ArtNet Timecode передает только данные времени, но при этом он также поддерживает большие отклонения от скорости воспроизведения таймкода и его направления.
Технология передачи таймкода довольна проста и очень схожа с ArtNet протоколом.
• В сети есть только одно мастер устройство, которое может транслировать либо Broadcast, либо Unicast пакеты данных, все остальные клиенты принимают эти данные.
• Мастер устройство не знает, есть ли в сети хоть кто-то, кто может принять данные таймкода, и также мастер устройство никогда не узнает, если из сети пропал один из клиентов.
• В протоколе нет системы контроля корректности порядка доставленных пакетов данных, что не может гарантировать корректное время таймкода на конечном устройстве.
• Но из-за того, что этот протокол максимально прост, общее время задержки между мастер устройством и клиентом минимально.
Протокол ArtNet сейчас широко используется в шоу-индустрии, а вот его собрат ArtTimeCode из-за своих существенных недостатков так и не получил широкого применения в профессиональном оборудовании и программном обеспечении.
OSC Timecode
OSC Timecode появился из среды объектно-визуального программирования нодами (Node5). Как яркий пример такого программного обеспечения, можно привести VVVV и TouchDesigner. Так как протокол OSC очень прост в использовании, то очень часто программистами он используется для передачи кадров таймкода между компьютерами и своими серверами. Этот способ получил популярность по двум причинам.