Прямая трансляция с синхронным переводом на несколько языков при помощи OBS и Wowza Streaming Engine.

2021-04-18 14:37:00

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

В данной статье мы рассмотрим методику организации трансляции с синхронным переводом средствами программного энкодера OBS Studio и медиасервера Wowza Streaming Engine. В качестве исходных данных принимаем персональный компьютер с установленным OBS и картами захвата, обеспечивающими прием как основного видеопотока с оригинальным звуковым рядом, так и дополнительных звуковых потоков с синхронным переводом на два дополнительных языка. На стороне сервера трансляции установлен Wowza Streaming Engine версии не ниже 4.7.7 .

При открытии интерфейса OBS Studio для трансляции нам доступны три источника:

  • MainStream - видеопоток с оригинальным звуковым рядом;
  • Language1 - звуковой поток с синхронным переводом на 1й язык;
  • Language2 - звуковой поток с синхронным переводом на 2й язык;
  • Первое, что нам необходимо сделать - переместить мышь в область микшера звука, нажать правую кнопку и выбрать меню "Расширенные свойства аудио".

    На открывшемся экране выбираем область "Звуковые дорожки" и помечаем галочкой номер дорожки для каждого из источников звука. Для каждого из источников галочка должны стоять только одна иначе звуковые дорожки будут микшироваться.

    В результате вышеописанных действий нами получен видеопоток с тремя звуковыми стереодорожками, каждая из которых используется для одного языка перевода. Теперь наша задача состоит в трансляции полученного потока на Wowza сервер по протоколу SRT. И для этого на нужно использовать функцию "Запись" , что совсем неочевидно. Для настройки записи сначала необходимо в меню "Настройки" открыть пункт "Вывод".

    В нем выбрать вкладку "Запись" . В ней указать тип вывода "ffmpeg" , свои URL и UDP порт Wowza сервера в формате srt://wowza.wowza.com:10000 , формат контейнера mpegts. Выбрать галочкой "Все кодеки. Даже потенциально несовместимые" и указать кодеки h.264 для видео, aac для audio. Отметить галочкой звуковые дорожки для трансляции : 1, 2, 3 в нашем примере с тремя языками. Далее сохраняем настройку и закрываем экран "Вывод".

    Для начала трансляции нажимаем "Начать запись".

    На стороне Wowza сервера принять поток SRT нужно запустив .stream файл с типом SRT. Более подробно это описано в нашей статье: https://pwi.ru/rus/resources/view/push-publish-srt-to-wowza. Но Wowza принимает поток SRT только с одной звуковой дорожкой. И в отличии от MediaCaster типа RTP, несколько раз запустить прием одного и того же SRT поток (указав номер PID звуковой дорожки в опциях .stream файла) не получится.

    Обойти данное ограничение вам позволит модуль разработанный нашей компанией PWI Multilingual streaming Addon for Wowza Streaming Engine. При использовании данного модуля входной SRT поток с несколькими языковыми дорожками будет преобразован в HLS поток с возможностью выбора языка перевода в любом HLS плеере.