# 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.