nginx rtmp直播无延迟_如何搭建流媒体直播服务器?

近日,很多人问到该如何搭建流媒体直播服务器呢?下面小编手把手来教大家怎么搭建流媒体服务器。

常用工具

ffmpeg音视频编解码

ffplay音视频播放工具

常用的两个协议

RTMP是流媒体协议。 它是Adobe的私有协议,未完全公开。 一般传输的是flv,f4v格式流。在TCP1个通道上传输命令和数据。

RTSP 是流媒体协议 ,它是共有协议,并有专门机构做维护。它的传输的是ts、mp4格式的流。它的传输一般需要 2-3 个通道,命令和数据通道分离。

搭建流媒体服务器

准备流媒体服务器linux

准备并安装Nginx服务

配置RTMP并启动Nginx服务

1.linxu安装Nginx和rtmp

1.先下载安装 nginx 和 nginx-rtmp 编译依赖工具

sudo apt-get install build-essential libpcre3 libpcre3-dev libssl-dev

2. 创建一个工作目录,并切换到工作目录

mkdir ~/working
cd ~/working

3. 下载 nginx 和 nginx-rtmp源码

wget http:// nginx.org/download/ngin x-1.7.5.tar.gz
wget https:// github.com/arut/nginx-r tmp-module/archive/master.zip

4. 安装unzip工具,解压下载的安装包

sudo apt-get install unzip

5.解压 nginx 和 nginx-rtmp安装包

tar -zxvf nginx-1.7.5.tar.gz
unzip master.zip

6. 切换到 nginx-目录

cd nginx-1.7.5

7.添加 nginx-rtmp 模板编译到 nginx

./configure --with-http_ssl_module --add-module=../nginx-rtmp-module-master

8.编译安装

make
sudo make install

9. 安装nginx init 脚本

sudo wget https:// raw.github.com/JasonGie dymin/nginx-init-ubuntu/master/nginx -O /etc/init.d/nginx
sudo chmod +x /etc/init.d/nginx
sudo update-rc.d nginx defaults

10. 启动和停止nginx 服务,生成配置文件

sudo service nginx start
sudo service nginx stop

11. 安装 FFmpeg

sudo apt-add-repository ppa:jon-severinsson/ffmpeg
sudo apt-get update
sudo apt-get install ffmpeg

原文PPA不可用,源码安装参见

http://blog.csdn.net/redstarofsleep/article/details/45092145

12. 配置 nginx-rtmp 服务器

打开 /usr/local/nginx/conf/nginx.conf

在末尾添加如下 配置

rtmp {
server {
listen 1935; #监听的端口
chunk_size 4000;
application hls { #rtmp推流请求路径
live on;
hls on;
hls_path /usr/local/nginx/html/hls;
hls_fragment 5s;
}
}
}

13. 保存上面配置文件,然后重新启动nginx服务

sudo service nginx restart

14. 如果你使用了防火墙,请允许端口 tcp 1935

用netstat -an | grep 1935

出现以下信息代表则代表启动nginx/rtmp成功

netstat -an| grep 1935
tcp 0 0 0.0.0.0:1935 0.0.0.0:* LISTEN

16: 使用 客户端,使用 rtmp协议进行视频实时采集

ffmpeg直播命令:

推流:ffmpeg -re -i 1.mp4 -c copy -f flv rtmp:// http:// xxx.xxx.xxx.xxx:1935/hl s/1.mp4
拉流:ffmpeg -i rtmp:// http:// xxx.xxx.xxx.xxx/1.mp4 -c copy dump.flv
播放音视频:ffplay rtmp:// http:// xxx.xxx.xxx.xxx/hls

17.下载一个OBS(视频直播客户端)

(1)配置url

982a54663ca550b6816bdee036135b5e.png

(2)推流

2cfa45ce70b7c489b0cfdf86c83552a8.png

(3)服务器播放

ffplay rtmp:// http:// xxx.xxx.xxx.xxx/hls
18: 关于 nginx-rtmp 更多配置 https:// github.com/arut/nginx-r tmp-module/wiki/Directives
flashplay播放器地址 http:// bbs.chinaffmpeg.com/1.s wf
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值