You need to enable JavaScript to run this app.

火山引擎总裁谭待解析超视频时代音视频架构建设与演进

最近更新时间2022.12.09 12:10:11

首次发布时间2022.12.09 12:10:11

6月28日,火山引擎总裁谭待受邀参加Science与Intel联袂推出的《架构师成长计划2.0》,解读了火山引擎视频云在超视频时代的音视频架构建设与演进。本文基于演讲内容整理。

根据中国网络视听节目服务协会的数据,截至2020年6月,互联网视频用户规模已达9亿。随着视频用户规模和使用时长逐步见顶,“传统”行业也诞生出新视频场景。视频云步入下半场,来到了超视频时代,这个时代有以下两大特点:

  • 互联网用户对视频有更极致的需求。用户不再仅仅满足于清晰、流畅的观看体验;对高清化、交互性、沉浸式体验有了更多诉求;

  • 视频云渗透到更多“传统”行业。在电商、工业、教育、医疗不断涌现更多落地场景,这些场景对音视频架构带来功能、性能和安全层面不同的挑战。

火山引擎在字节跳动内部服务了抖音、西瓜等亿级DAU应用,不断打磨技术;同时对外服务游戏、教育、零售、汽车等行业头部客户,加深行业理解。

火山引擎视频云团队针对超视频时代打造了端云一体的大规模存储、处理、分发架构。如上图所示,架构主要包含三层:

  • 基础设施底座:在边缘云底层网的能力上,覆盖数据中心、城市边缘、用户边缘和终端,实现从1ms 到 40ms的广域网络接入和边缘数据处理能力;在这之上,再通过云原生边缘操作系统,实现云边协同,能够一张大网混合调度;

  • 数字基础服务:一方面在底层基础设施上,实现边缘计算、存储、网络和安全的平台封装;另一方面,在中心机房层面,也构建出对应的计算、存储系统,以及重要的数据分析平台。并在数据面和控制面进行打通;

  • 视频云解决方案:在这个层面,将底层基础设施和技术平台进一步封装为3个中台:智能媒体生产中台、处理中台和播放中台,满足视频场景的端到端需求。然后再针对业务场景,在中台能力上提供点播、直播、RTC、云游戏等具体产品和解决方案,打造高清化、沉浸式、交互性的视频体验。

低延时与新应用的基础

“一张网调度”是火山引擎边缘系统的最大特点。通过大规模的基础设施覆盖和边缘云原生操作系统,可以让用户实现按需灵活调度分发和计算,满足点播、直播、实时互动、富媒体消息、云游戏、视联网等不同场景需求,为亿级用户提供服务。

通过一张网调度,实时互动可以实现全球 400ms 延时,达标率 ≥99.5%;基于超低延时直播协议信令标准,可以使大规模直播分发延时最快达到500ms。这种方式非常容易扩展到新场景,比如智慧城市和工业制造领域。和互联网应用不同,这些场景的上行流量远大于下行流量,而且需要边缘端大量的计算处理。基于一张网调度,视联网方案就可以解决这些问题。

  • 在基础设施层,按边缘算力的分布层级,火山引擎优选全国各省市丰富的边缘资源和运营商网络,并按地理层级部署优质的单线、多线和BGP的节点。结合多种架构的硬件设备,如:X86、ARM服务器、智能网卡、GPU等,实现面向异构算力的边缘基础底座;

  • 基于边缘基础设施底座,自研云原生边缘平台,提供边缘自治管理、核心系统组件管理,以及面向大规模部署的镜像服务能力。云原生边缘平台非常关键,有了这一层,才能灵活管理异构的计算和网络资源,真正实现边缘一张网调度;

  • 在上层的边缘计算资源服务,火山引擎将边缘能力模块化,提供VPC、弹性IP、高性能负载均衡、防火墙等能力。并搭建了边缘计算资源服务层,按需提供不同的算力单元。比如:虚拟机、容器、网络、函数、渲染等一系列服务;

  • 场景应用层纵向维度,配合云边管理和数据管理,实现业务的全域智能调度和实时数据分析。

超大规模、实时处理, 中心架构的新挑战

AI与视频云的结合将是未来的方向。编解码等大量的计算需求,对集中式的计算和存储方式带来延迟和带宽过大的挑战。火山引擎应对超大规模的实时处理需求,基于ROI编码,对计算与存储架构进行了不断迭代。

