Новая версия RTMPMiniServer. Передача UHD-видео между континентами

Elizaveta Neupokoeva
GaraninApps(RU)
Published in
3 min readFeb 6, 2019

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

Всё это было учтено и исправлено в новой версии RTMPMiniServer 1.2.

теперь мы совместимы с камерой Mevo.
… и устройствами от DJI

Основные новшества в версии 1.2:

  • улучшена совместимость со стриминг-девайсами (Mevo, DJI и другие)
  • уменьшена задержка. в локальной сети достижимо значение ~300ms
  • исправлены баги и улучшена стабильность программы
  • совместимость с потоком 4K@60 (об этом подробнее ниже)

Проблема с 4K@60fps

Большинство наших пользователей используют потоки FullHD@30 или FullHD@60. Однако, в последнее время наметился тренд на передачу более высокого формата - 4K@60, с которым, как оказалось, предыдущая версия программы не справлялась. Даже на мощном компьютере 4K обрабатывался максимум в 40 fps .

Стоит отметить, что мы также получали сообщения, что и альтернативные решения имеют определённые сложности с обработкой 4K@60 (хотя с 4K@25 у всех было в порядке). Поэтому решению этой проблемы мы уделили много времени и сил. Мы долго тестировали программу на 4K@60 потоках, искали «узкие» места, и в итоге добились того, что новая версия способна обрабатывать поток такого формата.

В качестве демонстрации новой версии мы решили сами проверить и передать поток 4K@60 между континентами. Для имитации студии мы арендовали сервер в Северной Вирджинии у Amazon, и там развернули RTMPMiniServer и NDI Studio Monitor для просмотра NDI-потока.

В качестве источника у наших друзей в Москве был установлен vMix с которого они передавали поток. Для контроля задержки в поток был добавлен таймер. То что происходит на сервере мы видели через Remote Desktop.

Общая схема приведена ниже:

схема для теста
результат

Как вы видите задержка на потоке 4К@60 составляет около одной секунды. И заметим — это между континентами!

И так этим тестом мы показали, что возможно передавать 4K@60 поток на дальние расстояния с достаточно малой задержкой и на выходе получать NDI для дальнейшей обработки.

На данном этапе идёт бета-тестирование и RTMPMiniServer можно попробовать бесплатно: http://garaninapps.com/rtmpminiserver

Особую благодарность выражаем сообществу AVStream (телеграмм чат)и лично Сергею Корнееву за помощь в организации теста.

--

--