小白学习音视频系列(二) 编译nginx rtmp模块

小白学习音视频系列(二)

编译nginx rtmp模块

image

关注微信号:cpp手艺人,获取更多文章

1.先下载nginx源码

创建一个新的目录

mkdir nginx
cd nginx
wget http://nginx.org/download/nginx-1.18.0.tar.gz

下载完源码之后,解压nginx

tar zxvf nginx-1.18.0.tar.gz

2.在下载nginx的RTMP模块

同样在nginx目录下

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

注意你的目录结构应该如下所示:
image

图一

3.准备编译源码

进入到nginx源码目录中

cd nginx-1.18.0

image

图二

注意把上面的rtmp-module模块的路径替换为你的路径,下面的是我路径

./configure --add-module=/home/game/nginx/nginx-rtmp-module

configure结束后,执行下面的编译和安装

make && make install

如果在编译过程中报出什么库没有安装的,就执行apt-get install lib_name
比如:

sudo apt-get install zlib1g-dev

至此编译完成之后,nginx会安装到/usr/local/nginx,启动nginx

sudo /usr/local/nginx/sbin/nginx

我们使用浏览器访问下看看nginx有没有起来。在浏览器中输入:http://you_ip_host
比如我的:192.168.26.31
如果你发现不能访问,先查看下nginx进程存不存在

ps -ajx | grep “nginx”

image

图三

如果进程存在还不能访问,很大概率上是80端口被禁用了。

sudo ufw allow 80

注意这里的命令,sudo uwf allow 80,上一篇文章写错了,感谢一位网友的提出

image

图四

4.使用ffmpeg推流

1.首先需要配置下nginx.conf文件

在nginx的安装目录中找到nginx.conf文件,写入如下的配置

例如我的配置文件在:/usr/local/nginx/conf/nginx.conf

rtmp {
    server {
            listen 1935;
            chunk_size 4096;
            application live
            {
                live on;
            }
        }
}

image

图五

注意我已经cd /usr/local/nginx/sbin目录下 配置完成之后,重新加载配置

sudo ./nginx -s reload

使用命令查看端口情况

netstat -tlanp

image

图六

2.使用ffmpeg准备推流

ffmpeg 推流

ffmpeg.exe -i 006.mp4 -f flv rtmp://192.168.26.31/live

ffplay 拉流

ffplay.exe rtmp://192.168.26.31/live -fflags nobuffer

image

图七

5.使用nginx查看推流的详细信息

1.在nginx中配置添加如下的信息:

    server {
            listen 8080;
            location /stat {
                    rtmp_stat all;
                    rtmp_stat_stylesheet stat.xsl;
            }

            location /stat.xsl {
                    root /home/game/nginx/nginx-rtmp-module;
            }

        }

image

图八

2.我们在浏览器中输入:192.168.26.31:8080/stat

image

图九

好,至此,nginx源码编译已经结束。虽然走了点弯路,但是你还是会成功的。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值