/taoyao

桃夭是套基于`Mediasoup`开发的`WebRTC`音视频信令服务,可以非常方便的扩展信令接入更多智能终端。

Primary LanguageJavaApache License 2.0Apache-2.0

桃夭

桃夭是套基于Mediasoup开发的WebRTC音视频信令服务,可以非常方便的扩展信令接入更多智能终端。

Java GitHub stars Gitee stars
GitHub Workflow Status GitHub release (latest by date) GitHub code size in bytes GitHub


当前程序处于开发阶段,大部分功能没有实现,可以使用的功能也没有经过大量测试,建议不要用于生产。

模块

模块 名称 描述
taoyao-client-web Web终端 Web终端
taoyao-client-media 媒体终端 媒体服务
taoyao-signal-server 信令服务 终端信令控制
taoyao-client-android 安卓终端 安卓终端

Web终端功能

功能 是否支持 是否实现 描述
P2P 支持 完成 视频会话(监控)
Mediasoup 支持 完成 视频房间(会话)
控制 支持 完成 完整控制信令

安卓终端功能

功能 是否支持 是否实现 描述
P2P 支持 完成 视频会话(监控)
Mediasoup 支持 完成 视频房间(会议)
控制 支持 完成 部分控制信令
拍照 支持 完成 拍照
录像 支持 完成 录制
混音 支持 暂未实现 多路混音
水印 支持 完成 视频水印

注意:Web终端不支持同时进入多个视频房间,安卓终端支持同时进入多个视频房间。

证书

本地开发测试安装docs/certs中的ca.crt证书到受信任的根证书颁发机构

部署

部署文档

集群

信令服务支持下挂多个媒体服务,但是信令服务本身不具备分布式集群功能,如需实现给出以下两种实现建议:

信令分区

将信令服务进行分区管理,分区不要直接管理终端,优先选择分区,然后选择信令服务。

代理终端

将下级信令服务的终端全部使用代理终端注册到上级信令服务,上级信令服务代理终端处理信令时直接路由到下级路由服务,这样一级一级路由直到发送给真正的终端为止。

重连

信令重连

所有终端信令默认支持重连

媒体重连

信令没有断开媒体重连依赖具体协议支持,如果信令断开默认关闭所有媒体,信令重连以后需要自己实现媒体重连(控制方主动邀请或者重连方主动进入)。