文章目录

会议系统构建学习笔记

适合目标:系统掌握会议系统从架构设计到核心模块实现的主线,建立房间、成员、媒体、信令、SFU 和弱网治理的整体认知。
学习定位:这一份偏“会议系统总览和构建主线”。
学习原则:先理解会议系统的模块拆分,再进入 WebRTC、SFU 和客户端设计。


目录

  1. 会议系统是什么
  2. 会议系统总体架构
  3. 客户端需要哪些模块
  4. 服务端需要哪些模块
  5. 房间、成员、流模型
  6. 信令、媒体、回放的关系
  7. 弱网治理与性能优化
  8. 高频面试题
  9. 一页总结

1. 会议系统是什么

会议系统本质上是:

一个多人实时音视频协作系统。

它通常包含:

  1. 音视频连麦
  2. 房间和成员状态
  3. 屏幕共享
  4. 聊天和控制消息
  5. 可选录制和回放

2. 会议系统总体架构

客户端
  -> 信令服务
  -> SFU
  -> 可选录制/回放服务

更完整地说:

采集 -> 编解码 -> WebRTC 传输 -> SFU 转发 -> 远端解码播放
                 \-> 信令服务负责协商和状态同步

3. 客户端需要哪些模块

  1. 房间管理
  2. 成员管理
  3. RTC 连接管理
  4. 设备管理
  5. 音视频控制
  6. 屏幕共享
  7. 统计与网络质量检测

4. 服务端需要哪些模块

  1. 信令服务
  2. SFU 媒体转发服务
  3. 鉴权服务
  4. 录制和回放服务
  5. 监控和日志服务

5. 房间、成员、流模型

5.1 房间

负责:

  1. 成员容器
  2. 角色和权限
  3. 会议配置

5.2 成员

负责:

  1. 用户身份
  2. 在线状态
  3. 音视频状态

5.3 流

负责:

  1. 音频流
  2. 摄像头流
  3. 屏幕共享流

6. 信令、媒体、回放的关系

6.1 信令

负责协商和状态同步。

6.2 媒体

负责实时音视频传输。

6.3 回放

负责会后录制与重看。

一句话:

信令管协商,媒体管实时传输,回放管历史内容。


7. 弱网治理与性能优化

7.1 弱网治理

  1. 自适应码率
  2. 降分辨率
  3. 降帧
  4. NACK / FEC

7.2 性能优化

  1. 降低多路渲染开销
  2. 控制编解码压力
  3. 优化订阅策略

8. 高频面试题

8.1 会议系统为什么通常选择 SFU

因为多人会议里,SFU 在延迟、扩展性和成本之间更平衡。

8.2 信令服务为什么不能替代媒体服务器

因为信令主要负责状态和协商,不负责大规模媒体流传输。

8.3 会议系统和直播系统最大的区别是什么

会议系统更强调多人双向实时互动,而直播系统更偏一对多分发。


9. 一页总结

9.1 会议系统关键词

房间、成员、流、信令、SFU、WebRTC、屏幕共享、弱网治理。

9.2 记忆口诀

会议系统看多人实时互动,核心是房间模型、信令协商和 SFU 转发。