源码编译nginx rtmp 实现流媒体服务器转发

环境 (此教程在centos7 环境下完成)

1. 下载

wget https://nginx.org/download/nginx-1.17.6.tar.gz
wget https://github.com/arut/nginx-rtmp-module/archive/master.zip

2. 解压并安装

1. 解压
tar xf nginx-1.17.6.tar.gz
unzip nginx-rtmp-module-master.zip

2. 生成配置文件
cd nginx-1.17.6/
mkdir build 新建安装目录,将编译好的nginx安装到build目录
./configure --prefix=/root/Downloads/nginx/nginx-1.17.6/build \
--add-module=/root/Downloads/nginx/nginx-rtmp-module-master \
--user=nginx --group=nginx --with-http_ssl_module \
--with-http_stub_status_module

3. 编译 (注: 直接make会出现错误,所以请执行如下命令)
make -f objs/Makefile

注: 如果报错加上此参数 (centos8系统中遇到的错误)
error: this statement may fall through [-Werror=implicit-fallthrough=]
解决参数:
CFLAGS='-Wno-implicit-fallthrough'

4. 安装
make install

3. 修改nginx配置文件

1. 切换到安装目录
cd build/

2. 修改配置文件 (在配置文件最后添加如下内容)
vi conf/nginx.conf
rtmp {
	server {
		listen 1935;
		notify_method get;

		application rtmp {
			live on;
		}
	}
}

3. 在配置文件中 修改网站目录文件所属者
user  root root;

4. 关于启动

1. 启动
./sbin/nginx 

2. 再重启之前检查配置文件的正确性
./sbin/nginx -t

3. 重启
./sbin/nginx -s reload

5. 查看端口

ps -ef | grep nginx

源码编译nginx rtmp 实现流媒体服务器转发_第1张图片

6. 浏览器访问

源码编译nginx rtmp 实现流媒体服务器转发_第2张图片

 

使用ffmpeg将rstp流转发成rtmp流

ffmpeg -i rtsp://172.24.1.200/robot9 -c copy -f flv rtmp://172.24.0.2/rtmp/video 

源码编译nginx rtmp 实现流媒体服务器转发_第3张图片

你可能感兴趣的:(web,centos,linux)