ROI编码,其基本原理是用户对显著性区域的视频质量比较敏感,希望通过检测+编码来提升显著性区域画质,进而提升用户体验。ROI本身已经被广泛地研究和使用,火山引擎有两个核心优势。

  • ROI的分析模块:火山引擎基于字节跳动丰富的视频内容,包括PGC以及带有各种特效、滤镜的UGC内容,创建了自研的多场景数据库用于算法训练,叠加自建数据库和有效AI训练。ROI检测达到了很高的准确率。同时在性能成本上做了诸多优化,例如在GPU上1ms每帧的处理速度,在CPU上3ms每帧处理速度,实现多场景覆盖。

  • ROI编码算法:集成在自研的高效编码器上,有很好的压缩性能,能够达到非常好的效果。目前全面应用于字节跳动的视频业务,不仅取得带宽成本的收益,用户指标,包括平均观看时长等等也有显著的提升。

在ROI编码理念下,火山引擎打造了对应的计算与存储架构,如上图所示:

  • 橙色系块为计算平台:
    • 计算平台的设计初衷:
      • 调度要足够快,做到毫秒级
      • 有调度超大规模算力的能力,大于百万级核数
      • 系统要足够稳定
      • 能充分压榨已有算力,也能快速纳入额外弹性资源
    • 因此计算平台使用了多级调度架构,能够在server、client和executor中并发执行,并且支持多云架构,充分利用弹性。
  • 蓝色系块为存储系统相关:
    • 应对海量的业务请求,快速响应,高可用
      • 对存储的视频及视频衍生物提供足够灵活的元数据支持
      • 解决好多IDC、多云和跨境数据的迁移,复制和治理
      • 抹平对底层存储系统的依赖
      • 存储系统的核心:

计算和存储本身密不可分,相互配合。

数据驱动极致视频体验

火山引擎视频云团队以用户体验为核心,但由于用户体验不能量化,很难优化。因此火山引擎基于QoS、QoE指标,客观反馈客户真实体验。

QoS 是从服务或者功能的视角统计服务质量,包括起播时间、百秒卡顿、画质指标、延时等;而QoE 则是从用户视角反映问题,通常是用户播放时长和频次等相关的聚合指标,以反映用户使用意愿。火山引擎在实践过程中,逐渐从最初的关注 QoS 指标,过渡到现在以 QoE 指标为主。

基于这个数据体系,火山引擎打造了数据策略系统。从数据的采集、挖掘、模型的训练到策略的下发,到串联A/B测试平台反馈,最终建立体验指标与业务指标的关联关系,消除元无知。例如,经过大量实验发现,针对短视频feed流的首帧时间,210ms是一个留存率提升边界效应的明显分界点;在秀场直播下,延迟每增加4秒,人均看播时长降低1.3%。有了这些量化数据,就能更好地选择优化目标和优化方式。

面向超视频时代,火山引擎不断进行技术探索,来满足更高清、更交互、更沉浸的视频技术需求。

更高清

今年北京冬奥会上,实现了大规模的8K超高清转播。8K甚至更高分辨率的视频,对视频编码和传输始终是个巨大的挑战,如果压缩能力跟不上,虽然可以牺牲画质在受限带宽下实现8K传输,但这样的体验其实是“高不清”。

火山引擎的端云一体H.266视频解决方案,相比目前主流的265编码方案,能节省30%-50%的码率,可以大大降低超高清视频应用的门槛,加速推进体验升级的进程。

更交互

在业务的发展中,新的交互将会带来新的商业突破。技术的优化可以让更多的互动玩法和商业场景成为可能。

例如在语音沙龙等场景,之前由于架构限制,控制房间内“主播”的数量,一般为20—50;这方面,火山引擎的RTC技术通过订阅逻辑的改造升级,让产品逻辑更加灵活,实现了单房间超千人上麦,这给更多玩法带来了想象空间。

更沉浸

高清和交互是沉浸的两个先决条件,另外两个要素是自由度和虚实融合。

未来更多的视频应用场景将提供更多的自由度,实现可探索、可交互。例如,在全景视频中,可以体验到更广阔的视野;通过多机位拍摄实现的自由视角技术,可以获得多视角体验;而把二者结合,再通过推理、渲染和体感技术,就可以实现真正的六自由度XR视频体验。

火山引擎相信很快会有杀手级的XR应用出现,给视频的呈现和体验模式带来代际的革新。例如,通过VR设备和技术,我们可以实现虚拟场景中,实现更多样化、更沉浸的社交活动。