【音视频】基于webrtc的聊天室的设计

目录

术语

webrtc建连流程

系统整体架构

信令服务器房间状态管理

用户加入房间流程

用户加入房间并推流:

其他用户订阅此用户流

用户加入房间并订阅房间其他所有用户

用户退出房间流程

平行集群模式​编辑

[第一阶段demo 设计](#第一阶段demo 设计)

参考文章


本想自己画一遍的,发现参考的文章 里所述,涵盖了自己想表达的,也就不重复画了

术语

  • sdp: 在webrtc握手建连时用于描述webrtc会话的文本信息,包含音视频编解码信息、传输方式、加解密等信息。
  • offer sdp: webrtc建连时主动呼叫方的sdp,一般包含多种编解码方案选项。
  • answer sdp: webrtc建连时被动应答方的sdp,应答方选择优先的编解码信息并返回呼叫方

webrtc建连流程

系统整体架构

系统主要组成部分

  • Client: webrtc客户端,支持web/ios/android等形态。
  • MediaServer: 媒体服务器,负责直播流的发布订阅转发转存。
  • SignalServer: 信令服务器,负责videoroom房间状态维护,用户加入退出消息广播。
  • 用户/业务系统: 用户实现用户鉴权、房间控制等业务逻辑。

信令服务器房间状态管理

用户加入房间流程

用户加入房间并推流:

其他用户订阅此用户流

用户加入房间并订阅房间其他所有用户

用户退出房间流程

平行集群模式

第一阶段demo 设计

参考文章

链接:https://www.jianshu.com/p/eb36cfed77ff

相关推荐
夏幻灵9 分钟前
HTML5里最常用的十大标签
前端·html·html5
冰暮流星10 分钟前
javascript之二重循环练习
开发语言·javascript·数据库
Mr Xu_23 分钟前
Vue 3 中 watch 的使用详解:监听响应式数据变化的利器
前端·javascript·vue.js
未来龙皇小蓝26 分钟前
RBAC前端架构-01:项目初始化
前端·架构
程序员agions34 分钟前
2026年,微前端终于“死“了
前端·状态模式
万岳科技系统开发35 分钟前
食堂采购系统源码库存扣减算法与并发控制实现详解
java·前端·数据库·算法
那个村的李富贵41 分钟前
CANN赋能AIGC“数字人”革命:实时视频换脸与表情驱动实战
aigc·音视频
程序员猫哥_42 分钟前
HTML 生成网页工具推荐:从手写代码到 AI 自动生成网页的进化路径
前端·人工智能·html
龙飞0543 分钟前
Systemd -systemctl - journalctl 速查表:服务管理 + 日志排障
linux·运维·前端·chrome·systemctl·journalctl
晚霞的不甘1 小时前
CANN 支持强化学习:从 Isaac Gym 仿真到机械臂真机控制
人工智能·神经网络·架构·开源·音视频