- A+
linux系统中Nginx+FFmPeg实现网页监控视频播放配置过程
1.安装好的nginx上添加模块nginx-http-fiv-module-master
此模块是rtmp模块的升级版,有它所有的功能,因此安装它
(1)从GitHub上下载该模块,将压缩包放到nginx目录的/usr/local/nginx下
cp:nginx-http-fiv-module-master .zip /usr/local/nginx
(2)解压到此
unzip nginx-http-fiv-module-master .zip
(3)在安装文件夹下添加模块
./configure --add-module=/usr/local/nginx/nginx-http-flv-module-master
记得使用管理员身份进入!!
make
紧接着执行make install!
make install
2.linux服务器安装ffmpeg
使用命令直接安装
apt-get install ffmpeg
3.进入nginx配置文件添加rtmp
rtmp { out_queue 4096; out_cork 8; max_streams 128; timeout 15s; drop_idle_publisher 15s; log_interval 5s; #log模块在access.log中记录日志的间隔时间,对调试非常有用 log_size 1m; #log模块用来记录日志的缓冲区大小 server { listen 1935; server_name localhost; application myapp { live on; gop_cache on; #打开GOP缓存,减少首屏等待时间 } application hls { live on; hls on; hls_fragment 8s; hls_path temp/hls; } } }
编辑保存好文件之后,再重启nginx
sudo nginx -s reload
3.使用FFmpeg对视频进行推流
推流至nginx的服务器地址
ffmpeg -re -i {input-source} -f flv -r 25 -s 1280*720 -an rtmp://localhost:1935/live/test
拉流地址:rtmp://localhost:1935/rtmplive/test
配置环境变量的方法
1、打开配置文件
1.vi /etc/profile
2、在PATH后面追加sbin目录,以:隔开
/usr/local/nginx/sbin
export JAVA_HOME=/usr/local/java/jdk1.8.0_131 export PATH=$PATH:$JAVA_HOME/bin:/usr/local/nginx-1.20.2/sbin export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export JRE_HOME=$JAVA_HOME/jre
3.重新加载
启动nginx
nginx
停止
n ginx -s stop
nginx -s quit
重载配置文件
nginx -s reload
更改默认端口的方法
1.进入nginx.conf文件
2.修改下图位置的端口号
3.找到/etc/nginx/sites-available/default文件
# sudo vim /etc/nginx/sites-available/default
修改此文件下的端口号为刚刚nginx.conf中的相同端口
server { listen 8084 default_server; listen [::]:8084 default_server; root /usr/share/nginx/html; xxx.html xxx.htm }
4.重新加载配置文件
killall -9 nginx
nginx
指定配置文件启动的方法
可能由于下载安装的地址问题使得运行的时候并没有运行/usr/local/nginx/conf下的配置文件,此时只需手动nginx指定配置文件启动即可
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf