Синхронизация. Новый уровень шоу. V2. NETWORK. Как работает OSC (Open Sound Control)


Network.jpg


Роман Вакулюк
www.jlightmedia.com


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


Для передачи данных OSC использует транспортный протокол UDP и TCP. Поэтому при передаче и приеме сообщений мы должны указывать порт данных и IP-адрес клиента и сервера.
OSC очень похожи на MSC-сообщения. Отличие в том, что сами сообщения и адрес клиента не регламентируются протоколом, как в MSC. В OSC регламентируется лишь правило описания адреса и сообщения. Любой производитель и программист может придумать свои наборы сообщений и передать их через OSC.

Итак, мы хотим с одного компьютера через OSC отправить сообщение на другой компьютер. Для этого нужно указать в сообщении IP-адрес получателя и его порт. Обозначение этих параметров зависит от каждого софта отдельно.
 
Хорошо, OSC-сообщение мы доставили в нужный порт, и программа клиента прочитала это сообщение. Но как же программе понять, к чему применить это сообщение? Для этого OSC-сообщение содержит адрес назначения внутри программы клиента. Это очень похоже на параметр назначения MSC-сообщения, как CueList или Cue. Только, как я уже сказал выше, OSC не имеет жесткой привязки к синтаксису адреса, как в MSC, но тем не менее мы должны соблюдать правила описания адреса, которое использует OSC, а именно URL (Uniform Resource Locator).
Эту схему описания адреса пути вы применяете каждый раз, когда пользуетесь интернет-браузером, чтобы попасть в конкретное место на сайте.

URL.jpg

Эти пути назначения сообщения могут быть разными – в зависимости от функционала, который заложил конкретный производитель. Если вы хотите отправить OSC-сообщение на световую консоль ETC Eos, то его путь должен начинаться с “/eos”, далее нужно указать группу контролируемых параметров пульта (например, “/fader”), далее нужно указать номер фейдера “/1” – и в итоге мы получим полный путь к конкретному фейдеру, который будет выглядеть так: “/eos/fader/1/”. Так же мы можем указать путь к группам, к спискам сцен и другому содержимому пульта.

Идем дальше. Теперь – по аналогии с MSC – вы можете предположить, что далее в сообщении OSC передается команда. Верно, но тут есть своя особенность: в OSC-сообщении передается не команда, а аргумент. В чем же их отличие? Аргумент в OSC-сообщении - это некий контейнер, который передает данные определенного типа. В последней версии OSC 1.1 вы можете использовать следующие типы данных:

Int32
Integer 32bit, этот тип данных может хранить в себе натуральное число в диапазоне от -2 147 483 648 до 2 147 483 647. Этот тип используют, когда нужно передать целочисленный номер:  для идентификации номера страницы или фейдера, так как в пульте не существует фейдеров и страниц с  дробным номером.
Float32
Float 32bit  может хранить в себе действительное число c плавающей запятой в диапазоне от -3.4*1038 до +3.4*1038. Этот способ выражения действительного числа позволяет закодировать более точные данные. Часто этим типом данных кодируют уровни фейдеров, вы можете определить диапазон фейдера от нуля до единицы, а вот точность позиционирования фейдера в этом диапазоне может быть огромной, но зачастую производители ограничиваются двумя знаками после запятой.

String
Передает строку, закодированную в формате ASCII. С помощью этого типа вы можете передать имя объекта или целое сообщение. Очень часто это используется в системах дистанционного управления по OSC. К примеру, пульт может передать по OSC информацию об имени кьюлиста, который назначен на конкретный фейдер.

Blob
Binary Large Object передает оригинальный массив байтов. Очень часто его используют для передачи изображений, звука и видео.

Bool
Boolean – это логический тип данных, который может передать либо ложь, либо истину. Самое распространенное его использование – это описание состояния переключателя, который может быть включен (истина) или выключен (ложь). На самом деле в типологии OSC этот тип данных разделен на две части, каждая из которых несет в себе конкретное состояние. Я объединил их, дабы облегчить понимание этих типов.

Impulse
Это не совсем тип данных как таковой, поскольку он не несет в себе информацию о состоянии аргумента, он инициализирует событие. В описании OSC-протокола он обозначается как “Bang” и часто применяется, когда вам нужно передать информацию о действии (скажем, об открытии страницы или любого другого события) без необходимости передачи аргумента.
 
