CentOS视频监控服务器配置
在CentOS 7.4服务器版本的环境下,安装nginx服务器、配置文件服务器和流媒体服务器,以实现视频监控功能,以下是详细的配置步骤:
一、环境介绍
采用华为云的ECS弹性云服务器,镜像安装的CentOS 7.4 64位版本,该服务器为非桌面版,主要用于部署视频监控系统。
二、安装带rtmp模块的Nginx
1、安装必要的工具:
yum install -y pcre pcre-devel openssl openssl-devel zlib zlib-devel gcc gcc-c++ yum install -y vim wget lsof git zip unzip
2、获取Nginx二进制源码:
wget http://nginx.org/download/nginx-1.14.2.tar.gz tar xvf nginx-1.14.2.tar.gz
3、获取nginx-rtmp-module:
wget https://github.com/arut/nginx-rtmp-module/archive/refs/tags/v1.2.1.tar.gz tar xvf v1.2.1.tar.gz
4、编译nginx:
cd nginx-1.14.2 ./configure --add-module=../nginx-rtmp-module-1.2.1/ --with-http_ssl_module make && make install ln -s /usr/local/nginx/sbin/nginx /usr/bin
5、修改Nginx的配置文件:打开/usr/local/nginx/conf/nginx.conf
文件,添加RTMP服务配置:
rtmp { server { listen 8888; application live { live on; } } }
6、重启Nginx服务:
sudo service nginx restart
7、设置开机启动:下载并配置Nginx开机启动脚本:
wget http://raw.github.com/JasonGiedymin/nginx-init-ubuntu/master/nginx -O /etc/init.d/nginx chmod +x /etc/init.d/nginx update-rc.d nginx defaults
8、控制Nginx服务:启动、停止和重启命令如下:
service nginx start service nginx stop service nginx restart 或者 nginx -s reload
三、RTMP推流与拉流
1、进行RTMP推流:使用OBS Studio等推流工具将视频流推送到服务器:
rtmp://<服务器IP地址>:8888/live/<推流存放的目录> rtmp://127.0.0.1:8888/live/xl
2、保存推流视频文件:如果需要保存推流视频文件以便后续查看,可以在nginx.conf
中增加以下配置:
record all; record_unique on; record_path "./video"; #视频缓存的路径 record_suffix -%Y-%m-%d-%H_%M_%S.flv;
四、RTMP直播流转为HLS直播流
HLS(HTTP Live Streaming)是一个由Apple公司提出的基于HTTP的媒体流传输协议,广泛应用于视频点播和直播领域,其原理是将整条流切割成多个小的可以通过HTTP下载的媒体文件,然后提供一个配套的媒体列表文件,让客户端顺序地拉取这些媒体文件播放,实现实时播放的效果,由于传输层协议只需要标准的HTTP协议,HLS可以方便地透过防火墙或代理服务器,并且可以利用CDN进行分发加速。
五、FAQs
1.如何更改RTMP推流端口数?
答:在nginx.conf
文件中的RTMP配置部分,修改listen
指令后的端口号即可,将listen 8888;
改为listen 1935;
,修改后记得重启Nginx服务使配置生效。
2.如何将RTMP流转换为HLS流?
答:首先确保Nginx已经安装了nginx-rtmp-module
模块,并在配置文件中开启了HLS支持,然后在nginx.conf
中的RTMP应用配置下添加hls on;
指令,并指定一个hls_path
用于存储生成的HLS文件,使用OBS Studio等推流工具将RTMP流推送到服务器,Nginx会自动将其转换为HLS流,客户端可以通过访问指定的HLS URL来观看直播。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1410880.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复