使用nginx搭建rtmp推流服务器

本文详细介绍Nginx的安装过程,包括依赖库的安装、pcre和zlib的配置,以及rtmp和OpenSSL的下载与编译。同时,提供了Nginx的下载、编译、配置和启动步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、安装Nginx依赖库

#安装Nginx的编译环境gcc
yum install gcc-c++或者sudo apt install gcc

二、安装pcre

wget https://ftp.pcre.org/pub/pcre/pcre-8.10.tar.gz
tar -zxf pcre-8.10.tar.gz
./configure
make
make install 

三、安装zlib

wget http://prdownloads.sourceforge.net/libpng/zlib-1.2.11.tar.gz
tar -zxf zlib-1.2.11.tar.gz
 ./configure
 make 
 make install

四、下载rtmp

wget  https://github.com/openssl/openssl/archive/OpenSSL_1_1_1-pre9.tar.gz
tar -zxvf v1.2.1.tar.gz

在这里插入图片描述五、下载OpenSSL

wget  https://github.com/openssl/openssl/archive/OpenSSL_1_1_1-pre9.tar.gz
tar -zxvf  OpenSSL_1_1_1-pre9.tar.gz 

在这里插入图片描述编译OpenSSL

./config --prefix=`pwd`/libs
make
make install
  • 执行./config --prefix=pwd/libs如下结果
    在这里插入图片描述
  • make
    在这里插入图片描述
  • make install
    在这里插入图片描述

六、下载Nginx,版本是nginx-1.15.3
1、创建如下目录

cd /usr/local/

2、输入如下连接下载nginx,复制链接地址

https://github.com/nginx/nginx

在这里插入图片描述

wget https://github.com/nginx/nginx/archive/release-1.15.3.tar.gz
tar -zxvf release-1.15.3.tar.gz

在这里插入图片描述

  • 编译nginx
./auto/configure --add-module=/root/usr/local/nginx-rtmp-module-1.2.1 --with-openssl=/root/usr/local/openssl-OpenSSL_1_1_1-pre9
make
备注:1、/root/usr/local/nginx-rtmp-module-1.2.1 是在nginx-rtmp-module-1.2.1目录下面pwd命令获取的
		  2、/root/usr/local/openssl-OpenSSL_1_1_1-pre9 是在openssl-OpenSSL_1_1_1-pre9目录下面通过pwd获取的

安装PCRE、ZLIB后执行以上脚本会出现如下图所示,表示编译正确
在这里插入图片描述

  • make 执行命令是会出现如下
    在这里插入图片描述
  • make install(生成so库) 执行命令是会出现如下
    在这里插入图片描述
  • Nginx生成目录:/usr/local/nginx
    在这里插入图片描述
  • 配置Nginx
//复制nginx.conf到/usr/local/nginx/conf/路径下面
cp /root/work/nginx/nginx-rtmp-module-1.2.1/test/nginx.conf /usr/local/nginx/conf/

在这里插入图片描述

  • 打开/usr/local/nginx/conf/nginx.conf文件
    在这里插入图片描述

在这里插入图片描述

  • 验证Nginx是否在运行(ps aux | grep nginx)
    在这里插入图片描述
  • 在当前视频文件下面输入如下命令推流
ffmpeg  -re -i cqz.mp4 -vcodec libx264 -acodec aac -f flv rtmp://47.106.15.76:1935/myapp/

在这里插入图片描述
由于没有在服务器上面设置安全组,所以会报如下错误
在这里插入图片描述解决办法:添加一个安全组就可以解决问题,解决方法如下图所示
在这里插入图片描述

验证推流是否成功
一、启动停止Nginx
1、启动:./nginx 2、停止:./nginx -s stop
在这里插入图片描述二、推流成功如下图所示:
在这里插入图片描述使用ffmpeg进行推流,VLC进行拉流,我们可以看到拉流和推流的延迟大概是10秒左右
在这里插入图片描述
备注:我们推流的过程中,用VLC可能拉流不成功,这个时候我们需要重新关闭VLC和重新复制网络的地址:rtmp://47.106.15.76:1935/myapp/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值