ZEGO全新语音聊天室方案,2小时复刻 Clubhouse
真的火了!
新晋带货王马斯克在 Clubhouse“开房”之后,直接让 Clubhouse 爆火出圈,据说,Clubhouse 平台邀请码现在在ebay上已经卖到了快200刀一个。
与此同时,Clubhouse 的热度也引发了国内互联网的关注,除了争相下载试用、四处“求码”之外,不少社交、泛娱乐行业从业者也表示要跟进 Clubhouse 的玩法。
而就在发文前夕,Clubhouse 被墙的消息已经传出,可以肯定这一消息会加速国内相关产品的诞生,不少泛娱乐玩家已经在加班加点抢占先机。那么,实现类 Clubhouse 的玩法难吗?
01
2小时搭建一个新 Clubhouse
其实 Clubhouse 类似的产品,我们并不陌生,即构早就提供了成熟的语音互动服务,并成功服务客户推出了成熟的语音互动产品,比如主打音频内容的喜马拉雅、语音社交的Soul、和线上狼人杀等行业主流产品。
如今,语音社交再次爆火,在国内众多团队“紧急出击”的背景下,即构深度研究了 Clubhouse 的业务逻辑之后,基于已经成熟的音视频互动技术,推出全新「语音聊天室方案」——4步快速搭建一个新 Clubhouse。
① 主播创建房间
房主通过语音聊天室房间服务创建房间,房间服务将此房间加入由语音聊天室语音列表维护的在线房间列表。
然后房主执行一个所有用户都需要做的进房收听操作:进入即构房间,监听流信息更新触发拉流,以便收听房间内其他主播的声音。
② 听众加入房间
听众从语音聊天室语音列表服务中获取房间列表,再从语音聊天室房间服务中获取需要收听的房间信息,如房间ID、房主、主播、听众列表等信息。然后同主播一样做进房收听操作。
③ 听众申请上麦/麦位更新
听众申请上麦是一个业务概念:听众向语音聊天室房间服务发起上麦申请,语音聊天室房间服务将此申请消息推送给房主,房主审批后将结果再经过房间服务发送给申请方。如果申请通过,房间服务会通知所有房间内的用户麦位更新信息。
④ 麦上主播开麦/闭麦
麦上主播可以开麦发言,开麦操作只需要调用即构SDK的推流接口,房间内的其他人就能够收听该主播的声音。当主播不想发言了,就可以闭麦,闭麦操作只需要调用即构SDK的停止推流接口就可完成。
基于以上4个步骤,你可以在2小时做出一个类 Clubhouse 的产品,在“速度”上快人一步。
当然,除了速度,还有质量——即构语音聊天室方案对语音互动场景进行了极致优化。
02
3大极致体验
不同于其他类型的社交产品,当音频为唯一沟通介质时,用户对声音会更加敏感,从而对音频产生更高的要求,基于即构语音聊天室搭建的类Clubhouse具备三大优势:
① 极致音质保障
在一个只能听语音的产品里什么最重要?当然是音质。试想一下,如果一个房间内的聊天对话总是出现卡顿、不清晰、噪声等状况,这个房间还会有观众吗?麦主们还会有耐心继续聊下去吗?
针对这一问题,即构通过3A(AEC、ANC、AGC)处理技术对音质进行了高度优化处理,确保在语音连麦时获得清晰、高保真的音质体验。同时还支持双声道、全频带采集和编码,最高可达192Kbps码率。
② 卓越的多人互动效果
除了音质,其次就是实时互动效果。在多人语聊形式的场景下,如果出现多人同时进行开麦、上下麦、快速开关麦等情况,互动环节容易遭受影响进而造成互动效果差的问题。
即构可以在多人通话时保障互动效果。比如在多人同时说话的嘈杂环境下,支持开启多路混音模式,通过设定拉流端在多路混音时突出的目标,实现特定用户语音聚焦,既既保留多人同时讲话的沟通讨论氛围,也同时凸显关键人物的表达效果。
③ 高可用的网络保障
在 Clubhouse 上,一个语音聊天室内最多可以聚集5000人,人一多就容易出问题。比如有人在美国,有人在中国,跨国沟通的情况怎么保障?再比如一个麦主刚上了地铁,网速突然从4Mbps骤降几十k,还能确保连麦通常吗?
即构在全球覆盖超过500个核心节点,覆盖全球212个国家或地区,基于即构自研的海量有序数据网络MSDN(Massive Serial Data Network),可以确保全球任何地区都可以享有300ms超低延迟的高质语音对话,同时在上、下行80%丢包情况下,也能保持流畅通话体验。面对客户业务量爆增时的扩容需求,即构能以分钟级的速度迅速响应,实现用户无感知扩容。
03
“后来者”的机会在哪里?
在 Clubhouse 爆火之后,国内紧跟其后的产品在本土化上还有哪些机会?基于国内市场现状,即构语音聊天室提供了更多能力支持,让你在功能、玩法上轻松拓展。
- 内容审核
Clubhouse 被墙,不少人猜测是因为聊天内容太过于“放飞自我”导致的,在我们日渐趋严的监管下,内容审核不可不加。
即构提供的全套内容审核方案,将多重鉴定算法融入产品架构中,让客户实现“音视频+内容审核”的高效集成上线。
- 防炸麦管理
什么是炸麦?简单来说就是被人利用外挂或者漏洞,非法上麦,在聊天室恶意发言扰乱秩序。
即构提供房间鉴权、推流鉴权,可以防止未授权的用户登录和推流;后台流新增时判断用户是否上麦,并提供后台踢人接口可将用户踢出;支持拉流端静音,可将监听中的疑似用户集合,并将集合中的用户统一设置静音。
- 声音趣味互动
在趣味互动上,即构可以让你快速集成变声、立体声、混响等特效功能。用户可以通过模拟萝莉、大叔、熊孩子等多种变声效果达到趣味互动的目的。
相信在目前的火热玩法中加入了个性化的创新功能之后,不久的将来,我们就能看到国内企业更出圈的音视频互动产品!
活动预告
为了快速响应国内客户的迫切需求,我们将在2月16日举办一场线上活动,手把手告诉你如何在2个小时复刻出 Clubhouse,扫码即可预约围观~
ZEGO全新语音聊天室方案,2小时复刻 Clubhouse的更多相关文章
- C#实现多人语音聊天
在上一篇文章 实现一个简单的语音聊天室(多人语音聊天系统)中,我用C#实现了一个简单的语音聊天室,并给出了源代码下载.尽管有源代码,可是非常多朋友反映,理解起来还是有些模糊.不够清楚.如今想来,是由于 ...
- [Java]直播方案----[接入环信聊天室]+[腾讯云直播]
辛辛苦苦写的,转载请注明一下,这点信任我想还是有的吧,谢谢了. http://www.cnblogs.com/applerosa/p/7162268.html 之前做了直播,一直没时间写,好不容易闲下 ...
- 使用.NET Core和Vue搭建WebSocket聊天室
博客地址是:https://qinyuanpei.github.io. WebSocket是HTML5标准中的一部分,从Socket这个字眼我们就可以知道,这是一种网络通信协议.WebSocket是 ...
- Ext JS学习第十六天 事件机制event(一) DotNet进阶系列(持续更新) 第一节:.Net版基于WebSocket的聊天室样例 第十五节:深入理解async和await的作用及各种适用场景和用法 第十五节:深入理解async和await的作用及各种适用场景和用法 前端自动化准备和详细配置(NVM、NPM/CNPM、NodeJs、NRM、WebPack、Gulp/Grunt、G
code&monkey Ext JS学习第十六天 事件机制event(一) 此文用来记录学习笔记: 休息了好几天,从今天开始继续保持更新,鞭策自己学习 今天我们来说一说什么是事件,对于事件 ...
- Python实现机器人语音聊天
一.前言说明 1.功能简述 登录后进入聊天界面,如果服务器都在同一个地址,则都进入同一个房间 进入/离开/发消息同一房间用户都可以看到,输入“tuling”或“chatbot”可以切换为和Tuling ...
- php websocket-网页实时聊天之PHP实现websocket(ajax长轮询和websocket都可以时间网络聊天室)
php websocket-网页实时聊天之PHP实现websocket(ajax长轮询和websocket都可以时间网络聊天室) 一.总结 1.ajax长轮询和websocket都可以时间网络聊天室 ...
- Vue开发多人聊天室 复盘总结
前言 在上个月初,接到一个需求,要开发一个 聊天通讯 模块 并且 集成到 项目中的多个 入口,实现业务数据的记录追踪. 接到需求后,还挺开心,这是我第一次 搞 通讯 类的需求,之前一直是 B 端 的业 ...
- 网络编程-基于Websocket聊天室(IM)系统
目录 一.HTML5 - Websocket协议 二.聊天室(IM)系统的设计 2.1.使用者眼中的聊天系统 2.2.开发者眼中的聊天系统 2.3.IM系统的特性 2.4.心跳机制:解决网络的不确定性 ...
- 使用WebRTC搭建前端视频聊天室——点对点通信篇
WebRTC给我们带来了浏览器中的视频.音频聊天体验.但个人认为,它最实用的特性莫过于DataChannel——在浏览器之间建立一个点对点的数据通道.在DataChannel之前,浏览器到浏览器的数据 ...
- 使用WebRTC搭建前端视频聊天室——入门篇
http://segmentfault.com/a/1190000000436544 什么是WebRTC? 众所周知,浏览器本身不支持相互之间直接建立信道进行通信,都是通过服务器进行中转.比如现在有两 ...
随机推荐
- odoo 开发入门教程系列-模块交互
模块交互 在上一章中,我们使用继承来修改模块的行为.在我们的房地产场景中,我们希望更进一步,能够为客户生成发票.Odoo提供了一个开发票模块,因此直接从我们的房地产模块创建发票是很简单的,也就是说,一 ...
- Kubernetes(K8S) kubesphere 介绍
使用 Kubeadm 部署 Kubernetes(K8S) 安装--附K8S架构图 官网地址:https://kubesphere.com.cn/ KubeSphere 是个全栈的Kubernetes ...
- ByteHouse云数仓版查询性能优化和MySQL生态完善
ByteHouse云数仓版是字节跳动数据平台团队在复用开源 ClickHouse runtime 的基础上,基于云原生架构重构设计,并新增和优化了大量功能.在字节内部,ByteHouse被广泛用于各类 ...
- 如何在SpringBoot项目中兼容Jersey和SpringMVC框架?
文章目录 Jersey框架介绍 常用的注解: SpringBoot中SpringMVC兼容Jersey 整合Jersey REST(Representational State Transfer)表象 ...
- FreeSWITCH对接vosk实现实时语音识别
环境:CentOS 7.6_x64 FreeSWITCH版本 :1.10.9 Python版本:3.9.2 一.背景描述 vosk是一个开源语音识别工具,可识别中文,之前介绍过python使用vosk ...
- mapper中sql返回类型是integer,但是sql查询结果是null,报错
1.出问题代码 当sql返回结果为null时报错 org.apache.ibatis.binding.BindingException: Mapper method 'com.yswl.scie ...
- 2022-04-18:things是一个N*3的二维数组,商品有N件,商品编号从1~N, 比如things[3] = [300, 2, 6], 代表第3号商品:价格300,重要度2,它是6号商品的附属
2022-04-18:things是一个N3的二维数组,商品有N件,商品编号从1~N, 比如things[3] = [300, 2, 6], 代表第3号商品:价格300,重要度2,它是6号商品的附属商 ...
- 2021-08-22:定义什么是可整合数组:一个数组排完序之后,除了最左侧的数外,有arr[i] = arr[i-1]+1,则称这个数组为可整合数组,比如{5,1,2,4,3}、{6,2,3,1,5,
2021-08-22:定义什么是可整合数组:一个数组排完序之后,除了最左侧的数外,有arr[i] = arr[i-1]+1,则称这个数组为可整合数组,比如{5,1,2,4,3}.{6,2,3,1,5, ...
- mysql 新建数据库 排序规则
utf8_unicode_ci和utf8_general_ci对中.英文来说没有实质的差别.utf8_general_ci校对速度快,但准确度稍差.utf8_unicode_ci准确度高,但校对速度稍 ...
- phpstudy-sqlilabs-less-1
题目:POST - Error Based - Double quotes- String - with twist 基于错误的双引号post型字符变形的注入 先抓下包,拿到格式 uname=1#&a ...