Прямая трансляция с синхронным переводом на несколько языков при помощи 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 – видеопоток с оригинальным звуковым рядом;
  • Language 1 – звуковой поток с синхронным переводом на 1-й язык;
  • Language 2 – звуковой поток с синхронным переводом на 2-й язык;
  • Первое, что нам необходимо сделать, - переместить мышь в область микшера звука, нажать правую кнопку и выбрать меню «Расширенные свойства аудио».

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

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

    В нем выбрать вкладку «Запись». В ней указать тип вывода «ffmpeg», свои URL и UDP порт Wowza-сервера в формате srt://wowza.wowza.com:10000, формат контейнера mpegts. Выбрать галочкой «Все кодеки. Даже потенциально несовместимые» и указать кодеки h.264 для видео, aac для аудио. Отметить галочкой звуковые дорожки для трансляции: 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-плеере.