一、RTMP自测环境搭建
(拓扑样式)数据发送源 + 测试服务器 + VLC客户端
数据发送源:Ubuntu 服务器环境下写了一个Send264的发送环境(基于librtmp、雷神的代码改了一下)
测试服务器:centos 服务器环境 + Nginx + Nginx的rtmp外部库,这个作为一个缓存的作用,供播放器拉流
VLC:作为播放器,来将服务器数据进行播放
二、测试发送源
这一部分是基于librtmp开源库进行开发,借鉴于雷神的windows的demo,因为网上的很多demo都是基于Windows环境下,
我这边因为没有VS环境就基于ubuntu的系统编写了一个demo
1、下载RTMP的开源库
http://rtmpdump.mplayerhq.hu/download/
2、编译库
(1)下下来之后make;make install
(2)没有make install 权限的兄弟,把拿到得到的.so 放到工程里面编译
(3)有make install 权限的兄弟,可以直接关联.so ,在工程中编译
3、具体代码见下图链接
4、整体代码封装包
三、测试服务器
1、简介
按照参考链接下载搭建Nginx + RTMP
编辑 nginx.conf 的配置文件打开相关
2、相关注意事项
(1)设置端口,chunk大小,
(2)下方设置中vod 主要是方便本地广播
(3)live 方便“测试发送源”发送数据到“测试服务器”,VLC监控这个地址则可以进行播放
rtmp { #RTMP serviceserver {listen 1935; #portchunk_size 4096; #data sizeapplication vod {play /home/Videos; #video path}application live {live on;}}
}
// 主要是为了通过web监控rtmp传输的情况
location /stat { #first location fieldrtmp_stat all;rtmp_stat_stylesheet stat.xsl;
}// root 后接的nginx-rtmp-module ,要填写这个库的安装位置,搞错则不能打开web监控Rtmp的情况
location /stat.xsl { #second location fieldroot /home/Work_nginx/nginx-rtmp-module;
}
四:VLC播放器
媒体->打开网络传流->输入设备的RTMP服务器的测试地址
例:rtmp://xx.xxx.xxx.x:1935/live/test
端口为1935(在匹配值文件中打开)
文件地址为:live(application 中定义,test叫其他名字也可以)
五、相关参考链接
1、雷神相关链接
https://blog.csdn.net/leixiaohua1020/article/details/42104893
2、Nginx 搭建RTMP
https://www.jianshu.com/p/1cbff1431590