Каков наилучший способ одновременной трансляции потоков нескольких вещателей с использованием RTMP-модуля Nginx? Рассматривая использование Docker, но это кажется излишним - PullRequest
0 голосов
/ 15 апреля 2020

Похоже, одновременная трансляция потока RTMP для одного пользователя так же проста, как создание конфигурации сервера RTMP в моем файле nginx .conf и использование директивы pu sh для передачи потока pu sh в другие RTMP социальных сетей. url, но что было бы лучшим способом сделать это, если у меня есть несколько пользователей, которым необходимо передавать свои данные на свои собственные учетные записи в социальных сетях?

Вот возможное решение, о котором я могу подумать:

  1. Используйте docker для создания нескольких контейнеров с Nginx RTMP, установленным для каждого подписавшегося. Затем я мог бы редактировать и управлять отдельными конфигурациями сервера RTMP и перезагружать конфигурацию, чтобы каждый из них мог начать потоковую передачу. Это звучит как большая нагрузка.

  2. Если это возможно, я мог бы настроить несколько конфигураций RTMP-сервера для каждого пользователя в одной среде (с включенными сайтами) и перезагрузить конфигурацию без NGINX, но использование разных портов не кажется идеальным, и я чувствую, что если что-то случится, пока сервер перезагружает конфигурацию, есть вероятность того, что каждый человек, который транслирует потоковое соединение, разорвет свое соединение. Редактировать: О включенных сайтах не может быть и речи, поскольку они должны находиться в пределах root контекста (только nginx .conf) согласно https://github.com/arut/nginx-rtmp-module/issues/1492

  3. Отобразить каждому пользователю RTMP директивы pu sh, используя их ключ потока, а затем переслать этим пользователям социальные сети?

Есть мысли?

Вот мой пример конфигурации одного сервера:

rtmp {
        server {
                listen 1935;
                chunk_size 4096;

                application live {
                        live on;
                        record off;
                        push rtmp://facebook/STREAM KEY HERE;
                        push rtmp://youtube/STREAM KEY HERE;
                }
        }
}

Я новичок в RTMP, если вы еще этого не подобрали: P

...