元宇宙的发展始于 1992 年,大致的发展可以分为 2 个阶段,一个是初始阶段,从 1992 年到 2020 年。第二个是探索阶段,从 2020 至今。
元宇宙的热点技术主要包括以下 6 大技术:
区块链技术:NFT、DeFi、公链速率、智能合约、DAO 社交体系、去中心化交易所、分布式存储等区块链技术是支撑元宇宙体系最重要的技术。
物联网技术:为元宇宙万物链接及虚实共生提供可靠技术保障。
网络及运算技术:纵观发展史,通信网络(传输速率)的提升一直是主旋律,通信网络和云游戏的成熟,夯实了元宇宙网络层面的基础。
人工智能技术 AI:为元宇宙大量的应用场景提供技术支撑。
电子游戏技术:游戏是元宇宙的呈现方式,它的交互灵活、信息丰富,为元宇宙提供创作平台、交互内容和社交场景并实现流量聚合。
交互技术:交互技术持续迭代升级,不断深化感知交互,为元宇宙用户提供沉浸式虚拟现实体验阶梯。
在元宇宙的场景中我们看到了很多音视频技术的元素,比如游戏语音、低延时拉流等,里面很多的能力都涉及到了音视频领域。因此我们回过头来思考我们自己的音视频产品,总结出来要支撑元宇宙业务的发展需要做哪些事情。换句话说,就是元宇宙的发展会给音视频架构带来哪些挑战:
“驱动技术创新、提供极致的沉浸式交互体验”。简单的视频通话、语音聊天以及实时互动等交互方式已经远远不能满足新兴的元宇宙业务。3D 虚拟形象社交、具有 3D 音效的这种实时语音等等关键技术已经成为了必不可少的组成元素。驱动这些技术的创新和优化、突破原有音视频领域相关技术的边界,为用户提供极致的沉浸式体验成为了我们音视频架构面临的一个强有力挑战。
“促进多业务融合、提供整体解决方案”。元宇宙中的音视频业务大部分都是一个综合的、复杂的应用场景,例如很多业务会同时有 RTC、虚拟人、超低延时数据传输、低延时直播等等丰富的需求。由于不同场景需求需要独立集成对应的能力 SDK,而每个 SDK 的集成或者接入的方式又不尽相同,造成接入的 SDK 数量多、复杂度高,接入的效率比较低。因此如何设计一种好的 SDK 架构,在提供高可用和高稳定业务功能的同时,能够通过技术组合的方式将所有业务融合在一起,为用户提供整体的一站式解决方案也成为了音视频架构面临的一个全新挑战。
对于第一个挑战点:“驱动技术创新、提供极致的沉浸式交互体验”。我们针对性地对云信的音视频引擎做了架构的升级和能力的补充,主要包括以下三部分内容:音视频引擎架构设计、超低延时数据传输架构设计和算法组件化架构设计。
在音视频引擎架构设计这块,我们推出了网易云信的新一代音视频引擎 NERtcEngine。NERtcEngine 主要包括“视频引擎、音频引擎、网络引擎、数据引擎和算法组件引擎”五个核心引擎。相对于老一代的引擎架构,我们充分考虑元宇宙场景中的超低延时数据传输场景,设计和实现了数据引擎。同时,元宇宙场景中沉浸式体验运用到了很多新的音视频算法和 AI 算法,驱动我们对算法集成方式做了一次大的重构,设计和实现了基础算法组件引擎,让我们能更加灵活和高效地管理引擎使用到的各种各样的算法。全新的音视频架构如图所示。
我们将原有的视频、音频和网络相关的核心模块做了抽象和整理,统一到了引擎层里,并且在引擎层增加设计了数据引擎;同时设计和实现基础算法组件引擎,最终的架构层次分为四层:接口层、引擎层、算法层和基础层。
接口层:对外提供的音视频能力接口层。
引擎层:封装了视频引擎、音频引擎、网络引擎和数据引擎的主体pipeline流程。
算法层:新的基础算法组件引擎层,负责管理和维护引擎内部使用到的所有音视频算法。
基础层:日志、埋点上报等等基础依赖库层。
其中架构图中突出的黄色部分就是我们今天想着重介绍的 2 大部分。
设计数据引擎的目的主要是为了实现超低延时的数据传输场景。这个流程其实是一个涉及引擎、网络和服务器的复杂流程。数据引擎主要负责“传输协议的实现、发送/接收的策略控制以及网络 QoS 调节策略等等在内的整个 pipeline 的实现”。那我们的 WE-CAN 大网负责提供“低延时的全球智能路由网络,提供专线级的数据传输通道”。
那这么做有什么好处呢?整体架构上设计独立的数据传输通道,一是可以保证原有音视频传输通道稳定和高效;还可以为数据传输通道单独制定和适配相应的传输协议、发送/接收控制策略和 QoS 调节策略等,完全跟音视频的相关策略独立开来,针对性地优化数据传输的业务场景。一个比较典型的例子,就是我们在虚拟遥感控制场景中,需要不断传输和交互超低延时的工业控制指令,这就需要一个从发送端到网络到服务器再到网络最后到接收端的一个整体的数据传输通道。
随着元宇宙业务支持过程中不断引入各种各种新的音视频算法和 AI 算法,新老算法间的共存和兼容、新的算法模型对 SDK 包大小的影响等情况,给我们的算法库管理带来了很大的挑战。所以本质上这个算法组件引擎就是我们对基础算法库管理方式的一个重构,它主要有三大特点:
对外集成接口统一:所有算法统一一套接口,集成方式非常友好。
支持插件化集成:每个算法作为独立单元以插件化的方式集成,可以灵活实现算法的定制化集成,精确地控制 SDK 的包大小。
扩展性强:后续新增的算法只需要实现几个对应的集成 API 就可以方便、快速地集成到框架中。比如,我们现在是设计了四个接口:初始化、设参、处理和反初始化,新的算法只要实现了这四个接口之后就能集成到我们这个算法组件引擎中了。
元宇宙业务发展给我们音视频架构带来的第 2 个挑战点是:“促进多业务融合、提供整体解决方案”。这是一个很综合性、很复杂的一个技术挑战点。针对这个挑战点,我们也做了 3 件关键的事情:“融合 SDK 架构设计、SDK 插件化集成方案设计和高接通方案设计”。
前面我们知道了元宇宙中的音视频业务大部分都是一个综合的、复杂的应用场景,有 RTC、虚拟人、实时数据传输等等,业务中会使用到我们多个 SDK 的功能,这样意味着用户为了实现某个元宇宙业务场景需要集成和使用到我们的多个 SDK。因为按照我们老的 SDK 架构,不同的业务功能是承载在不同的 SDK 上的。这就给我们的元宇宙用户带来更高的接入门槛和接入成本。为此,我们设计和实现了新一代的音视频 SDK:NERtcSDK。它是一个融合 SDK 的架构设计,同时支持 RTC,虚拟人、低延时直播、超低延时数据传输等等。融合 SDK 的架构图如下图所示。
使用了融合 SDK 架构之后,对于复杂、综合的业务场景,比如 3D 虚拟人社交、虚拟实时展会等,不管场景中同时有多少种业务诉求,都只需要完成一次接入即可,极大地提高了用户接入的速度和效率,降低了用户的接入成本。
在设计和实现融合的 SDK 架构设计,解决大型元宇宙业务集成痛点的同时,我们设计和实现了 SDK 插件化集成方案,可以让用户自由选择所要集成的 SDK 功能。这样无论是简单还是复杂的集成场景,对用户来说都非常的友好。
该方案主要有以下四个特点:
灵活选择:支持静态编译期、动态加载时期的定制化选择。
精确控制:按需集成对应的插件组件,精确控制 APP 的安装包大小。
高效接入:多种业务需求也只需要做一次的接入工作。
快速扩展:后续新的业务 SDK 可以快速集成到融合 SD K框架中。
以上就是我们如何去应对元宇宙业务发展给我们音视频架构带来的挑战。一是重构音视频引擎架构,特别是设计和实现数据引擎和基础算法组件引擎,让更多的元宇宙技术元素,包括各种元宇宙业务相关的技术和算法进入到引擎中,让提供极致的沉浸式交互体验成为可能。二是设计和实现融合 SDK 架构和插件化集成方案,无论是简单的还是复杂的元宇宙业务场景,都能快速地提供高质量的音视频能力,为用户提供一站式的整体的解决方案。
接下来我们介绍一下网易云信全新的音视频架构在实际的元宇宙业务场景中的实战。
面对恶劣的作业环境,挖掘机驾驶员不用再深入现场,不仅从一定程度上降低了劳动强度,同时也从根本上杜绝了人身伤亡的安全隐患。这里主要应用到我们的音视频能力就包括:超低延时控制信令,实时音视频,VR 数据云渲染等等。
第 2 个示例是 AI 虚拟客服,通过外呼系统实现自动外呼,线路采用 VoLTE 线路(客户不需要安装 APP,直接手机端进行接听),用户选择视频接听后,建立音视频房间,通过 AI 虚拟人实现对应业务,同时实现与机器人的互动交互。
最后一个示例是我们的沉浸式展会系统,这是一个比较综合的应用案例,融合和使用了包括:RTC、超低延时数据传输、虚拟人、空间音效等等几乎所有的音视频能力。
随着元宇宙业务场景的持续发展,元宇宙中的音视频应用场景也会越来越多。我们会不断地深入探索音视频在元宇宙中的应用,持续打磨和优化沉浸式的音视频交互体验,把探索经验、技术优势、创新模式等,与真实用户需求、产业需求深度结合,让元宇宙真正从概念走向应用,切实为社会创造价值。