NEWS LETTER

基于CentOS7搭建Nginx RTMP直播服务

Scroll down

前言

有时候需要用到 OBS 推流给朋友直播些内容,但是现有的直播平台基本都需要实名认证,并且直播间处于公开状态,考虑到我有公网 IP,干脆自己搭建 Rtmp 服务好了。

所需工具与环境

编译安装 Nginx 与 Rtmp 模块

1
2
3
4
# 依赖安装
yum install -y wget git
yum install -y pcre-devel zlib-devel openssl openssl-devel
yum -y install gcc gcc-c++ autoconf automake make
1
2
3
4
5
6
7
# 编译安装Nginx与Rtmp模块
wget http://nginx.org/download/nginx-1.18.0.tar.gz
tar -zxvf nginx-1.18.0.tar.gz
git clone https://github.com/arut/nginx-rtmp-module.git
cd /root/nginx-1.18.0
./configure --add-module=../nginx-rtmp-module --prefix=/usr/local/nginx --with-http_ssl_module
make && make install
1
2
3
4
5
6
7
8
9
10
11
# 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
# 启动Nginx服务
cd /usr/local/ngnix
./sbin/nginx
# 其它参数
# 停止Nginx服务
-s stop
# 重启Nginx服务
-s reload

安装完成后使用浏览器访问服务地址,如果你能看到 Welcome to nginx! 即代表安装成功

配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# 编辑Nginx配置文件
vim /usr/local/nginx/conf/nginx.conf
# 加入如下配置
rtmp {
server {
listen 1935; # 监听端口,RTMP默认端口为1935
chunk_size 4000;
application hls {
live on;
hls on;
hls_path /usr/local/nginx/html/hls; # 视频流存放地址,此路径需要读写权限
hls_fragment 5s; # 设置HLS片段长度
hls_playlist_length 15s; # 设置HLS播放列表长度
hls_continuous on; # 连续模式
hls_cleanup on; # 对多余的切片进行删除
hls_nested on; # 嵌套模式
}
}
}
#创建视频流存放文件夹
mkdir /usr/local/nginx/html/hls
chmod 777 /usr/local/nginx/html/hls
#重启Nginx服务
cd /usr/local/ngnix
./sbin/nginx -s reload

推流

使用 OBS 推流,串流密钥可自定义

拉流

拉流地址为:http://192.168.1.10/hls/test

其他文章
目录导航 置顶
  1. 1. 前言
  2. 2. 所需工具与环境
  3. 3. 编译安装 Nginx 与 Rtmp 模块
  4. 4. 配置
  5. 5. 推流
  6. 6. 拉流
请输入关键词进行搜索