Читать книгу Sync a New Level of Show - Roma Robot - Страница 22

ALTERNATIVE SYNC PROTOCOLS
OSC Timecode

Оглавление

OSC Timecode появился из среды объектно-визуального программирования нодами (Node5). Как яркий пример такого программного обеспечения, можно привести VVVV и TouchDesigner. Так как протокол OSC очень прост в использовании, то очень часто программистами он используется для передачи кадров таймкода между компьютерами и своими серверами. Этот способ получил популярность по двум причинам.

• Для передачи такого таймкода не нужно никакого специализированного оборудования, наподобие звуковых и MIDI карт.

• Ноды (Node6) и библиотеки для работы с протоколом OSC присутствуют во всех подобных программных средах разработок. Для работы с другими протоколами синхронизации, базирующимися на технологии Ethernet, подобными RTP-MIDI, TCNet и ArtNet Timecode, программистам необходимо писать на низкоуровневом языке собственные ноды для расшифровки сообщений этих протоколов, что зачастую является большой проблемой, так как необходимо знать на более высоком уровне языки программирования. В случае с OSC подобного не требуется.

Так как OSC является протоколом синхронизации, в котором нет четкого определения самих сообщений, то производители программного обеспечения и оборудования сами определяют их формат. В принципе, любой программист, работая на любой платформе, может придумать свои собственные OSC сообщения для передачи данных синхронизации.

Если мы вспомним суть работы любого таймкода, изученного нами ранее, то увидим, что таймкод – это набор сообщений, передаваемых с определенной частотой, несущих в себе один кадр таймкода, который содержит абсолютное значение времени. В зависимости от протокола, с сообщением времени может передаваться дополнительная информация.

Кадр OSC Timecode представляет из себя одно OSC сообщение, где аргументом является беззнаковая переменная типа Int32, в которой хранится информация таймкода одного кадра. Адрес такого сообщения не регламентирован, в зависимости от каждого проекта или программиста, он может быть придуман произвольно. Самый распространенный и простой адрес – /timecode/. При необходимости использовать независимые источники тайм кода в адрес добавляют номер источника или устройства.

Хочу обратить внимание, что по сути OSC Timecode никак и никем не стандартизирован, поэтому и адреса, и даже форматы аргументов в OSC Timecode сообщениях могут различаться в зависимости от программы, особенно в кастомных. Поэтому информация в этой главе лишь для понимания сути этого протокола таймкода. Если вам придется работать с таким типом протокола, то обязательно уточняйте ключевые параметры таких OSC сообщений.

5

Node – это программный логический блок, который выполняет определенные задачи, извлечение данных из протоколов, логические вычисления, вывод данных и информации.

6

Node – это программный логический блок, который выполняет определенные задачи, извлечение данных из протоколов, логические вычисления, вывод данных и информации.

Sync a New Level of Show

Подняться наверх