本文将介绍如何仅利用阿里云ARTC SDK,将RTC作为传输通道来实现AI实时互动的接入方案。
背景概述
在AI+RTC领域,阿里云为客户提供两种接入方案:
AI实时互动端到端方案,详细内容请参考AI实时互动快速入门。
RTC纯通道接入,AI服务编排需要您自己实现。
在AI与实时通信(ARTC)技术的深度融合背景下,本文主要介绍方案二,针对那些希望利用RTC技术进行音视频传输并需要高度定制化AI处理的应用场景。您可以借助阿里云的ARTC SDK支持,在客户端和服务端之间建立高效且稳定的音视频数据传输链路,并且在此基础上自由添加或集成所需的AI功能。
方案说明
目前阿里云为您提供以下两个SDK,帮助您完成客户端和服务端之间的音视频传输:
客户端上的ARTC SDK,包括Android、iOS、Windows、H5。
服务器上的Linux SDK。
纯语音场景
在纯语音场景下,阿里云推荐的架构如下:
在上述架构中,ARTC SDK和Linux SDK进入同一个RTC房间。Linux SDK会接收来自ARTC SDK的音频流,以及将解码后的音频数据传递给业务层。您也可以根据需求对音频做AI服务编排,经过ASR、TTS和LLM处理后,最终将编码前的音频数据发送至Linux SDK。Linux SDK完成编码后,将其发送回ARTC SDK,供应用程序播放或渲染。
数字人场景
在数字人场景下,阿里云推荐的架构如下:
在上述架构中,ARTC SDK和Linux SDK会进入同一个RTC房间。Linux SDK会接收来自ARTC SDK的音视频流,以及将解码后的音视频数据传递给业务层。您也可以根据需求对音频做AI服务编排 ,经过ASR、TTS、LLM和数字人处理后,最终将编码前的音视频数据发送至Linux SDK。Linux SDK完成编码后,将其发送回ARTC SDK,供应用程序播放或渲染。
如果您的数字人是外采的,并且服务不是部署在自己的后端服务器,此时阿里云推荐的架构如下:
在这个架构中,客户采购的数字人供应商集成阿里云的Linux SDK,将数字人的音视频数据(PCM+YUV)发给Linux SDK,Linux SDK经过编码后将Opus+H264通过阿里全球通信网发送给终端用户。此时一个RTC房间有3个在会上,其中包括终端用户以及2个Linux SDK。
(可选)Linux SDK扩展能力
音频3A
阿里云Linux SDK支持3A能力,包括:
对ARTC SDK发送过来的数据做进一步的降噪,提高ASR识别率。
对TTS/数字人返回的声音做增益,根据您设置的档位提高音量。
降噪功能在ARTC SDK和Linux SDK中均已实现。在Linux SDK上开启降噪,是基于以下两方面考虑:
Linux SDK上的降噪在算力开销上高于ARTC SDK,更适合在服务端部署。
在H5场景上无法开启针对ASR的降噪优化。
以上3A能力默认是关闭的,音量增益可通过API显式设置,降噪能力需要提交工单联系我们打开。
H265
阿里云Linux SDK支持H.265编码功能。由于该功能在大多数客户中的需求并不高,阿里云官网版本并未包含H.265编码模块。如需H.265编码功能,请联系我们。
API相关文档
ARTC SDK请参考实时音视频ARTC SDK。
Linux SDK请参考Linux SDK。