nginx-rtmp安装和测试
一、环境准备
- 安装 pcre-devel 和 openssl-devel
1
yum install -y pcre pcre-devel openssl openssl-devel
- 下载源代码包
1
2
3
4
5
6cd /opt mkdir nginx-rtmp cd nginx-rtmp mkdir nginx-deploy wget http://nginx.org/download/nginx-1.18.0.tar.gz git clone git@github.com:arut/nginx-rtmp-module.git
- 解压编译安装源代码包
1
2
3
4tar zxvf http://nginx.org/download/nginx-1.18.0.tar.gz cd nginx-1.18.0 ./configure --prefix=/opt/nginx-rtmp/nginx-deploy --add-module=/opt/nginx-rtmp/nginx-rtmp-module make && make install
二、nginx 配置
- 新增加以下的配置信息
1 |
|
- 在原来的http的配置内部,增加以下的配置信息
1 |
|
三、多视频播放(多房间推流)
在 rtmp 推流的地址基础上,增加 串流密钥(房间号),下图是使用 OBS 推流的设置页面, 100 为串流密钥(房间号),根据自己的需要设置
播放客户端在访问时,需要在 rtmp 推流的地址基础上,增加 串流密钥(房间号),才可以取得相应码流,以上面的设置为例,对应的取流地址为 rtmp://ip:1935/live/100
四、HLS 播放设置
参照上面多视频播放截图上中设置,将 rtmp 推流地址中的 live 替换成 hls,如下图所示
对应的HLS播放地址为 http://ip:1935/hls/100.m3u8
五、问题汇总
- 播放HLS流出现跨域访问 No Access-Control-Allow-Origin 的问题,参照上面 nginx配置 中的 HLS 部分的配置方式, /hls 对应的配置中,增加以下的以下的配置项:
1 |
|