基于nginx-rtmp-module实现直播-Mying666

一、准备工作

1、本地安装ffmpeg或OBS推流工具

2、本地安装VLC拉流工具

3、服务器安装nginx

二、安装nginx-rtmp-module

1、下载nginx-rtmp-module模块

官方github地址:https://github.com/arut/nginx-rtmp-module

我这里在git上直接克隆了,进到服务器nginx目录(我这里是/usr/local/nginx)

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

如果提示git错误的,装下git

这个时候,根目录下应该会有一个 nginx-rtmp-module 文件夹

nginx-rtmp-module

2、配置configure编译参数

进入nginx安装文件夹(注意不是nginx文件夹),我这里是nginx文件夹下的nginx-1.12.1文件夹,此文件夹下有一个configure的sh文件

configure

输入命令配置

./configure --prefix=/usr/local/nginx --add-module=/usr/local/nginx/nginx-rtmp-module-1.2.0

prefix后面为nginx安装目录;add-module后面为nrm目录

路径错误会导致报错,成功如下

生成Makefile
Makefile

编译完成会生成一个Makefile安装文件

3、执行make&&make install自动安装nrm

三、配置rtmp

进入nginx配置文件,vim conf/nginx.conf

rtmp {
        server {
                listen 1935; #监听的端口
                chunk_size 4000;
                application live {
                        live on; #开启实时
                        hls on; #开启hls
                        hls_path /usr/local/m3u8File; #rtmp推流请求路径,文件存放路径
                        hls_fragment 5s; #每个TS文件包含5秒的视频内容
                }
        }
}

http {
   ...
}

注意rtmp模块与http模块同级
保存nginx.conf,重启nginx服务——nginx -s reload
重启成功后查看当前nginx服务

netstat -ntulp | grep nginx

nginx服务
会发现nginx当前已经有2个服务
1935端口就是我们刚刚添加的rtmp服务了,此时已经可以使用推流工具向服务器推流了。
推流地址为服务器ip:1935/live/秘钥,服务名live为rtmp中配置的application
例:rtmp://0.0.0.0:1935/live/123

四、配置rtmp状态监控地址

nginx-rtmp-module模块自带rtmp状态监控,可通过配置nginx在浏览器直接查看

server {
        listen       80;
        server_name  localhost;
...
        location /stat {
                rtmp_stat all;
                rtmp_stat_stylesheet stat.xsl;
        }

        location /stat.xsl {
                root /usr/local/nginx/nginx-rtmp-module-1.2.0/;
        }
...
}

配置完记得重启nginx,然后就可以直接访问http://0.0.0.0/stat查看服务状态了,vod是我的其他静态服务,没有可以忽略。

rtmp-stat

五、通过OBS推流

obs

推流中

六、VLC实时观看直播

打开VLC配置网络串流直播,注意服务地址后面的秘钥要与推流秘钥一致。

配置网络串流

此时可以在stat页面看到有一条服务的连接了

rtmp-stat

七、总结

rtmp协议直播流在web端只能在flash播放,随着flash被淘汰这种方式的直播自己搭着玩玩吧,当学习了~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容