版本号 |
添加内容 |
修改时间 |
V1.0 |
新建 |
2021年12月30日 |
V1.1 |
增加网页播放 |
2021年12月31日 |
V1.2 | 增加是否可以多流和测试数据 | 2022年1月5日 |
目录
一、软件储备
1.推流软件:OBS
2.服务器流媒体软件:smart_rtmp
3.播放软件:Potplayer
二、服务器部署
2.1 部署windows环境(win2003或win7以上系统)
2.2 部署Linux环境(centos7.X以上)
2.3.部署需要windows和linux的安全组规则
三、推流准备
3.1 用OBS推流
四、播放(拉流)规则
五、播放(拉流)
六、其他材料:
6.1关于smart_rtmp git地址
6.2播放软件方案VLC②下载地址
6.3关于播放器官网地址:
6.4关于NAT设置
6.5关于无法推流拉流播放
6.6关于NAT内网无法播放
6.7关于是否可以推多流
6.8关于流量测试
七、关于浏览器播出
7.1自带播放器测试用
7.2手动设置做一个页面
八、关于点播、录像问题
九、关于和nginx_rtmp-module、nginx-http-flv-module功能分析
OBSStudio是一款视频直播录制软件,为用户提供了视频、文本、图像等的捕获录制功能。
OBS官网:Open Broadcaster Software | OBS
WINDOWS版本下载地址:
https://cdn-fastly.obsproject.com/downloads/OBS-Studio-27.1.3-Full-Installer-x64.exe
注:OBS支持Windows/linux/Mac(可从其他地方下载)
下载地址:
http://www.qiyicc.com/download/rtmpd.zip
注:文件內包含win/linux版本
支持用VLC或者potplayer,两个方案任选其一,没有什么太大的区别;
播放软件方案potplayer下载地址(可从其他地方下载)
https://545c.com/f/15911488-521156289-9c2f86
密码1234
https://potplayer.org/
系统支持WIN、linux
①rtmpd.zip压缩解压到桌面,再次找到smart_rtmpd_win压缩包,解压到桌面。
②修改connfg.XML文件
需要修改的内容如下
182.18.5.115:1935
<182.18.5.115:8554/rtsp>
<182.18.5.115:8080/http>
182.18.5.115:8181
182.18.5.115:8000
182.18.5.115
填写NAT里的地址;
如果开启SSL模式,请上传修改证书名称
③执行smart_rtmpd_win文件夹的smart_rtmpd.exe文件,直接点击开始即可
开终端(如 putty 或 Xshell),连接到该服务器。 通过 cd 转到 smart_rtmpd 所在目录,改connfg.XML文件,然后执行下方启动命令:(二选一) 启动命令 1: (这种启动方式,在关闭终端后,直播服务器就自动停止了) ./smart_rtmpd 启动命令 2: (这种启动方式,在关闭终端后,直播服务器依旧运行着) nohup ./smart_rtmpd (可通过 netstat -tunlp | grep 1935 查到使用1935端口的进程号,然后通过:kill+进程号 的方式停止服务)
推拉流需要一下端口,酌情开通处理
RTMP:1935(TCP)
RTSP:8554(TCP)
HTTP:8080(TCP)
HTTPS:8181(TCP)
SRT:9000(UDP)
打开OBS
①点击设置》②推流》③点击服务后面的自定义,在服务地址里输入上面NAT的地址》④串流密钥》⑤点击左侧输出选择分辨率码流》⑥点击确定》⑦返回界面后,点击开始推流
需要添加场景》添加来源(显示器采集或窗口采集或视频采集)
3.2 服务器日志
开始点击推流后,服务器日志
从刚才NAT地址中,我们可以选择播放
比如:
推流地址
rtmp://182.18.5.115:1935/live/cs01
那么同理,播放地址为(推拉流地址一模一样)
rtmp://182.18.5.115:1935/live/cs01
如果开启了8080端口,那么推流地址rtmp://182.18.5.115:1935/live/cs01
拉流地址
rtmp://182.18.5.115:1935/live/cs01
或
http://182.18.5.115:8080/live/cs01.m3u8
打开potplay,点击打开-》打开链接-》输入地址http://182.18.5.115:8080/live/02.m3u8
按TAB键盘,显示流信息
https://github.com/superconvert/smart_rtmpd
https://free.nchc.org.tw/vlc/vlc/3.0.16/win64/vlc-3.0.16-win64.exe
安装后,打开流媒体-》打开流——》输入地址——》点击播放
PotPlayer下载 - PotPlayer中文网
VLC: Official site - Free multimedia solutions for all OS! - VideoLAN
如果是Windows ,关闭防火墙,或者设置防火墙策略
如果是linux 同样关闭防护墙或者设置防火墙策略;关闭selinux
由于在内网服务器的配置是公网配置,所以需要修改服务器hosts配置!
比如在win上添加
172.16.19.5 182.18.5.115
可以,互不干扰。名字可以不一样;
推送地址格式如下(以rtmp为例):
rtmp://IP+端口/live/名字1
rtmp://IP+端口/live/名字2
播放地址:
rtmp://IP+端口/live/名字1
rtmp://IP+端口/live/名字2
清晰度(流量) | 普清1280*720 (码率在1000k至1400K)) |
标清1280*720( 码率1600k至2000K) |
高清1280*720 (码率3800k-4200K |
手机推流 | 0.32G | 0.32G | 0.32G |
服务器 | 0.39G | 0.54G | 0.46G |
拉流播放 | 0.9G | 0.814G | 0.96 |
如果推流后,实在不方便观看到视频,实际上文件夹內是有播放列表等参数的。
直接输入地址:http:/IP:端口/player.html
如下列地址:
http://182.18.5.53:8080/player.html
在smart_rtmp目录下有个html文件,需要新建个网页,复制一下代码:
然后在浏览器打开地址+端口+页面
http://182.18.5.115:8080/2.html
默认隐藏控件,可以点击右键显示控件进行播放
点播和录像分别存放与VOD和REC目录下。
比如在VOD目录下上传一个1.MP4文件
那么打开http://182.18.5.115:8080/vod/1.MP4
smart_rtmp | nginx-rtmp-module | nginx-http-flv-module | |
部署 | 直接运行 | 需要编译 | 需要编译 |
hlv | 集成 | 需要增加模块 | 包含nginx-rtmp-modulb模块了 |
支持win | 支持 | win环境编译模块失败 | 可以,比较麻烦 |
配置文件 | 中文注释 | 需要多个修改优化 | 需要多个修改优化 |