Skip to content

BravoMediaServer

winlin edited this page May 3, 2016 · 43 revisions

#Bravo Media Server

BMS(Bravo Media Server)是基于SRS开发的商业版,由chnvideo研发。

SRS和其他服务器的对比,参考Compare.

Major Compare

BMS和SRS的主要区别如下:

Feature SRS BMS Remark
级别 工业级 工业级 发行版本都是工业级集群标准
开源 BMS为闭源商业软件,提供售前咨询和售后服务,
以及定制化开发,系统对接等
发行版 1.0 3.0 SRS目前发行版为1.0,SRS2为alpha测试版。
BMS合并了SRS2和SRS3的功能,为发行版
周期 1-2年 6个月 SRS的版本发行周期为1到2年
代码量 5.95万行 11.99万行 包含服务器的注释和单元测试
BMS比SRS多89.75%的代码量。
自动测试 支持 BMS包含自动化测试系统,每次提交自动回归测试

Detail Compare

BMS除了有SRS的10个基础功能,还增强了13项大功能,新增了14个大功能。详细对比如下(注意对比的是发行版,即SRS1和BMS3)。

以下是BMS和SRS都有的功能:

Feature SRS BMS Remark
HTTP回调 支持 支持 和外部业务系统对接
测速 支持 支持 支持服务器上行和下行速度测试
TS矫正 支持 支持 支持时间戳矫正,避免重推和跳变引起播放器卡死
Gop合并 支持 支持 HLS按照GOP输出切片
ATC 支持 支持 支持绝对时间戳
边缘 支持 支持 源站和边缘组成流媒体分发集群
日志 支持 支持 提供可追溯的排错日志
采集 支持 支持 将外部流采集到服务器
转发 支持 支持 将流转发给其他服务器
HDS 实验性 实验性 Adobe HDS分发

以下为BMS增强的功能:

Feature SRS BMS Remark
输入 RTMP RTMP, FLV, RTSP, UDP 推流到服务器的输入方式
输出 RTMP, HLS RTMP, HLS, FLV, TS, MP3, HLS+ 服务器分发给客户端的方式
边缘回源 RTMP RTMP, FLV, HLS, HLS CUP 边缘支持以RTMP或HTTP FLV/HLS方式回源
DVR FLV文件 对接观止收录系统 支持录制RTMP到FLV文件
低延迟 RTMP(3s+) RTMP/FLV(1s+) 低延迟模式
转码 FFMPEG 对接观止转码云 转码消耗非常多的系统资源
HTTP API 简版 完善的API支持 API为服务器提供给外部的接口
下行并发 2.7K 7K 下行RTMP/FLV的并发
上行并发 1.2K 4K 上行推流RTMP的并发
热备 RTMP RTMP, HLS 边缘在上层服务器故障时,切换到备用服务器
HTTP 实验性 商用服务器 内置HTTP服务器,实现HTTP流、API、内存HLS的分发
Gop Cache 支持 多GOP 缓存最近的Gop,让播放器快速启动(<0.1s),BMS支持cache多个gop,更快启动
切换回源 部分 支持 SRS/BMS在错误时切换源站,BMS支持API调用切换源站

以下为BMS新增的功能:

Feature SRS BMS Remark
源站集群 支持 基于Redis的源站集群,边缘自动负载均衡和容错
HLS+ 支持 支持流模式分发HLS切片,边缘转封装,同一套流媒体分发(不用走HTTP集群)
时移 对接观止时移系统 在时移的基础上可以做高级收录和P2P
CDN预推 支持 将HLS预推到CDN节点
计费 支持对接计费系统 计费系统做定制和对接
HLS纯音频 不支持 支持MP3和AAC HLS纯音频即没有视频流
Vhost转换 不支持 支持 边缘回源,以及复杂业务系统需要转换Vhost
Kafka 不支持 支持 对接到Kafka大数据集群,参考BIG技术
动态配置 不支持 支持 通过HTTP API从业务系统动态加载配置
日志切割 不支持 支持 nginx风格的日志切割
HLS CUP 不支持 支持 支持HLS多源站并发回源
毫秒开 不支持 支持 支持毫秒级灌满播放器缓冲区,比秒开更快
内存转储 不支持 支持 支持分析当前服务器的内存消耗,方便运维
延播 不支持 支持 支持延迟播出(流审核)和时移

Tips

观止BMS流服务器核心技术汇总:

  1. 碧池,音译为Bitch,为BMS动态配置子系统,可以从业务系统读取配置,依据更新机制主动更新配置,碧池使用http api和外部对接,可以支持任何符合条件的配置存储和管理方式。
  2. 不卡,音译为Bocar,为BMS的源站集群子系统,打通源站关键环节,CDN源站分布在各地,能覆盖全国,真正为不卡的流媒体系统打下了坚实的基础。不卡对外使用http api,可以对接到符合标准的业务系统(元数据管理)。
  3. 闪电,英译为Bott(闪电英文应该是bolt,我英文不好给起错了名字),BMS的转码子系统,对接观止闪电一样速度的转码系统,延迟和启动速度比一般cdn的快一个级别,名副其实的闪电。
  4. HLS+,HLS+(HLS PLUS)是BMS提供的流式HLS功能,支持在边缘服务器将RTMP转封装为HLS,通过几个关键算法将HLS和RTMP/FLV同时提供服务,具有回源量小、系统简单、排错容易、防盗链、低延迟等优势。
  5. BIG,为BMS大数据子系统。BMS将系统的可追踪日志和重要的服务数据,发送给BIG,BIG压缩后和后端大数据系统对接,或者直接写入Kafka集群,可以对接其他大数据系统。
  6. HLS-CUP,cup(hls concurrency upstream),解决网络情况不佳时的回源问题,并发回源保证回源质量。FLV和RTMP回源在遇到网络状况问题时,会有各种问题,譬如移动网络在基站切换时TCP会出问题,跨国传输时丢包严重等等。

Contact

有需要请联系chnvideo.

Welcome to SRS wiki!

SRS 5.0 wiki

Please select your language:

SRS 4.0 wiki

Please select your language:

SRS 3.0 wiki

Please select your language:

SRS 2.0 wiki

Please select your language:

SRS 1.0 wiki

Please select your language:

Clone this wiki locally