[+] 协议

This commit is contained in:
acgist
2022-11-17 07:06:07 +08:00
parent d636d6b44a
commit e1d497f28e
79 changed files with 1650 additions and 387 deletions

View File

@@ -3,21 +3,17 @@
基于WebRTC实现信令服务实现Mesh、MCU和SFU三种媒体通信架构支持直播会议两种场景。
项目提供WebRTC服务信令终端已有H5示例其他终端需要自己实现。
## 授权
开源公益免费,商用需要购买授权。
## 模块
|模块|名称|描述|
|:--|:--|:--|
|taoyao|桃夭|桃之夭夭灼灼其华|
|taoyao-boot|启动模块|基础模块|
|taoyao-boot|基础模块|基础模块|
|taoyao-live|直播|直播、连麦|
|taoyao-test|测试|测试工具|
|taoyao-media|媒体|录制、视频美颜、AI识别、音频混音、变声、降噪|
|taoyao-media|媒体|录制、视频(水印、美颜、AI识别、音频降噪、混音、变声)|
|taoyao-signal|信令|信令服务|
|taoyao-server|服务|启动服务|
|taoyao-server|启动服务|启动服务|
|taoyao-meeting|会议|会议模式、广播模式、单人对讲|
|taoyao-webrtc|WebRTC模块|WebRTC模块|
|taoyao-webrtc-sfu|WebRTC SFU架构|SFU架构|
@@ -36,15 +32,15 @@
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| taoyao-live | taoyao-meeting |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| taoyao-signal |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| taoyao-media |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| taoyao-mcu / taoyao-sfu | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ taoyao-mesh +
| taoyao-jitsi / taoyao-kurento | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| taoyao-boot |
| taoyao-signal |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| taoyao-boot |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
```
@@ -54,50 +50,19 @@
> 只有公网Mesh架构才需要真正的内网穿透
## 信令
|功能|描述|标识|响应|
|:--|:--|:--|:--|
|注册|终端注册(同步信息)|||
|关闭|终端关闭(注销)|||
|心跳|终端心跳|||
|创建会议|创建会议||返回会议ID|
|进入会议|没有会议自动创建||返回会议终端同时广播进入消息|
|离开会议|离开会议||广播离开消息|
|关闭会议|关闭会议(踢出所有人员)||广播关闭消息|
|终端列表|||返回所有终端列表|
|会议终端列表|||返回所有会议终端列表|
|直播终端列表|||返回所有直播终端列表|
|邀请终端|会议邀请终端(主动/被动)||单播邀请|
|踢出终端|会议踢出终端||单播踢出|
|开启直播||||
|关闭直播||||
|发布|控制终端推流|||
|取消发布|控制终端暂停推流|||
|订阅|订阅终端媒体流|||
|取消订阅|取消订阅终端媒体流|||
|暂停媒体流|暂停终端媒体流分流(不关媒体流通道)|||
|恢复媒体流|恢复终端媒体流分流(不关媒体流通道)|||
|开启录像||||
|关闭录像||||
|终端状态||||
|单播消息|发送指定终端|||
|广播消息|广播排除自己的所有终端|||
|全员广播消息|广播包括自己的所有终端|||
|异常|异常信息|||
## 直播
终端推流到服务端,由服务端分流。
## 会议
Mesh架构声音视频控制部分功能均在终端实现同时不会实现终端录制、美颜、AI识别、变声、混音等等功能。
MCU/SFU声音视频控制在服务端实现如果没有终端订阅并且没有录制是不会对终端进行拉流。
### Mesh
流媒体点对点连接,不经过服务端。
> 录制、AI识别等等功能只能在终端实现。
### MCU
终端推流到服务端,由服务端分流并且混音。