# Bull-Live-Server **Repository Path**: jjzhang166/Bull-Live-Server ## Basic Information - **Project Name**: Bull-Live-Server - **Description**: Bull Live Server 简称 BLS ,旨在使用C++语言提供强大功能和高性能的流媒体直播服务器 - **Primary Language**: C/C++ - **License**: Not specified - **Default Branch**: master - **Homepage**: https://www.oschina.net/p/bull-live-server - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 4 - **Created**: 2021-06-07 - **Last Updated**: 2024-10-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README Bull-Live-Server ================ Bull Live Server 简称 BLS ,旨在使用C++语言提供强大功能和高性能的流媒体直播服务器。 为何要写 BLS ? 1、simple rtmp server https://github.com/winlinvip/simple-rtmp-server
SRS很简洁却功能太少,BLS 使用C++语言强有力的现代特性,完全重新架构和编码, 结合基于state thread library的基础库和ST架构可以功能更强大,可以让编码更简洁,功能更强大。

2、crtmp server http://www.rtmpd.com/
CRTMPD功能很完善,架构上却很复杂,C++代码也写得晦涩难懂。
而BLS会使用更优秀的C++特性。

3、nginx-rtmp https://github.com/arut/nginx-rtmp-module
这个基于nginx,性能自不必说,功能比crtmp少,但是纯异步架构的复杂度和简洁性都不够好。

4、red 5 http://www.red5.org/
red 5 性能有瓶颈,而且和新的一些rtmp 服务器对接会有问题。

5、wowza http://www.wowza.com/
基于java语言,收费版,不适合屌丝们部署,但架构比较陈旧,而且配置很繁琐,正在作古之中。

6、FMS http://www.adobe.com
现在叫AMS,功能和性能都不差,基本什么功能都有,毕竟是adobe自家的,但是license很昂贵!


比较了这么多,BLS要做什么?目标是什么?定位是什么?
BLS 就是为了汲取上述软件的特点,做一个更好用的直播服务器,要免费,要开源,功能和性能不打折,
代码要简洁、易懂。
usage ===== **Step 1**: get BLS > git clone https://github.com/wenjiegit/Bull-Live-Server.git&& cd > Bull-Live-Server/trunk **Step 2**: build BLS > ./autogen.sh && make **Step 3**: start BLS > ./bin/bls -f conf/bls.conf Plan ================ [1] support AMF0/AMF3
[2] support RTMP streaming............................................**OK**
[3] support HLS
[4] support HDS
[5] support HTTP FLV streaming
[6] support transcode with ffmpeg
[7] support multi_process...............................................**OK**
[8] support nginx like configure file...................................**OK**
[9] support configure reload
[10] support fast gop.......................................................**.OK**
[11] support dvr(digital video record)
[12] support fast hls.
Code Line History ================ [0.1]  2014-09-19     line 10901
[0.1]  2014-12-21     line 13394, refine code structure.
history ================ [0.1]  2014-12-20   multi-process push supported.
[0.1]  2014-10-10   support multiprocess.
[0.1]  2014-09-19   support fmle or flash pushlish stream.
[0.1]  2014-09-19   support flash or vlc like play stream.
[0.1]  2014-09-19   support amf0 serialize.
[0.1]  2014-07-05   init project.