В моей компании в настоящее время мы ищем решение для обогащения данного видеопотока (который транслируется через RTMP) с удаленной веб-камеры некоторой динамической информацией, такой как текущая дата/время, специальные значения показателей, которые доступны на сервере или самые последние записи в базе данных.
По сути, мы хотим добиться простого, динамичного отображения на экране, как, например, используют телевизионные станции. Затем измененный поток следует повторно транслировать, например, для просмотра в VLC Player или на YouTube.
На данный момент я пришел к следующим идеям:
Использование OBS с некоторыми собственными скриптами и плагинами - невыгодно, потому что мы хотели бы запускать решение на высокопроизводительном сетевом сервере 24/7 без графического интерфейса. По сути, мне нужна версия OBS, полностью основанная на командной строке.
Использование FFmpeg: я знаю, что доступны текстовые фильтры, но они в основном статические (или периодически опрашивают файл с текстом) и не допускают никаких изменений дизайна, кроме шрифта, размера шрифта и цвета. Было бы здорово, если бы был какой-то способ наложения представления браузера Webkit на поток, потому что это позволило бы нам создавать наложения в HTML5 и CSS и использовать технологию WebSocket для обновления данных.
Оверлей можно захватить с помощью PhantomJS, но как нам объединить его с потоком и будет ли он достаточно быстрым для рендеринга 30 кадров в секунду?
Есть ли дополнительные (желательно с открытым исходным кодом) инструменты, которые мы могли бы использовать? Какой была бы наилучшая стратегия для реализации этого без покупки дорогостоящего программного обеспечения для телевещания?
Логан
Лиам Мартенс
Джейсон Конрад