使用Nginx RTMP模块同时广播多个广播电台流的最佳方法是什么?考虑使用Docker,但似乎有点过分

问题描述 投票:0回答:1

看起来像同时广播单个用户的RTMP流就像在我的nginx.conf文件中创建RTMP服务器配置并使用push指令将流推送到不同的Social Media RTMP url一样简单,但是最好的方法是如果我有多个用户需要将其数据流式传输到他们自己的社交媒体真实帐户,该怎么办?

这是我能想到的可能解决方案:

  1. 使用docker为注册的每个人创建安装了Nginx RTMP的多个容器。然后,我可以编辑和管理单独的RTMP服务器配置,然后重新加载配置,以便它们各自可以开始流式传输。不过,这听起来像很多开销。

  2. 如果可能,我可以在单个环境(启用站点)中为每个用户设置多个RTMP服务器配置,并在NGINX不关闭的情况下重新加载配置,但是使用不同的端口似乎并不理想,我觉得服务器重新加载配置时发生了某些情况,每个流传输的个人都有可能会丢失其连接。 编辑:启用站点似乎是不可能的,因为根据https://github.com/arut/nginx-rtmp-module/issues/1492]],它必须位于根上下文中(仅nginx.conf)。

  3. 使用他们的流密钥映射到每个用户RTMP推送指令,然后转发到该用户的社交媒体?

  4. 有什么想法吗?

    这是我的示例单服务器配置:

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

看起来像同时广播单个用户的RTMP流就像在我的nginx.conf文件中创建RTMP服务器配置并使用push指令将流推送到其他...一样简单。]

<<< [
在Github上检查以下项目,它完全满足您的需求:
https://github.com/jprjr/multistreamer
node.js nginx video-streaming streaming rtmp
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.