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