1. 背景
校内有不少用于直播的场景,例如大剧场演出,在各个教室同步观看;利用互联网的直播方式,推送和播放端会走一次公网再回来,造成延迟与卡顿,因此考虑使用局域网直播的方式。
2. 技术选型
经调研,采用nginx的rtmp模块,搭建rtmp的直播服务器,实现局域网内的直播。推送端可以直接使用obs推送,拉流的播放端,直接采用vlc播放器。此种选型的优点如下:
- nginx rtmp模块的性能较为稳定;
- 所有部分都是开源方案,免费;
3. 部署包含rtmp模块的nignx
本次部署在mac环境下,linux环境类似。
-
nginx官网下载nginx的官方安装包,并解压
curl -OL https://nginx.org/download/nginx-1.20.1.tar.gz tar xzvf nginx-1.20.1.tar.gz && rm nginx-1.20.1.tar.gz
-
准备pcre和openssl两个包用于编译
curl -OL https://ftp.pcre.org/pub/pcre/pcre-8.41.tar.gz tar xvzf pcre-8.41.tar.gz && rm pcre-8.41.tar.gz curl -OL https://www.openssl.org/source/openssl-1.1.0.tar.gz tar xvzf openssl-1.1.0.tar.gz && rm openssl-1.1.0.tar.gz
-
下载nginx rtmp模块源码
git cl