SRS的混合服务SrsHybridServer—SRS源码分析

SrsHybridServer 顾名思义,就是混合服务,目前他里面有 3 个 Server 服务,分别是 Server,SrtServer,RtcServer,如下:

全局变量 _srs_hybrid 就是 SrsHybridServer 的实例,_srs_hybrid 实际上是一个管理器,register_server() 可以注册外部的 Adapter 模块进去。

_srs_hybrid 执行 initialize 初始化方法的时候,就会同时遍历所有的 Adapter 模块,执行他们的 initialize 初始化方法。

_srs_hybrid 执行 run 方法的时候,就会同时遍历所有的 Adapter 模块,执行他们的 run 方法。

我也不知道这种设计模式叫什么名称,如果有读者知道,请告知我补充上去。SrsHybridServer 的整个逻辑是比较简单的,流程图如下:


下面简单介绍一下 3 个 Server 服务的功能。

  1. Server,这个主要是 RTMP,HTTP 服务的 Server。但是 WebRTC over TCP 的功能也在这里
  2. RtcServer,这是 WebRTC UDP 流媒体服务器
  3. SrtServer,这是 SRT 流媒体服务器

本文是《 SRS原理 》一书中的文章,如需观看更多内容,请购买本书。

相关推荐
天天不在5513 天前
从拉代码到编出库,WebRTC 上的几道坎
音视频开发
刃若新发5 天前
Windows 用本地 MP4 文件搭建 RTSP/HTTP-FLV 播放环境指引
音视频开发
屏什么录14 天前
录屏超过两小时就卡顿崩盘?从参数调优到代码实现,一文彻底搞定长时间录屏
前端·音视频开发
字节跳动视频云技术团队15 天前
720P 直升 8K,解密 2026 抖音美好奇妙夜巨幕超分黑科技
人工智能·音视频开发
VimorphTech18 天前
文件名是 MP4 就能处理?用 ffprobe 检查视频流、音轨和时长
java·音视频开发
冬奇Lab21 天前
开源项目第242期:HyperFrames —— 写 HTML 就能渲染视频,专为 AI Agent 设计的确定性视频框架
人工智能·开源·音视频开发
屏什么录1 个月前
电脑如何录屏幕视频和声音?从工具到代码,7 种方案帮你彻底搞定
前端·音视频开发
VimorphTech1 个月前
转写结果怎么生成双语字幕?TypeScript 实现 SRT、WebVTT 与索引匹配
javascript·音视频开发
音视频牛哥1 个月前
人形机器人的未来发展趋势是什么?从VLA、实时视觉到规模化运营
机器学习·机器人·音视频开发
霍营_托尼1 个月前
纯前端播 40GB 本地视频?我把浏览器改造成了「磁盘流式」播放器
前端·javascript·音视频开发