基于smart_rtmp直播,最简单的部署手册

版本号

添加内容

修改时间

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功能分析


一、软件储备

1.推流软件:OBS

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(可从其他地方下载)

2.服务器流媒体软件:smart_rtmp

下载地址:

  http://www.qiyicc.com/download/rtmpd.zip

注:文件內包含win/linux版本

3.播放软件:Potplayer

支持用VLC或者potplayer,两个方案任选其一,没有什么太大的区别;

播放软件方案potplayer下载地址(可从其他地方下载)

https://545c.com/f/15911488-521156289-9c2f86

密码1234

https://potplayer.org/

二、服务器部署

系统支持WIN、linux

2.1 部署windows环境(win2003或win7以上系统)

①rtmpd.zip压缩解压到桌面,再次找到smart_rtmpd_win压缩包,解压到桌面。

②修改connfg.XML文件

需要修改的内容如下

    <nat>

        <!-- nat地址上映射地址和端口, 例如: 118.145.6.103:1935 -->

        <rtmp>182.18.5.115:1935</rtmp>

        <!-- nat地址上映射地址和端口, 例如:  118.145.6.103:8554 -->

        <rtsp><182.18.5.115:8554/rtsp>

        <!-- nat地址上映射地址和端口, 例如:  118.145.6.103:8080 -->

        <http><182.18.5.115:8080/http>

        <!-- nat地址上映射地址和端口, 例如:  118.145.6.103:8181 -->

        <https>182.18.5.115:8181</https>

        <!-- nat地址上映射地址和端口, 例如:  118.145.6.103:9000 (udp) -->

        <srt>182.18.5.115:8000</srt>

        <!-- nat地址上映射地址, 例如:  118.145.6.103, udp 一般是映射端口段, see rtp min & max -->

        <rtp>182.18.5.115</rtp>

    </nat>


 

填写NAT里的地址;

如果开启SSL模式,请上传修改证书名称

③执行smart_rtmpd_win文件夹的smart_rtmpd.exe文件,直接点击开始即可

2.2 部署Linux环境(centos7.X以上)

开终端(如 putty 或 Xshell),连接到该服务器。 通过 cd 转到 smart_rtmpd 所在目录,改connfg.XML文件,然后执行下方启动命令:(二选一) 启动命令 1: (这种启动方式,在关闭终端后,直播服务器就自动停止了) ./smart_rtmpd 启动命令 2: (这种启动方式,在关闭终端后,直播服务器依旧运行着) nohup ./smart_rtmpd (可通过 netstat -tunlp | grep 1935 查到使用1935端口的进程号,然后通过:kill+进程号 的方式停止服务)

2.3.部署需要windows和linux的安全组规则

推拉流需要一下端口,酌情开通处理

RTMP:1935(TCP)

RTSP:8554(TCP)

HTTP:8080(TCP)

HTTPS:8181(TCP)

SRT:9000(UDP)

三、推流准备

3.1 用OBS推流

打开OBS

①点击设置》②推流》③点击服务后面的自定义,在服务地址里输入上面NAT的地址》④串流密钥》⑤点击左侧输出选择分辨率码流》⑥点击确定》⑦返回界面后,点击开始推流

需要添加场景》添加来源(显示器采集或窗口采集或视频采集)

 

3.2 服务器日志

开始点击推流后,服务器日志

windows日志

linux 日志:在解压文件夹的log目录下,已日期呈现

四、播放(拉流)规则

从刚才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键盘,显示流信息
 

六、其他材料:

6.1关于smart_rtmp git地址

https://github.com/superconvert/smart_rtmpd

6.2播放软件方案VLC②下载地址

https://free.nchc.org.tw/vlc/vlc/3.0.16/win64/vlc-3.0.16-win64.exe

安装后,打开流媒体-》打开流——》输入地址——》点击播放

6.3关于播放器官网地址:

PotPlayer下载 - PotPlayer中文网

VLC: Official site - Free multimedia solutions for all OS! - VideoLAN

6.4关于NAT设置

6.5关于无法推流拉流播放

如果是Windows ,关闭防火墙,或者设置防火墙策略

如果是linux 同样关闭防护墙或者设置防火墙策略;关闭selinux

6.6关于NAT内网无法播放

由于在内网服务器的配置是公网配置,所以需要修改服务器hosts配置!

比如在win上添加

172.16.19.5 182.18.5.115

6.7关于是否可以推多流

可以,互不干扰。名字可以不一样;
推送地址格式如下(以rtmp为例):
rtmp://IP+端口/live/名字1
rtmp://IP+端口/live/名字2
播放地址:
rtmp://IP+端口/live/名字1
rtmp://IP+端口/live/名字2
 

6.8关于流量测试(待继续补充)
 