Null
Это пустой тип данных, который не содержит в себе ничего. Используется довольно редко, но как дополнительная опция присутствует.

Итак, давайте еще раз вспомним, из чего состоит OSC-сообщение. Первая часть – это IP-адрес клиента и номер его порта, на который нужно доставить OSC-сообщение. Вторая его часть – это адрес. И третья – аргумент. Схематически это будет выглядеть следующим образом:

OSCTransport1.jpg

Как видно на схеме, чтобы передать состояние кнопки Flash фейдера номер один на световую консоль Eos, мы должны указать сетевой адрес и порт пульта (192.168.1.101:5004) Далее нужно указать адрес необходимой кнопки, состояние которой мы хотим передать (/eos/fader/1/flash), и  в итоге передать аргумент типа Boolean: если кнопка должна быть нажата, то аргумент равен True, если кнопка отпущена, то аргумент равен False.

Резюмируем особенности OSC-протокола
OSC-протокол базируется на интерфейсе передачи данных Ethernet. А это дает сразу несколько преимуществ. Для передачи такого сигнала мы можем использовать стандартное сетевое оборудование, которое намного распространеннее и доступнее, чем специализированные карты синхронизаций. По Ethernet мы можем передать сигнал практически на неограниченное расстояние, используя при этом разные способы передачи: как по радиоканалу, так и по оптике, и по витой паре.

OSC использует протокол передачи данных UDP, который обязывает указывать IP-адрес и порт клиента. Что дает  множество преимуществ. К примеру, мы можем на одном сетевом клиенте синхронизировать несколько приложений одновременно, используя один и тот же IP-адрес, но при этом разные порты. Это также позволяет нам настраивать сложные маршруты, делить OSC-сигнал или получать на один клиент сообщения из разных источников без использования дополнительного оборудования, так как этот функционал уже заложен в сетевых протоколах группы TCP/IP.

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

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

Prolight+Sound Frankfurt 2020
Bose ShowMatch: на пути в райдер

Bose ShowMatch: на пути в райдер

Осенью 2018 года команда Bose Professional Russia провела серию обучающих тренингов по применению прокатного массива c технологией DeltaQ

Синхронизация. Часть VIII RTP-MIDI (Apple MIDI)

Синхронизация. Часть VIII RTP-MIDI (Apple MIDI)

RTP (Real-time Transport Protocol) – протокол высокого уровня, который базируется на UDP, но при этом имеет свои особенности, которые были специально разработаны для стриминга аудио и видео.

Российский производитель  «Театральные Технологические Системы»

Российский производитель «Театральные Технологические Системы»

Виталий Якунин, основатель, генеральный директор компании  «Театральные Технологические Системы», провел для «Шоумастера» экскурсию по отделам и цехам, рассказал о разработках и планах компании, познакомил со специалистами.

Bose ShowMatch: на пути в райдер

Bose ShowMatch: на пути в райдер

Осенью 2018 года команда Bose Professional Russia провела серию обучающих тренингов по применению прокатного массива c технологией DeltaQ

Matrex – здание для производства идей

Matrex – здание для производства идей

Общественно-деловой центр Matrex в Сколково по праву станет одним из новых символов Москвы, причем не только в архитектурном, но и в техническом аспекте. Новейшие мультимедийные системы и решения, опережающие время, делают Matrex уникальным.

«Торнадо» в день «Нептуна»

«Торнадо» в день «Нептуна»

2019 год стал для компании Guangzhou Yajiang Photoelectric Equipment CO.,Ltd очень богатым на новинки световых приборов. В их числе всепогодные светодиодные поворотные головы высокой мощности: серии Neptune, выпускаемые под брендом Silver Star, и Tornado – под брендом Arctik.

Matrex – здание для производства идей

Matrex – здание для производства идей

Общественно-деловой центр Matrex в Сколково по праву станет одним из новых символов Москвы, причем не только в архитектурном, но и в техническом аспекте. Новейшие мультимедийные системы и решения, опережающие время, делают Matrex уникальным.

Matrex – здание для производства идей

Matrex – здание для производства идей

