nginx+rtmp流媒体服务器搭建 您所在的位置:网站首页 树莓派流媒体服务器 nginx+rtmp流媒体服务器搭建

nginx+rtmp流媒体服务器搭建

2024-07-17 04:49| 来源: 网络整理| 查看: 265

nginx+rtmp流媒体服务器搭建 一、nginx+rtmp简介

Nginx本身是一个非常出色的HTTP服务器,FFMPEG是非常好的音视频解决方案.这两个东西通过一个nginx的模块nginx-rtmp-module,组合在一起即可以搭建一个功能相对比较完善的流媒体服务器. 这个流媒体服务器可以支持RTMP和HLS(Live Http Stream)。

二、具体部署步骤 1. 下载nginx和nginx-rtmp-module 下载Nginx-rtmp-module git clone https://github.com/arut/nginx-rtmp-module.git 下载Nginx并解压 wget http://nginx.org/download/nginx-1.14.2.tar.gz tar -zxvf nginx-1.14.2.tar.gz 2. 编译安装Nginx和Nginx-rtmp-module 安装nginx的依赖 sudo apt-get update sudo apt-get install libpcre3 libpcre3-dev sudo apt-get install openssl libssl-dev 编译并配置nginx

使用nginx的默认配置,添加nginx的rtmp模块。 add-module为下载的nginx-rtmp-module文件路径。

cd nginx-1.14.2/ # 进入nginx的目录下 ./configure --add-module=../nginx-rtmp-module make make install

3. 运行测试nginx

进入安装目录/usr/local/nginx,运行命令./sbin/nginx,nginx重启命令为 ./sbin/nginx -s reload.查看部署是否成功!

4. 点播视频服务器的配置。 #rtmp配置 rtmp { server { listen 1935; #监听服务端口 chunk_size 4096; # 数据传输块的大小 application vod { play /home/zane/video/vod;#视频文件的存放位置 } } }

在配置目录/home/zane/video/vod;放一个视频文件,放好之后重启Nginx服务器!

使用vlc 播放器,输入rtmp://114.115.240.14/vod/test.mp4

播放结果:

5. 直播视频服务器的配置

在点播服务器配置文件的基础上添加直播服务的配置。需要添加的一共有2个位置,第一处就是给RTMP服务添加一个application(这个名字可以任意起),也可以起多个名字,由于是直播我就叫做它live吧,如果打算弄多个频道的直播就可以live_cctv1、live_cctv2名字任意。第二处就是添加两个location字段.

#rtmp配置 rtmp { server { listen 1935; #监听服务端口 chunk_size 4096; # 数据传输块的大小 application vod { play /home/zane/video/vod;#视频文件的存放位置 } application live{ #添加的直播字段! live on; } } } location /stat { # 第二处添加的location字段 rtmp_stat all; rtmp_stat_stylesheet stat.xsl; } location /stat.xsl{ #第二处添加的location字段 root /home/zane/nginx-rtmp/nginx-rtmp-module/; }

添加完成之后,重启Nginx服务器,打开浏览器,输入http://114.115.240.14:81/stat(根据你自己的服务器信息组装地址)

接着使用EV录屏向流媒体服务器进行推流:

此时根据nginx的状态信息可以看到:多出红框内东西,说明推流成功!

使用vlc播放器播放地址rtmp://114.115.240.14/live/test,可进行播放。

nginx+rtmp的直播配置到此结束!

6. 支持回看的直播视频服务器

在上一步的基础上,增加支持回看部分的配置

# rtmp配置 application live{ #添加的直播字段! live on; hls on; # 这个参数把直播服务器改造为实时回放服务器。 wait_key on; #对视频切片服务器进行保护,这样就不会产生马赛克了! hls_path /home/zane/video/hls;#切片视频文件存放位置 hls_fragment 600s; #设置HLS片段长度 hls_playlist_length 10m; #设置HLS播放列表长度,这里设置的是10分钟 hls_continuous on; #连续模式。 hls_cleanup on; #对多余的切片进行删除。 hls_nested on; #嵌套模式: } #在 http 配置中增加一个location location /live { types { application/vnd.apple.mpegurl m3u8; video/mp2t ts; } alias /home/zane/video/hls; expires -1; add_header Cache-Control no-cache; add_header Access-Control-Allow-Origin *; }

配置完之后重启nginx,在/home/zane/video/hls/test/目录下,有若干个视频切片

使用vlc播放器,(http://114.115.240.14/live/test/20.ts)播放视频切片如下图:

到目前为止,支持点播,直播,回放等功能的流媒体服务器搭建完成!



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有