SDK 模块化设计
SDK:它提供音视频通信、消息通信、媒体处理控制等基础能力。此外,我们面向不同的业务应用场景提供同一套SDK,包括视频会议、直播连麦、视频客服、低延时直播等SDK。
SDK采用模块化设计,分为 络传输层、音视频编解码层、引擎API层。
接口模块化设计:
核心方法:SDK的初始化以及加入房间的方法配置、离开房间等相关方法。
音频核心方法:音频模块的相关配置:使用音频模块、禁用音频模块、是否发送自己的音频、是否接收别人的音频、音量设置等等。
视频核心方法: 视频模块的相关配置:使用视频模块、禁用视频模块、是否发送自己的视频、是否接收别人的视频、本地采集分辨率、帧率设置等等。
视频前处理及后处理: 视频美颜、超分等相关功能。
音频播放路由: 扬声器管理。
耳返设置: 耳返设置管理。
多频道管理: 一个用户可以进入多个频道。
屏幕共享: 屏幕共享相关管理,用户可区域屏幕共享,也可以应用窗口共享,以及共享屏幕的声音模块等等。
音乐文件播放与混音: 播放音乐文件,以及对文件的状态操作等。
变声和混响: 男变女、女变男、大房间、KTV音效等设置。
CDN推流: 本地CDN推流和服务端CDN推流,满足万人频道观看的需要。
跨频道流媒体转发: 主播PK连麦场景的设置。
在线输入媒体流: 适合一起看电影,观看 络摄像头等场景的需求。
视频双流模式: 大小流无缝切换,多人互动场景下节省用户流量以及减少设备性能消耗的必备功能。
通话前 络检测: 通话前检测当前客户端的上下行 络。
视频自采集自渲染: 当本地采集渲染无法满足自身需求的时候,比如手机屏幕共享,需要使用第三方美颜等功能。
音频自采集自渲染: 当本地采集渲染无法满足自身需求的时候,比如变声,自定义音频输出等功能。
直播水印: 对输出的视频进行加水印处理,防止视频盗链。
等等。
各个模块可参考API文档
2、官 升级
2020年8月,anyRTC官 进行了一次全面的升级,从官 样式,内容,到用户后台管理,都焕然一新。
anyRTC官 :https://www.anyrtc.io/
官 更加简洁明了,即便是第一次浏览的用户也能准确快速的找到所需的目标。新增首页客服,可直接通过官 咨询客服,线上客服体验趋于完善。
用户后台管理中心新增监控大厅与用量统计,并进一步优化了费用中心,可供实时查看动态数据,调整运营方案,消费明细,让客户更放心,更安心。
- 监控中心:后台数据监控,版面升级,详细高效查看数据。实时数据自动生成图文,直观展示数据,方便查看与统计。
- 用量中心:自动生成图文展示实时用量,可根据需求查看近段时间的用量统计数据,用量变化等,了解用量趋势,提供运营方向的数据支持。
- 费用中心:费用中心包括交易详情、发票管理与账单界面,可根据个人需要进行操作,账单页面可选择月份查看对应月份的账单信息。费用信息更直观透明,易操作易理解。
4、SDK升级
anyRTC Native SDK支持多频道与人脸检测
anyRTC Native SDK增加了对多频道的支持,可以实现更多更复杂的实时互动场景。多频道的典型场景就是超级小班课。超级小班课,是将互动大班课里的学生进行分组,各组的学生会同时订阅老师的主频道Channel A和各自小班的频道Channel(B, C … N),各小组内学生不仅可以接收老师教学的实时音视频流,同时小组内成员彼此可见、可聊天,极大提高大班课的教学质量和学生体验。多频道功能可在单进程中实现,不仅降低了集成的复杂度,还减少对系统资源的消耗。anyRTC对进入的频道数量不限制,单频道同时上麦人数最大支持50人,观看人数不限制。
增加人脸检测功能,通过 enableFaceDetection 方法开启人脸检测后,SDK 会实时触发 onFacePositionChanged 回调,向本地用户 告检测出的一系列结果,包括人脸距设备屏幕的距离。通过这个功能可以实现许多新的场景,比如在线教育场景下,可在检测到学生距离屏幕过近后,发出提醒,保护用户视力;如果检测到学生不在摄像头范围内,则可以提醒老师该学生有可能“逃课”了。目前该功能仅支持 iOS、Android 平台。
RTC SDK for WeChat
RTC SDK for WeChat是一个全新的SDK,能够支持微信小程序实现如下场景:
1、视频通话&语音通话
- 视频通话场景,支持 720P、1080P高清画质。
- 视频通话场景,支持48kHz全频带,支持双声道。
- 单个房间最多支持300人同时在线,最高支持30人同时发言。
- 适用场景:1对1视频通话、300人视频会议、在线问诊、远程面试、视频客服、在线狼人杀等。
2、互动直播&语音聊天室
- 支持十万人级别观众同时播放,播放延时低至1000ms。
- 支持平滑上下麦,切换过程无需等待,主播延时小于300ms。
- 适用场景:视频低延时直播、十万人互动课堂、视频相亲、在线教育、远程培训、超大型会议等。
RTC SDK for WeChat的优点是高效,简洁,快速,易操作,而微信小程序更是将这个RTC SDK的这个优点发挥到了极致。
低门槛快速接入:仅需 2 行代码即可跑通测试 Demo,10 行代码完成通用能力接入。最快1分钟即可从零开始快速搭建低延时、低卡顿、高品质的实时音视频互动产品。同时支持 720P、1080P 高清画质,60%丢包率可正常视频。音频方面支持 48kHz 采样率,192kpbs 码率,70%丢包率可正常语音,更有领先行业的3A 处理(回声消除 AEC、自动噪声抑制 ANS、自动增益控制 AGC),杜绝回声和啸叫,无损音质媲美纯正 CD 效果。
总的来说RTC SDK for WeChat适用于各种互动的应用场景,使用该SDK开发成本低,开发周期短,基本和H5的开发难度差不多;很容易传播和获客,充分利用好微信的优质流量。
RTC新增自渲染
当默认的音视频模块无法满足开发需求时,开发者可以使用外部渲染器对音视频数据进行渲染。例如:
- 将获取到的原始音视频数据传入其他的音视频渲染引擎。
- 需自定义音视频渲染方式,比如自定义渲染动画等。
- 当默认的渲染器被其他业务占用时,为避免音视频服务与其它业务产生冲突,需使用外部渲染器对原始音视频数据进行渲染。
功能介绍:
实时视频传输过程中,anyRTC SDK 通常会启动默认的视频模块进行采集和渲染。在以下场景中,你可能会发现默认的视频模块无法满足开发需求:
-
app中已有自己的视频模块
-
希望使用非 Camera 采集的视频源,如录屏数据
-
需要使用自定义的美颜库或有前处理库
-
某些视频采集设备被系统独占。为避免与其它业务产生冲突,需要灵活的设备管理策略
基于此,anyRTC SDK 支持使用自定义的视频源或渲染器,实现相关场景。
数据流转图
1、SD-RTN全球实时传输
SD-RTN(Software Defined Real-time Network) 软件定义实时 ,专为双向实时音视频互动而设计。
SD-RTN的优势
高延时传输方案 | SD-RTN |
---|---|
端到端单向延时 > 1s | 端到端单向延时 |
基于 TCP 协议,延时不可控 | 基于 UDP 协议,延时可控 |
抗丢包能力差,在丢包 2% 时明显卡顿,达到 30% 可能断开连接 | 通过定制具有超强抗丢包能力,80% 丢包率也可通话 |
层层缓存,就近下发 | 基于自定义路由,选择最优传输路径,实时端到端传输 |
适用于单向直播、视频点播等无互动需求场景 | 适用于互动课堂、互动直播、音视频 交、游戏对讲等对实时互动高需求场景 |
SD-RTN是一种可承载任何点到点(peer-to-peer)实时数据传输需求的业务架构:只要调用开放的API,无论是实时视频(会议、教育、直播、 交、监控、VR)、文件传输(短视频、办公)还是高速数据同步(游戏、AI、IOT、物联 )都可以很方便的接入SD-RTN的实时数据传输云服务。
2、音频处理模块
核心技术效果对应与试听
智能语音增强解决方案,集成了AI智能降噪、回声消除、混响消除、自动增益等核心技术。该方案创新性地应用深度学习技术,实时分离语音和背景噪声,清晰提取人声,有效消除环境中的各类噪音,让用户畅享更清晰高效的在线音视频通话体验。
anyRTC自19年初成立AI实验室以来,经过长达一年多的时间,收集公开语音数据资源,以及第三方提供的数据和自己的内部会议来训练AI模型。噪音抑制功能将分析用户的音频输入,并使用经过特殊训练的深度神经 络来减少背景声音,例如键盘的敲击声、风扇产生的噪音等。目前我们anyRTC已经配备了全套工具和环境,我们现在已经自己采集了很多数据集,并且应用到了我们AI算法中。下面就是我们anyRTC在AI音频模型中取得的成就:
- 智能降噪:基于计算听觉场景分析理论,应用深度学习技术,能够在不依赖任何硬件的基础上,实现将人声和噪音分离,有效抑制环境中的各种噪音。
- DHS深度啸叫抑制:基于深度学习技术,智能阻断声反馈回路,抑制啸叫产生。有效解决实时游戏、在线会议等多人实时通话场景下啸叫问题。
anyRTC AI 降噪技术规划的关键策略包括音频通信核心体验、声音场景分类和处理、音频痛点难点问题及差异化体验,最终目标则是提升语音可懂度、自然度、舒适度。
3、视频处理模块
核心技术
最高支持 1080P,分辨率、码率可自由切换,融合多种领先的视频编码处理算法,画质更好、码率更低,支持移动端实时超分,实现低分辨率视频到高分辨率视频的实时重建,全面提升源视频画质和分辨率。AI 辅助功能:支持实时暗光增强算法,即使在较暗的环境下,也能提供清晰、明亮的图像。
anyRTC在其他领域也有所涉及:AI 智能传输,超分辨率,智能插帧,图像增强等。
-
AI智能传输
由于 络传输线路上有丢包,接收的数据有失真,所以 AI 智能传输被用来做算法补偿,提升传输质量。
-
超分辨率
实时通信视频在接收端提高原有图像的分辨率,得到高分辨率的图像,该功能有效减少了 络传输带宽,为移动端为用户带来极致视频体验。
-
智能插帧
智能插帧是通过运动估算,计算出画面中物体的运动轨迹,生成新的帧来进行插补。可以将普通常见的30fps进行智能插帧计算,可以获得60fps的顺滑视频,让眼睛看到的自然形象更为自然。
-
图像增强
图象增强是数字图象处理常用的技术之一。图象增强技术的目的是为了改进图象的质量,以达到赏心悦目的效果。通常要完成的工作是除去图象中的噪声,使边缘清晰以及突出图象中的某些性质等。
- 在线合唱
以往的合唱都是用户开启合唱功能之后先一个人和伴奏演唱,完成之后上传,其他用户可以使用这个已经有人声的伴奏再唱一遍,实现“合唱”,而anyRTC要做到的合唱是两位用户同时在线唱歌,合唱的伴奏是同时通过 络发送给两位歌手的,而且两位歌手在演唱的同时可以听到彼此的声音。anyRTC提供的在线合唱解决方案,保证用户可以像在线下KTV一样,有声临其境的感觉,极大的提高了用户的体验感。
- 直播视频共享
比赛直播中,主播可以直接拉比赛的音视频流,可以实现主播和观众一起看比赛,一起点评的功能。增加了主播与观众之间的互动性。
疫情还未完全过去,我们还需要互相帮扶,砥砺前行。2020年充满了复杂以及不确定性。面对这个快速发展的时代,我们能做的就是保持思考,坚持钻研,茁壮成长。2021年,希望能与各位开发者继续前行,共同进步。一起让音视频行业发展的更好。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!