流媒体服务功能说明:
nginx实现rtmp服务端,可以接受推流,然后将流分发出去。
一般接受rtsp推流,可输出rtmp或flv等多种格式。 在安防领域典型的应用场景:
将摄像机的rtsp推流到流媒体服务器,网页端可使用flash或无插件观看视频。
下载nginx-rtmp-module
git clone https://github.com/arut/nginx-rtmp-module.git
下载安装nginx
wget http://nginx.org/download/nginx-1.8.1.tar.gz
tar -zxvf nginx-1.8.1.tar.gz
cd nginx-1.8.1
./configure --prefix=/usr/local/nginx --add-module=../nginx-rtmp-module --with-http_ssl_module
make && make install
设置nginx
vi /usr/local/nginx/conf/nginx.conf
内容:
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 809;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
rtmp {
out_queue 4096;
out_cork 8;
max_streams 4096;
server {
listen 90;
drop_idle_publisher 30s;
application live {
live on;
}
}
}
启动:/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
卸载
# 如果有自启动,则删除 Nginx 的自启动
chkconfig nginx off
服务 nginx 信息读取出错:没有那个文件或目录
# 查找nginx的安装目录
whereis nginx
nginx: /usr/local/nginx
# 停止nginx服务
/usr/local/nginx/sbin/nginx -s stop
# 删除安装目录
rm -rf /usr/local/nginx/
# 查找是否还有残余的
find / -name nginx
/usr/local/lib64/nginx-1.15.7/objs/nginx
rm -rf /usr/local/lib64/nginx-1.15.7/
使用ffmpeg推流测试:
ffmpeg -hwaccel cuvid -c:v h264_cuvid -i "视频资源源地址" -c:v h264_nvenc -an -crf 20 -b:a 96k -b:v 2048k -preset medium -tune animation -vf scale_npp=1024:-1 -f flv rtmp://ip:90/live/test
拉流测试
使用:
rtmp://ip:90/live/test
地址播放即可。
Flv配置
https://github.com/winshining/nginx-http-flv-module
nginx flv是基于nginx-rtmp-module的流媒体服务器
功能对比:
安装
yum install https://extras.getpagespeed.com/release-el$(rpm -E %{rhel})-latest.rpm
yum install nginx-module-flv
1. 通过nginx.conf引用
安装完毕后,HTTP-FLV功能的配置文件http-flv.conf和RTMP功能的配置文件rtmp.conf会被放在/etc/nginx/http-flv目录下,通过include手工将它们添加到/etc/nginx/nginx.conf,以开启HTTP-FLV和RTMP功能:
http {
...
include /etc/nginx/http-flv/http-flv.conf;
}
include /etc/nginx/http-flv/rtmp.conf;
添加以下配置到/etc/nginx/nginx.conf,启动或者重启NGINX来启用本模块:
load_module modules/ngx_http_flv_live_module.so;
注意
上述的配置必须位于events配置项之前,否则NGINX不能启动。
更新可以通过yum update来完成。关于其他NGINX模块的详情见GetPageSpeed。
对于其他操作系统,见下面源码编译安装的说明。
2. 源码编译安装
cd root
git clone https://github.com/winshining/nginx-http-flv-module
wget http://nginx.org/download/nginx-1.8.1.tar.gz
tar -zxvf nginx-1.8.1.tar.gz
cd nginx-1.8.1
./configure --add-module=/root/nginx-http-flv-module --with-http_ssl_module
make && make install
本文暂时没有评论,来添加一个吧(●'◡'●)