• 推荐一款优秀的开源流媒体服务器系统:SRS(Simple RTMP Server)


    最近视频流媒体直播的应用很火,各种手机端的直播、美女聊天室、财经直播等等。由于项目的需要,需要寻找一款合适的流媒体直播系统,如果从头开发,显然成本和周期都不能在可接受的范围内。幸运的是,我找到了SRS这款优秀的直播系统,该系统官方地址为:http://www.ossrs.net/srs.release/releases/ 

    首先不得不提的是:SRS是国人开发,国人开发的开源系统近几年越来越多,是非常令人惊喜的事情,并且有很多非常优秀的,非常令人开心。

    另外不得不提的是:SRS的文档非常齐全,特别是wiki里面的各种说明,基本可以满足基础的需要。

    简单搭建了demo后测试,目前没有发现问题,基本可以满足项目的需要,也非常感谢SRS项目组的贡献。我也非常希望贡献自己绵薄之力,希望后面有机会可以帮SRS贡献一些bug的修改、或者新功能的添加等。自己的能力和精力可能目前还没有办法做独立的开源项目,希望从SRS起,参与和维护,也算贡献自己的一分力气。

    SRS比我想的要强大的多,已经不像一款出于兴趣的开源产品,很多功能齐备的商业化产品所需要的功能几乎都一网打尽了,而且更可贵的是作者长期的坚持和对品质的追求!这里可以大概罗列一些我比较喜欢的功能:

    1)集群模式(包括了边缘模式、Forward模式等),并且友好的支持CDN和服务器的灵活架设

    2)推流、Ingest流、直接接入视频文件等方式,非常灵活。当然,如果再结合一些优秀的推流软件,比如OBS则几乎目前市场上主流的流媒体直播需求就都能满足了。

    3)同时支持RTMP、HLS模式,甚至最新版还支持FLV模式(这个我很喜欢,因为同时具备了rtmp的实时性,以及hls中属于http协议的适应各种网络环境的特性,并且支持播放的播放器更多一些)。

    4)架设简单,文档齐全、demo齐全。

    5)具备基本的权限验证,可以限制推流和播放的权限。另外,只做核心功能这种理念是比较让人高兴的,比如验证,只要有接口,留给web去实现就可以了,这种设计其实是很让我喜欢的设计。

    6)最最重要的:开放源码和作者的坚持,以及字里行间体现出来对SRS的执着和追求完美。

    当然,这几天的接触下来,SRS也有他的一些可能的我的担忧:

    1)作者本身在一家流媒体提供的商业公司工作,不确定后期是否会因为和公司产品冲突、公司要求等原因,有停止、减缓、影响SRS更新的可能。

    2)产品的稳定度如何--- 一个优秀的产品,只具备所需功能是一方面,更重要的是产品的大并发、各种环境下的稳定性如何,这个因为我使用时间较短,还没有发言权。这也是最为担心的情况,好在我已经做好了熟悉、阅读代码的准备,希望有问题也能有办法去修改。

    3)开发文档相比使用和功能说明文档略微较少,对于代码结构、代码熟悉入手。当然,注释挺多的,如果有时间,我倒是想丰富下这方面的文档,学习流媒体服务器从学习SRS开始。 :) 

    接下来,就开始我愉快的SRS之旅吧

  • 相关阅读:
    MyBaits resultMap 返回值与对象不匹配处理
    Play 常见命令
    Yarn源码分析之MRAppMaster:作业运行方式Local、Uber、Non-Uber
    Yarn源码分析之事件异步分发器AsyncDispatcher
    MapReduce源码分析之Task中关于对应TaskAttempt存储Map方案的一些思考
    Yarn源码分析之MapReduce作业中任务Task调度整体流程(一)
    MapReduce源码分析之作业Job状态机解析(一)简介与正常流程浅析
    Yarn源码分析之如何确定作业运行方式Uber or Non-Uber?
    Yarn源码分析之MRAppMaster上MapReduce作业处理总流程(二)
    Yarn源码分析之MRAppMaster上MapReduce作业处理总流程(一)
  • 原文地址:https://www.cnblogs.com/hrybird/p/5070885.html
Copyright © 2020-2023  润新知