01
前言
前段时间在输入法评测过程中,需要将视频流实时上传给服务器进行解析,接触RTMP直播服务器。因此将搭建RTMP服务器的过程分享给大家。
02
搭建RTMP服务器
【一、下载rtmp包】
下载rtmp包有两种方式:
1、在GitHub直接下载:
https://github.com/arut/nginx-rtmp-module
2、直接用命令clone:
git clone https://github.com/arut/nginx-rtmp-module
【二、安装nginx】
1、安装nginx的方式网上教程有很多这里面不多说了。但是存在以下一个注意点。
(1)在执行 ./configure时候需要添加 --add-module= "rtmp包的路径"
【三、流媒体服务相关配置】
1、打开nginx配置文件(nginx.conf),在末尾添加如下代码:
2、在nginx配置文件(nginx.conf),在server中添加如下代码:
3、配置完成后,检查配置是否正确:nginx -t 。
4、配置没有问题重启nginx:nginx -s reload
03
检查RTMP服务是否生效
1、在浏览器中输入:http:// 服务器ip 端口 stat
例如:http://10.134.64.142:8007/stat
2、浏览器中出现下图,则表示rtmp服务生效了。
04
向RTMP服务推流
1、在这里我需要借助ffmpeg进行推流,ffmpeg安装在这里不进行赘述。
2、推流服务器地址格式如下:
rtmp:// ip ":"端口 /live/ "其他" //其他是我们任意起的名字
例如:
rtmp://10.134.64.142:8001/live/selftest
3、输入下面命令想服务器推流:
ffmpeg -re -i 视频路径 -c copy -f flv 推流服务器地址
4、浏览器的页面中的live streams出现如下则表示推流成功。
当然我们也可以采用推流工具向服务进行推流,比如:小熊录屏。
05
VLC收看直播流
1、开发VLC media player软件,并打开媒体选项中的开发网络串流,输入刚才的推流的地址:
rtmp://10.134.64.142:8001/live/selftest
如果视频可以正常播放则说明整个流程没有问题了。
当然我们也可以采用代码来进行接收视频流,然后分析出视频流中图片帧进行分析。得到我们想要信息。