Giter VIP home page Giter VIP logo

bull-live-server's Introduction

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.

bull-live-server's People

Contributors

wenjiegit avatar

Watchers

James Cloos avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.