在Ubuntu 14 上安装 Nginx-RTMP 流媒体服务器

一:RTMP

RTMP流媒体协议是 一套 Adobe 开发的音频视频实时传输协议;

二:Nginx-rtmp

 nginx-rtmp 是一个基于nginx的 RTMP服务模块,开源,免费

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

三:在 ubuntu server 14 安装流程

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/nginx-1.7.5.tar.gz
wget https://github.com/arut/nginx-rtmp-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/JasonGiedymin/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

12. 配置 nginx-rtmp 服务器

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

在末尾添加如下 配置

rtmp {
    server {
            listen 1935;
            chunk_size 4096;

            application live {
                    live on;
                    record off;
                    exec ffmpeg -i rtmp://localhost/live/$name -threads 1 -c:v libx264 -profile:v baseline -b:v 350K -s 640x360 -f flv -c:a aac -ac 1 -strict -2 -b:a 56k rtmp://localhost/live360p/$name;
            }
            application live360p {
                    live on;
                    record off;
        }
    }
}

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

sudo service nginx restart

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

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

Field 1: rtmp://your.vultr.ip/live/
Field 2: stream-key-your-set

 在这里视频采集我使用的是 iPhone5 的 采集程序 https://github.com/jgh-/VideoCore

 

            [_session startRtmpSessionWithURL:@"rtmp://192.168.86.246/live/" andStreamKey:@"test"];

17. 在上面客户端采集的过程之中,可以使用 vlc 播放器打开  rtmp 实时流

rtmp://your.vultr.ip/live/stream-key-you-set

打开上面的流,进行测试实时的效果

18: 关于 nginx-rtmp 更多配置

https://github.com/arut/nginx-rtmp-module/wiki/Directives

 

 

参考:https://www.vultr.com/docs/setup-nginx-rtmp-on-ubuntu-14-04

 

posted @ 2015-03-20 15:35  cocoajin  阅读(16234)  评论(0编辑  收藏  举报