清晰度(流量)普清1280*720
(码率在1000k至1400K))
标清1280*720(
码率1600k至2000K)
高清1280*720
(码率3800k-4200K
手机推流0.32G0.32G0.32G
服务器0.39G0.54G0.46G
拉流播放0.9G0.814G0.96

七、关于浏览器播出

如果推流后,实在不方便观看到视频,实际上文件夹內是有播放列表等参数的。

7.1自带播放器测试用

直接输入地址:http:/IP:端口/player.html

如下列地址:

http://182.18.5.53:8080/player.html

7.2手动设置做一个页面

在smart_rtmp目录下有个html文件,需要新建个网页,复制一下代码:
 

<!DOCTYPE html>

<html>

<head>

<script src="https://cdn.jsdelivr.net/hls.js/latest/hls.min.js"></script>

<video id="video"></video>

<script>

  if(Hls.isSupported()) {

    var video = document.getElementById('video');

    var hls = new Hls();

  // 初始化 修改地址

    hls.loadSource('http://182.18.5.115:8080/live/01.m3u8');

    hls.attachMedia(video);

    hls.on(Hls.Events.MANIFEST_PARSED,function() {

      video.play();

  });

 }

</script>

</head>

</html>

然后在浏览器打开地址+端口+页面

http://182.18.5.115:8080/2.html

默认隐藏控件,可以点击右键显示控件进行播放

八、关于点播、录像问题

点播和录像分别存放与VOD和REC目录下。
比如在VOD目录下上传一个1.MP4文件
那么打开http://182.18.5.115:8080/vod/1.MP4



九、关于和nginx_rtmp-module、nginx-http-flv-module功能分析

smart_rtmpnginx-rtmp-modulenginx-http-flv-module
部署直接运行需要编译需要编译
hlv集成需要增加模块包含nginx-rtmp-modulb模块了
支持win支持win环境编译模块失败可以,比较麻烦
配置文件中文注释需要多个修改优化需要多个修改优化

  • 17
    点赞
  • 62
    收藏
    觉得还不错? 一键收藏
  • 15
    评论
一款免费的流媒体直播软件,主要用于流媒体直播,视频直播,视频点播,视频录制等应用,与FMS、WOWZA、RED5一道,作为用户流媒体直播应用的可选方案。 1、支持Windows/Linux等多种操作系统; 2、采用开发的流媒体协议,而非私有协议,可以与主流系统对接,至少支持RTMP推流,RTMP拉流,RTSP拉流三种方式获取直播流,支持对获取的直播流再按照TS组播或者单播,RTMP,RTSP,HLS,TS OVER HTTP,FLV OVER HTTP等标准流媒体协议的方式进行对外直播转发; 3、支持录制,可定时录制或手动录制,能录制MP4或者FLV格式文件,录制时支持生成新文件或者追加文件两种方式,支持录制超过4G的文件; 4、单台服务器可支持1000个以上并发用户,直播延时小于2秒; 5、支持RTMP转发功能,能够把AMS上的直播流转发给其它AMS服务器或者第三方的RTMP服务器,例如RED5,FMS,WOWZA流媒体服务器; 6、 支持PC/手机/平板电脑等多终端访问,无论是windows,linux,或者andriod以及IOS系统访问收看直播时都无需下载插件,直接观看; 7、响应点播时间控制在100ms以内,支持暂停、拖动等特技操作; 8、支持文件直播,可把硬盘上存在的FLV文件编目后,按设定好的任务和顺序进行直播; 9、内置Web应用系统,无需复杂配置,可直接部署到用户服务器使用,也可以选配更复杂的媒资管理系统,完成类似优酷土豆的应用模式; 10、开放的系统架构,提供二次开发接口,可轻松的融入到用户已有的平台或网站平台中、或在此基础上进行二次开放等 ------------------------------------------------------------------------- 使用说明: 1、关于安装运行:软件解压到硬盘上后,执行AokuMServiceManager,即可完成AMS服务的安装,安装完成后,在Windows系统服务中会出现一个AokuMService服务; 2、关于端口:AMS默认的管理端口是9001,可通过浏览器登陆http://127.0.0.1:9001/main.html进行管理;AMS默认的RTMP端口是1935,默认的rtsp端口是5554,默认的flv over http端口是7000,默认的ts over http端口是8008,默认的hls端口也是9001; 3、关于推流:使用直播你需要有一个支持rtmp推流的编码器,建议用奥酷全接口高清编码器,当然你也可以通过FME进行软编码来实现; 4、关于接收直播:AMS正常启动并发布上直播流后,你可以在网络内的任一电脑上打开http://ip:9001,通过浏览器观看直播,若开启了hls功能,通过iphone或者ipad登陆http://ip:9001即可观看直播。 5、若开启了TS组播,请确认防火墙是否允许组播,另外您网络内的路由器是否支持组播,接收组播是需要用VLC播放器来完成; 6、接收flv over http也是通过VLC播放器或者支持类似协议的播放器来测试。 7、若使用中出现问题,你可以查看logs目录下的rtmpserver.log文件,里面有详细的错误日志描述。
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值