RTCPilot的信令流程

大家好,今天介绍:RTCPilot的信令流程

RTC Pilot是一个基于C++17开发的WebRTC SFU开源,支持跨平台,支持windows,linux,macos,二次开发效率高;并且是开源中唯一全面支持WebRTC级联的开源服务。

这个系列的内容。

•如何部署和使用一个简单的视频会议

•如何部署一个分布式多服务级联的视频会议

•介绍RTCPilot的信令流程

•介绍RTCPilot级联的信令流程

•RTCPilot实现会议实时语音转文字(RTCPilotMCU)

上一期我们介绍RTC pilot如何搭建一个RTC集群,提供分布式的视频会议系统。

今天我们介绍RTC pilot的信令流程,方便开发者做二次开发。

视频地址:

如何配置RTC集群

信令基于websocket,信令类型有两类:

•Request消息

有发送和返回消息Response,消息是双向的

•Notify消息

仅发送,没有回复消息,消息是单向的

信令流程如图,有三个角色:两个客户端client A和client B;一个RTC pilot SFU,也就是WebRTC服务端。

信令流程如下:

1.Join Request: client A在web socket连接成功后,发送join request消息。因为房间内没有其他用户,返回用户信息为空

2.Push Request: client A在join后,发送push request消息,将自己的WebRTC peer connection的SDP发送给SFU;SFU收到后,通过response消息返回自己支持的SDP信息。Client A收到后,就可以开始建立WebRTC通道和开始推流

3.client B开始web socket连接SFU,并发送join request消息,因为房间里面已经有了client A,client B将收到带有client A用户信息和流信息的response消息。

4.SFU收到client B的join消息后,会向整个房间广播client B的用户信息,这里会向client A发送new User notify消息

5.Client B因为通过join的response得到Client A的推流信息,所以发送pull request消息,进行拉流

6.Client B拉流成功后,同样可以进行推流,发送push request开始推流;

7.SFU收到Client B的push request后,将其流信息在房间内广播,这里向client A发送new pusher notify消息

8.Client A收到new pusher notify消息后,得到client B的流信息,就可以发送pull request进行拉流操作。

信令具体的json内容:

具体的信令json内容,在开源markdown文档中。websocket信令设计文档地址:

复制代码
https://github.com/runner365/RTCPilot/blob/master/ws_design.md

国内镜像

复制代码
https://gitee.com/xiaoq_bj/rtcpilot/blob/master/ws_design.md

关注音视频小话,关注抖音号,视频号,带来更多音视频技术

相关推荐
SendTomo16 小时前
send.wang:基于浏览器WebRTC实现无客户端文件互传
网络·python·网络协议·webrtc·p2p
小小杨树3 天前
【C++】学习:双缓冲视频流水线深解析
c++·性能优化·音视频开发
老孙讲技术6 天前
老板说「网页上嵌个监控就行」?黑屏三小时后我才搞懂:播放器要的不是 accessToken
物联网·音视频开发·小程序·云开发
老孙讲技术6 天前
监控刷了 200 条动检,漏掉一次紧急按钮:养老 SaaS 的事件桥接与 P0/P1 分级
物联网·音视频开发·小程序·云开发
应用市场7 天前
无线控制与图传协议全景:从 S.BUS 到 WebRTC,一篇讲透遥控、数传与视频链路
音视频·webrtc
福大大架构师每日一题7 天前
webrtc-rs/webrtc v0.20.3更新:Android 网络切换后 ICE Restart 卡死约 10 秒的问题终于解决
android·网络·webrtc
音视频牛哥7 天前
从移动终端到行业视频前端:SmartGBD 如何让 Android 与 HarmonyOS NEXT 接入 GB28181
音视频开发·视频编码·直播
SendTomo8 天前
P2P传输中IP交换的可控性实现
webrtc·p2p
SendTomo8 天前
基于WebRTC的P2P文件传输IP暴露是正常现象
网络·网络协议·tcp/ip·webrtc·p2p
qingmiaozhuan10 天前
电脑录屏黑屏?只有声音没画面?从原理到排查一篇搞定
ffmpeg·电脑·音视频开发·录屏技术·电脑录屏