5G时代的来临,势必会带来变革,未来,音视频多人聊天室 非常火,在此给大家分享一个快捷的实现方案
本方案主要实现的是,多人同事音视频 聊天室功能,包括上麦,下麦,权限控制,
送礼物,房间内文字聊天,房间内语音视频聊天,因为demo文档网上都有,所以只讲思路
一。首先选择 你喜欢的 一套音视频 直播SDK,
推荐 声网SDK (https://www.agora.io/cn/)
即构SDK(https://www.zego.im/)
两者皆为目前主流是直播SDK,实现基本音视频直播完全没有问题。
1.1
音视频引擎
下载官网Demo ,你很快可以跑起来一个 多人的语音/视频 demo
使用 第三方音视频sdk 好处在于, 你不需要关注他们的底层实现,只要申请好你的APPID, 就可以通过几行代码跑起来一个简单的 语音/视频 直播app
当你继续往下会发现,demo 单单只是完成 音频与视频的传播,如果需要实现控制指令,
则是需要 信令sdk /即时消息sdk ,来另外实现一套控制系统。
1.2
信令控制系统
目前上面的两个SDK都提供了独立的信令sdk ,可用于对接控制系统。
信令sdk
注:声网中使用rtm 实现即可,与信令一样
信令主要实现 了 房间内的即时通讯,省去了自己维护一套tcp服务器,目前该功能免费的。
由于信令系统单纯的频道广播,并不存在 主服务器的概念,
所有一些状态还是需要保存在平台业务服务器,
房间内状态需要通过操作的时候,首先操作业务服务器,成功返回后,经过信令系统进行广播即可。
房间内在线人数查询,一般的信令系统也都支持。
直播房间系统功能,礼物广播
文字聊天广播
二 平台业务服务器
使用 springboot + mongodb 实现
springboot 非常方便做负载均衡,而mongodb 则有很高的响应效率 和数据迁移的方便性
保证了 高承载量,与快速响应
三 礼物特效实现
使用 svga 实现动态效果。
目前大部分的直播app 的特效都是通过svga实现,网上可搜索出相关资料
四 表情图标
一般如果是视频聊天就没有必要,音频聊天室一般都会 表情包。
这是除了声音之外 可见的互动的功能
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。