利用Simple-RTMP-Server(SRS)来进行直播

1、下载SRS

官方地址:http://www.ossrs.net/srs.release/releases/

百度地址:http://pan.baidu.com/s/1kV8WQpx

2、编译安装SRS

tar zxvf srs-2.0-b2.tar.gz

cd srs-2.0-b2

mv trunk/ /usr/local/srs

cd /usr/local/srs

./configure --full#--full,开启SRS所有的功能。

make

注意:官方说需要关闭防火墙和selinux

3、修改配置文件

vi /usr/local/srs/conf/srs.conf

listen1935;

max_connections1000;

srs_log_tankfile;

srs_log_file        ./objs/srs.log;

http_api {

enabled    on;

listen1985;

}

http_server {

enabled    on;

listen8080;dir./objs/nginx/html;

}

stats {

network0;

disk        sda sdb xvda xvdb;

}

vhost __defaultVhost__ {

min_latency    on;

mr {

enabled    off;

}

mw_latency100;

gop_cache    off;

queue_length10;

tcp_nodelay    on;

hls {

enabled    on;

hls_path    ./objs/nginx/html;

hls_fragment3;

hls_window12;

}

dvr {

enabled    on;

dvr_path    ./objs/nginx/html/[app]/[stream].[timestamp].flv;

dvr_plan    session;

dvr_duration30;

dvr_wait_keyframe    on;

time_jitter    full;

}

http_hooks {

enabled        on;

on_connect        http://10.10.3.62/kgdxpr;}

}

说明:

hls配置节(hls分发)

enabled:是否开启HLS

hls_fragment:指定ts切片的最小长度(单位:秒)

hls_window:指定HLS大小,即m3u8中ts文件的时长之和,超过总时长后,丢弃第一个m3u8中的第一个切片,直到ts的总时长在这个配置项范围之内。即SRS保证下面的公式:

hls_window >= sum(m3u8中每个ts的时长)

详细说明:https://github.com/ossrs/srs/wiki/v2_CN_DeliveryHLS

dvr配置节(录制成FLV)

详细说明:https://github.com/ossrs/srs/wiki/v2_CN_DVR

http_hooks配置节(回调)

on_connect  当客户端连接到指定的vhost和app时回调

详细说明:https://github.com/ossrs/srs/wiki/v2_CN_HTTPCallback

lua用ngx.var.request_body获取回调传的数据

#启动分发hls(m3u8/ts)的nginx

/usr/local/srs/objs/nginx/sbin/nginx

#启动srs服务

/usr/local/srs/objs/srs -c /usr/local/srs/conf/srs.conf

你可能感兴趣的:(利用Simple-RTMP-Server(SRS)来进行直播)