SRS官方文档和学习路径

SRS的文档很多很全,不过还是需要推荐学习路径,这样能进一步降低学习曲线。希望大家一定要花时间好好看,不能低估音视频的门槛,不能高估自己的聪敏程度。磨刀不误砍柴工,何况这柴是真的非常难,比你之前了解的任何技术都难。

快速预览

先过第一个门槛:看到直播和WebRTC长什么样子,能跑出来下图的效果,需要5~15分钟左右。

Note: 这个看似很容易,甚至直接在SRS官网中就能点开两个页面,但是一定要自己用SRS搭建出来才算,而不是直接打开线上的演示网页。

具体怎么做呢?有两个选择:

  • 使用Docker,请按照Usage: WebRTC for macOS或for CentOS的命令,将SRS服务和FFmepeg推流跑起来。如果你已经有Docker了,这个步骤不会超过5分钟。
  • 使用源代码编译,请按照SRS: Usage,从gitee中下载代码和编译。编译的时间会稍微长一些,估计15分钟之内肯定可以做好。

接触一个新的东西,首先就要有直观的体验和感觉,这个门槛虽然看起来很简单,但是它涉及到了音视频的几乎全链路的东西:

  • FFmpeg,强大的音视频客户端,推拉流和编解码,以及各种处理的能力。
  • Chrome(或浏览器),H5是最便捷的客户端,非常方便演示和学习,SRS功能基本上都有H5的演示。
  • 音视频协议:RTMP,HTTP-FLV,HLS和WebRTC,这些操作步骤中,已经涉及到了这些协议,也是实际应用中典型的用法。
  • SRS服务器,自己部署音视频云,或者提供音视频的云服务,SRS本质上就是视频云的一种服务器。

Note: 上面的拼图还缺少移动端,其实移动端只是一种端,而并没有新的协议,也可以下载SRS直播客户端,体验上面的推流和播放,也可以输入你的服务器的流地址播放。

深入场景

第二个门槛:了解音视频应用的各个典型场景,大约五个核心场景,总共需要3~7天左右。

请根据Github: Wiki,或者国内请访问Gitee: Wiki,这里详细描述了各个场景会使用到的技术,内容都是一样的,Wiki会同步更新到Github和Gitee。

典型的音视频业务场景,包括但不限于:

  • 全平台直播,小荷才露尖尖角。只需要上图的Encoders(FFmpeg/OBS)推送RTMP到SRS;一台SRS Origin(不需要Cluster),转封装成HTTP-FLV流、转封装成HLS;Players根据平台的播放器可以选HTTP-FLV或HLS流播放。
  • WebRTC通话业务,一对一通话,多人通话,会议室等。WebRTC是SRS4引入的关键和核心的能力,从1到3秒延迟,到100到300毫秒延迟,绝对不是数字的变化,而是本质的变化。
  • 监控和广电上云,各行业风起云涌。除了使用FFmpeg主动拉取流到SRS,还可以广电行业SRT协议推流,或监控行业GB28181协议推流,SRS转换成互联网的协议观看。
  • 直播低延迟和互动,聚变近在咫尺。RTMP转WebRTC播放降低播放延迟,还能做直播连麦,或者使用WebRTC推流,未来还会支持WebTransport直播等等。
  • 大规模业务,带你装逼带你飞。如果业务快速上涨,可以通过Edge Cluster支持海量Players,或者Origin Cluster支持海量Encoders,当然可以直接平滑迁移到视频云。未来还会支持RTC的级联和集群。

每个场景都可以自己搭建出来典型的应用。

了解细节

第三个门槛:了解每个纵向的技术点,应用场景,代码和问题排查,大约3~6月左右。

  • 视频专栏,包括环境搭建,代码分析,还有零声学院专业老师的讲解。
  • 解决方案,大家在各个不同场景中,应用SRS的分享和探索。
  • 部署方案,如何部署实现不同的具体功能,这些功能可以组合起来使用。
  • 集群和扩展,当业务量上升,如何扩展单机到集群,如何服务不同区域的用户。
  • 集成和定制,如何和现有系统对接,如何验证用户,安全和防盗链机制等。
  • 深度分析,协程原理,代码分析,高性能服务器框架,性能优化等。

如果能踏踏实实的了解完SRS,音视频真不难。

如果总想着三分钟XXX,那可不是很难么?

你可能感兴趣的:(SRS官方文档和学习路径)