博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
利用Simple-RTMP-Server(SRS)来进行直播
阅读量:6551 次
发布时间:2019-06-24

本文共 1963 字,大约阅读时间需要 6 分钟。

1、下载SRS

官方地址:

百度地址:

 

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

listen            1935;max_connections    1000;srs_log_tank        file;srs_log_file        ./objs/srs.log;http_api {    enabled    on;    listen        1985;}http_server {    enabled    on;    listen        8080;    dir        ./objs/nginx/html;}stats {    network    0;    disk        sda sdb xvda xvdb;}vhost __defaultVhost__ {    min_latency    on;    mr {        enabled    off;    }    mw_latency    100;    gop_cache    off;    queue_length    10;    tcp_nodelay    on;    hls {        enabled    on;        hls_path    ./objs/nginx/html;        hls_fragment    3;        hls_window    12;    }    dvr {        enabled    on;        dvr_path    ./objs/nginx/html/[app]/[stream].[timestamp].flv;        dvr_plan    session;        dvr_duration    30;        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的时长)

详细说明:

dvr配置节(录制成FLV)

详细说明:

http_hooks配置节(回调)

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

详细说明:

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

 

4、利用OBS推流和用VLC播放

例如推流地址:rtmp://10.10.3.62:1935/live/livestream

确定后,开始推流

由于设置了HLS分发和录制FLV,所以在nginx目录下(/usr/local/srs/objs/nginx/html/live)会有m3u8/ts和flv文件

有一个文件是:livestream2.1479218641365.flv.tmp,是由于正在推流当停止推流后就变成真正的FLV文件

ts文件的长度和个数是根据配置文件的hls_fragment和hls_window属性配置出来,详细请参看:

 

用VLC来播放HLS或RTMP

rtmp播放地址:rtmp://10.10.3.62:1935/live/livestream

hls播放地址:http://10.10.3.62/live/livestream.m3u8

 

转载地址:http://infco.baihongyu.com/

你可能感兴趣的文章
抵制克苏恩[Lydsy2017年4月月赛]
查看>>
MySql Study Notes
查看>>
6 - laravel 基础 - 视图与模板引擎
查看>>
团队第二次作业
查看>>
linux 查询当前文件夹下的目录数量
查看>>
【python】入门第一篇
查看>>
1682: [Usaco2005 Mar]Out of Hay 干草危机
查看>>
supersr--NSURLConnection iOS2.0苹果原生请求
查看>>
iphone-common-codes-ccteam源代码 CCPlistFileReader.h
查看>>
构造方法
查看>>
SQL效率之索引
查看>>
线性支持向量分类机及其实现
查看>>
Axure产品原型设计工具
查看>>
ASM文件系统
查看>>
ajax学习笔记(原生js的ajax)
查看>>
mysql 函数 事务
查看>>
1312 连续自然数和
查看>>
进程/线程介绍
查看>>
SPSS-Friedman 秩和检验-非参数检验-K个相关样本检验 案例解析
查看>>
java UDP server
查看>>