起因:当前有一个无人机的项目中带有航拍的直播功能;
流媒体服务器的搭建我了解的只有两种nginx中的rtmp模块,安装完即可实现推流拉流,但是支持的协议有限;另外一种就是我所采用的srs服务器支持的协议多样化;
首先安装包是必须的,我从官网下的SRS/6.0,有没有坑目前还没有发现,链接如下:
链接:https://pan.baidu.com/s/1RgjqiE2yKP0PUIc4gjm3Kg?pwd=hss1
提取码:hss1
先在/usr/local中创建一个srs文件夹
cd /usr/local
mkdir srs
下载zip压缩包到自己的本地,上传到虚拟机中解压
进入刚创建的srs文件夹
cd srs
unzip srs-develop.zip
解压完成得到一个srs-develop文件,我们进入这个文件中的trunk文件
cd srs-develop/trunk
然后执行configure文件
./configure
make
此时可以直接运行
./objs/srs -c conf/srs.conf
查看运行状态
./etc/init.d/srs status
当出现 SRS(pid 2806) is running. [ OK ]即运行成功
如果拉流端是web的话,需要开启rtmp转rtc,进入trunk目录下conf文件夹中搜索srs.conf文件,修改vhost __defaultVhost__块中rtc的rtmp_to_rtc属性为on,默认是off;
重启srs服务
./etc/init.d/srs stop
./objs/srs -c conf/srs.conf
./etc/init.d/srs status
基本流程不需要过多配置,这个时候状态如果为running,那我们继续执行下一步;
下载推流工具OBS到windows本地,这个需要各位自己去steam搜索下载OBS Studio,速度还是很快的;
打开软件,点击左上角的文件,下拉框中选择设置,然后选中直播配置我们的流媒体服务器ip,端口可以写也可以不写,不写有默认的1935,url格式为rtmp://ip:port/live,不需要纠结live是什么,就是一个应用名,推流码随便填,我的是test;
配置完成,继续下一步
点这个加号,配置我们的数据来源
我配置的图片和文本,下一步点击开始直播
连接正常就已经开始推流了,此时打开浏览器输入
http://ip:8080/players/srs_player.html?schema=http
url中格式http://ip:8080/live/test.flv,点击播放;
此时我们的srs流媒体服务器基本配置已经搭建完成,推流也可以通过ffmeg命令行,各位有兴趣可以自己查询一下,ffmeg功能还是很丰富的