宝塔面板搭建RTMP直播服务器(在Nginx上安装nginx-rtmp-module模块)
- 一、安装nginx-rtmp-module模块
- 二、修改安装文件nginx.sh
- 三、编译安装nginx-rtmp-module
- 四、准备网站,进行配置
- 五、Nginx配置(rtmp推流配置)
- 六、网站配置(拉流)
- 七、客户端(推流、拉流)
-
-
-
-
- 1、推流
- 2、拉流
-
-
-
- 八、验证推流拉流是否成功
-
-
-
-
- 1,验证推流
- 2,验证拉流
-
-
-
一、安装nginx-rtmp-module模块
打开宝塔终端,输入命令:git clone https://github.com/arut/nginx-rtmp-module 下载的文件所在位置
二、修改安装文件nginx.sh
在/www/server/panel/install/目录下找到nginx.sh文件打开,在446行左右,添加–add-module=/root/nginx-rtmp-module 完整图片如下
三、编译安装nginx-rtmp-module
打开终端输入命令:sudo sh /www/server/panel/install/nginx.sh install 1.26.3 注:nginx版本1.26.3,可自己选择需要的版本下载安装。
四、准备网站,进行配置
新建站点,没有域名使用ip也可以,站点下面新建文件夹live 点击网站配置文件修改配置
第九行下面添加
#跨域
add_header 'Access-Control-Allow-Origin' '*' ;
#可以是你的网站域名也可以是*任何网站
add_header Access-Control-Allow-Methods "GET, POST, OPTIONS";
五、Nginx配置(rtmp推流配置)
在网站目录下新建文件夹hls,直播缓存文件目录。
开放1935端口(服务器和宝塔都开放),打开nginx配置文件,在第6行下面添加
rtmp {
server {
listen 1935; #端口,记得安全组/宝塔等防火墙放行
chunk_size 4000; #单个ts文件的大小,可以适当改小一点减少延迟,但会对服务器带宽/硬盘带来压力
application live { #rtmp推流请求路径
live on; #开启直播模式
hls on; #启用hls切片
hls_path /www/wwwroot/113.45.17.169_89/hls; #直播缓存文件目录
hls_fragment 5s;
}
}
}
六、网站配置(拉流)
location /hls {
types {
application/vnd.apple.mpegurl m3u8;
video/mp2t ts;
}
root /www/wwwroot/113.45.17.169_89;
}
七、客户端(推流、拉流)
1、推流
rtmp://113.45.17.169:1935/live/stream123
<live-pusher id='livePusher' ref="livePusher" class="livePusher" url="rtmp://113.45.17.169:1935/live/stream123" mode="SD" :muted="false"
:enable-camera="true" :auto-focus="true" @statechange="onPushStateChange" style="width:100%;height:70vh" />
2、拉流
http://113.45.17.169:89/hls/stream123.m3u8
<video id="myVideo"
src="http://113.45.17.169:89/hls/stream123.m3u8"
@error="videoErrorCallback" :danmu-list="danmuList" :autoplay="true" enable-danmu danmu-btn>
</video>
八、验证推流拉流是否成功
1,验证推流
查看推流缓存目录hls下是否生成了.m3u8文件及其他.ts文件
2,验证拉流
网站打开http://113.45.17.169:89/hls/stream123.m3u8,是否下载.m3u8文件 注意url端口,默认80端口,设置了其他端口要注意加上
uniapp直播推流拉流demo下载:https://download.csdn.net/download/wzc1220yyds/90873636
评论前必须登录!
注册