从0到1搭建nginx-rtmp视频流服务【环境:Centos】

步骤 1:安装依赖

1、安装基础开发工具和依赖库

sudo yum install -y epel-release
sudo yum groupinstall -y "Development Tools"
sudo yum install -y pcre-devel openssl-devel zlib-devel wget git
sudo yum install openssl openssl-devel

1、以上同时下载并安装了git,后面拉取RTMP模块源码需要用到,如果已安装git,上面wget git可以去掉
groupinstall可能会报错,执行以下命令刷新缓存:
yum clean all
yum makecache

步骤 2:下载Nginx和RTMP模块源码

1、 创建工作目录

mkdir ~/rtmp_server && cd ~/rtmp_server

2、下载Nginx源码(以1.27.3版本为例)

wget https://nginx.org/download/nginx-1.27.3.tar.gz
tar -zxvf nginx-1.27.3.tar.gz

3、下载nginx-rtmp-module源码

git clone https://github.com/arut/nginx-rtmp-module.git

步骤 3:编译并安装Nginx

cd nginx-1.23.3

1、配置编译参数(包含RTMP模块)

./configure \
    --prefix=/usr/local/nginx \
    --add-module=../nginx-rtmp-module \
    --with-http_ssl_module \
    --with-http_v2_module

2、编译并安装

make && sudo make install

步骤 4:配置Nginx支持RTMP

1、编辑配置文件 /usr/local/nginx/conf/nginx.conf,在文件末尾添加以下内容:

rtmp {
    server {
        listen 1935;        # RTMP默认端口
        chunk_size 4096;

        application live {
            live on;
            hls on // 开启hls
            hls_path /tmp/hls;
            hls_fragment 3s;
            hls_playlist_length 60s;
            record off;      # 关闭录制
            allow publish all;  # 允许推流
            allow play all;     # 允许拉流
        }
    }
}

步骤 5:启动Nginx并开放防火墙

1、启动Nginx

sudo /usr/local/nginx/sbin/nginx

2、开放防火墙端口(CentOS 7+,如果关闭了防火墙,则不需要配置端口策略)

sudo firewall-cmd --permanent --add-port=1935/tcp
sudo firewall-cmd --permanent --add-port=80/tcp     # 如果需要HTTP访问
sudo firewall-cmd --reload

步骤 6:测试RTMP服务器

推流测试
可以使用OBS或其他推流工具,设置服务器地址为(下章节分享javacv实现推流到rtmp服务,记得点赞收藏加关注哦):
rtmp://你的服务器IP:1935/live
流密钥(Stream Key)自定义,例如:test

拉流测试
使用VLC或其他播放器,打开URL:
rtmp://你的服务器IP:1935/live/test

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值