Общественно-деловой центр Matrex в Сколково по праву станет одним из новых символов Москвы, причем не только в архитектурном, но и в техническом аспекте. Новейшие мультимедийные системы и решения, опережающие время, делают Matrex уникальным.

Большой сет «Маленького человека»

Большой сет «Маленького человека»

Всему, что знаю, я научился самостоятельно. Читал, наблюдал, пробовал, экспериментировал, совершал ошибки, переделывал заново. Никто меня не учил. В то время в Литве не было никаких специальных учебных заведений, в которых обучали бы работе со световым оборудованием. Вообще, я считаю, что научиться этому нельзя. Чтобы стать художником по свету, нужно иметь что-то такое «внутри» изначально. Можно научиться работать с пультом, программированию, можно выучить все технические характеристики, но вот научиться творить нельзя.

Matrex – здание для производства идей

Matrex – здание для производства идей

Общественно-деловой центр Matrex в Сколково по праву станет одним из новых символов Москвы, причем не только в архитектурном, но и в техническом аспекте. Новейшие мультимедийные системы и решения, опережающие время, делают Matrex уникальным.

Bose ShowMatch: на пути в райдер

Bose ShowMatch: на пути в райдер

Осенью 2018 года команда Bose Professional Russia провела серию обучающих тренингов по применению прокатного массива c технологией DeltaQ

Мониторинг. Урок 18. Активные контрольные комнаты

Мониторинг. Урок 18. Активные контрольные комнаты

Не следует путать новые возможности дизайна активных помещений с «поддерживаемой реверберацией», которая с 1950-х годов использовалась в Королевском фестивальном зале (Royal Festival Hall), а позже в студиях «Лаймхаус» (Limehouse Studios). Это были системы, использующие настраиваемые резонаторы и многоканальные усилители для распределения естественных резонансов до нужной части помещения.

Синхронизация. Часть VIII RTP-MIDI (Apple MIDI)

Синхронизация. Часть VIII RTP-MIDI (Apple MIDI)

RTP (Real-time Transport Protocol) – протокол высокого уровня, который базируется на UDP, но при этом имеет свои особенности, которые были специально разработаны для стриминга аудио и видео.

Российский производитель  «Театральные Технологические Системы»

Российский производитель «Театральные Технологические Системы»

Виталий Якунин, основатель, генеральный директор компании  «Театральные Технологические Системы», провел для «Шоумастера» экскурсию по отделам и цехам, рассказал о разработках и планах компании, познакомил со специалистами.

Российский производитель  «Театральные Технологические Системы»

Российский производитель «Театральные Технологические Системы»

Виталий Якунин, основатель, генеральный директор компании  «Театральные Технологические Системы», провел для «Шоумастера» экскурсию по отделам и цехам, рассказал о разработках и планах компании, познакомил со специалистами.

Кто формирует райдер?

Кто формирует райдер?


Тема нашей сегодняшней публикации «Как и кто формирует райдерность оборудования».
Это совместный проект «Клуба прокатчиков шоу-технологий» (см. страницу на Фейсбуке)
и сайта www.show-master.ru. На этих ресурсах, а также в сети Colisium были проведены опросы,
их результаты – ниже. Участники «Клуба прокатчиков шоу-технологий» активно обсуждали эту тему.
Мы предложили ответить на несколько вопросов специалистам, которые уже не один годв нашем бизнесе,
и их мнение, безусловно, будет интересно нашим читателям. 

Прокат как бизнес. Попробуем разобраться

Прокат как бизнес. Попробуем разобраться

Андрей Шилов: "Выступая на 12 зимней конференции прокатных компаний в Самаре, в своем докладе я поделился с аудиторией проблемой, которая меня сильно беспокоит последние 3-4 года. Мои эмпирические исследования рынка проката привели к неутешительным выводам о катастрофическом падении производительности труда в этой отрасли. И в своем докладе я обратил внимание владельцев компаний на эту проблему как на самую важную угрозу их бизнесу. Мои тезисы вызвали большое количество вопросов и длительную дискуссию на форумах в соцсетях."

Форум

Словарь

Система двухполосного усиления

- система, в которой сигнал микшера разбивается электронным кроссовером на два частотных диапазона, каждый из которых усиливается соответствующим усилителем и воспроизводится своими динамиками. Способствует повышению качества звука, сниж...

Подробнее