NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

视频处理系统精细化演进,成本与体验之间如何找寻平衡点?

  • 2023-06-30
    北京
  • 本文字数:5169 字

    阅读完需:约 17 分钟

视频处理系统精细化演进,成本与体验之间如何找寻平衡点?

在视频的发展历程中,对于体验感的极致追求贯穿始终。


从短视频到直播,从云游戏到 VR 电竞,从视频会议到虚拟机器人,尽管应用场景在不断变化,但不变的是,用户的需求始终是以更加高清、更低延时,更强的沉浸性和交互性为导向。在这样的需求推动下,视频处理精细化成为了行业的必然发展方向。然而,这种精细化的演进之路却并非一帆风顺,需要在成本和体验之间找寻最佳的平衡点。当前,互联网的流量 80% 来自视频,仅短视频领域的用户规模就达到 5 亿。如何能够把大量视频以更加高效、高性价比的方式计算、存储、传播是对视频平台最大的挑战。


近日,InfoQ 与 Intel 联合打造的「英特尔® 至强® 实战课」,特邀火山引擎点播多媒体平台技术负责人张清源与英特尔云计算资深架构师陆扬进行分享,二位针对如何更好地拥抱视频化浪潮,如何实现更精细化的视频处理,如何平衡成本与体验等众多实际问题展开探讨。InfoQ 将本场分享内容整理成文,希望对大家有所帮助。



成本与体验到底是不是零和博弈?


随着短视频行业的蓬勃崛起和 AI、异构等技术的快速发展,视频处理系统的架构发生了很大的变化。在视频处理的演变过程中,逐渐出现端云结合的处理方式,进而实现了更加灵活和多样的视频处理体验。张清源以点播业务为例,介绍了视频处理的基本工作模式。



点播链路主要分为四个部分:端侧生产、云端生产、审核和下发。端侧生产是指使用移动设备拍摄视频,并进行增强和编辑,然后将视频上传至云端发布。其次是云端生产,包含两个流程:视频处理系统对视频进行处理,生成不同档位的视频;审核系统对视频进行合规审核。完成这两个流程后,视频可以进行下发,通过下发系统最终在播放器上播放。


当前,字节点播业务规模庞大。从计算方面来看,视频处理系统规模已经达到数百万核,预计不久的将来可能达到千万核。存储容量已经达到 EB 级别,带宽规模超过 100TB。因此,点播业务的成本巨大。

点播业务的成本主要由存储成本、转码成本、CDN 带宽成本等构成,其中 CDN 带宽成本占到整体成本的 70% 以上。点播业务的体验主要指播放体验。播放体验受到 QoS 指标(播放失败率、起播时间、卡顿率、视频质量等)、QoE 指标(播放次数、播放时长、完播率等)等多项指标的影响,且 QoS 指标也会对 QoE 指标产生影响。那么,如何优化成本和体验呢


在成本方面,火山引擎分别针对影响带宽成本、计算成本和存储成本的因素进行优化。例如,调整视频的码率可以降低带宽成本。同时,还可以减少不必要的数据传输,避免浪费带宽,优化缓存机制,减少不必要的数据缓存。对于计算成本,利用异构资源和工程优化来降低计算成本。在存储方面,采取转冷存储或删除低观看率的档位等措施来节省存储成本。


在提升体验方面,视频处理系统最主要的是对画质进行处理。而在播放端,包括首帧优化、移动端后处理等都可以改善播放体验。此外,还可以优化卡顿问题和同步性,以提升整体体验。


尽管单独优化某一方面可以采取很多措施,但成本和体验存在置换关系。例如,下发低档位的视频或调整转码参数可以降低成本,但会导致体验略有损失。预加载可以优化首帧和提升体验,但也会增加数据浪费和带宽成本。因此,在决策时,需要精细评估找到成本和体验的平衡点。通过 A/B 实验评估体验影响,最终,通过 ROI 评估判断是否将优化项应用或进一步优化


视频处理系统精细化演进之路


由于视频业务规模逐渐庞大,哪怕是很小的优化,放在大规模的系统里收益都非常可观。因此,视频处理系统向数据驱动的精细化演进的方向发展很有必要。视频处理系统的精细化演进可拆解为画质精细化、资源精细化、策略精细化三个方面。


画质精细化


画质精细化即为每个视频定制处理流程,解决如何处理视频的问题。它是针对云端视频处理流程的一部分,从视频分析到视频前处理再到视频编码的过程。视频分析使用检测算法提取高维特征,为下一步处理决策提供依据。视频前处理采用增强算法对原片进行处理,然后使用编码器和内容自适应算法进行视频编码。



尽管云端处理是重要的,但张清源认为,未来视频处理系统将是端到端的统一系统。随着移动端计算性能的提升,一些算法可以在移动端进行补充,既可以节省云端计算资源,又可以结合用户算法策略。因此,需要建立云端和移动端之间的策略来连接它们。通过建设离线画质分析平台,即端到端实验仿真平台,实现端云算法结合,结合全链路仿真,获得最佳算法策略,实现线上收益最大化。

资源精细化


资源精细化,即在处理视频和资源规划中选择最合适和最优的资源配置,解决使用什么资源的问题。过去,视频处理系统几乎 100% 使用 CPU 资源,但随着时间的推移,除了 CPU 资源外,还可以选择具有弹性的 GPU 资源及其他异构资源进行使用。


在评估这些资源时,火山引擎会首先考虑业务特点,因为不同的业务对于压缩性能和任务延迟的要求可能不同。其次,需考虑峰谷时段选择合适的资源。高峰期可借用离线弹性资源以降低成本。第三,需要结合资源的特性,比如 CPU 最大的优点是稳定,通用性好,但是对于算力要求比较高,可能 GPU 更合适。此外,需要考虑预算、交付周期、线上实验、突发流量和容灾需求。资源分布在点播和实时业务中也需考虑。确定最优资源和配比,考虑当前和未来业务情况,进行分析和决策。


策略精细化


策略精细化,即结合业务场景的特点,寻找最佳的资源使用方式,用最少的资源实现最佳用户体验。

现有的策略能力有热度转码和冷启动。热度转码是根据视频热度阶段选择转码档位,而冷启动则通过预测模型预测视频的整体价值。此外,削峰填谷也是策略精细化的常见方式之一,其是基于视频价值函数曲线,考虑带宽收益、转码成本、播放成本和业务价值等因素,当视频价值大于零时选择转码高压缩率档位,以实现更精确地控制。最后是转存联动,指在转码和存储之间进行置换,特别是针对相对冷门的视频。对于这些视频,可以删除其中的一些档位以节省存储成本,但在需要时可以再次转码并恢复这些档位,从而在计算和存储成本之间实现节约,降低整体点播成本。


以上三种视频处理系统精细化演进的策略,在火山引擎的很多业务上都有应用,并且取得了非常大的成本和收益。但是,火山引擎希望这些能力不只是定制化的能力,而是能够朝着更加通用化和产品化的方向发展,这对成本优化非常重要,但也是一个具有挑战性的任务。


软硬一体的视频处理体系架构


成本体验的极致优化和业务的规模效应,促使视频处理系统向数据驱动的精细化方向演进。在视频处理系统精细化演进的趋势下,视频云解决方案应运而生。视频云解决方案通过整合大数据分析、人工智能、算法优化等技术,将数据驱动、策略优化和资源管理等能力融入视频处理和传输服务。


在众多的视频云解决方案中,英特尔视频云解决方案以其先进的硬件技术和开放式的架构脱颖而出。它利用英特尔强大的处理能力和丰富的视频处理经验,提供高效、可靠、高质量的视频处理能力,在资源精细化管理和策略优化方面具有独特优势。



首先,通过 CPU 平台,它提供了高质量,编码灵活、通用性强且稳定可靠的视频处理方案。其次在密度成本方面,通过一机多卡高密度 GPU 编解码,实现了更高的计算密度和成本效益。在大部分情况下,视频处理平台也采用了异构平台的方式,即在云计算或视频处理集群中同时使用 CPU 和 GPU 等加速卡。这种异构平台的优势在于可以灵活配置计算资源,根据具体应用需求分配不同的计算算力和计算单元。对于质量、编程灵活性、通用性要求较高的应用,使用以 CPU 为主的集群进行处理。而对于游戏等需要渲染和密集计算的应用,通过 GPU 加速方案实现高效处理。在异构平台中,关键是如何管理和调配 CPU 和 GPU 的计算能力,以实现最佳的时延和吞吐性能。


英特尔的软硬件解决方案在视频领域应用广泛,主要集中在视频编解码、视频分析、游戏、远程桌面(VDI)、内容分发网络(CDN)、沉浸式 AR/VR/XR 六大领域。旨在帮助用户在视频领域的不同应用场景中获得最佳性能。



在视频编解码平台,基于英特尔的 CPU 和 GPU 平台可以搭建一个高效能的异构计算平台。在软件方面,包括提供了软件编码、硬件编码、软件开发工具库、性能监控工具等。英特尔的一些软件和工具已经开源,可通过相应的链接进行下载。


在视频分析领域,英特尔提供了基于其底层硬件,如 CPU、GPU 和 FPJA(例如 Habana®)的解决方案。这些硬件可以与各种与人工智能相关的框架和平台集成,例如英特尔® 发行版 OpenVINO™ 工具套件,它集成了最新的 AMX 指令集,以实现最佳的 AI 推理性能。此外,英特尔还提供了经过优化的 TensorFlow 和 PyTorch 版本以及自己的模型库(ModelZoo),并将优化后的 AI 模型开源,以便用户集成、测试和应用。


在游戏领域,英特尔提供了基于安卓和 Windows 的云游戏解决方案,并提供了 GPA 工具,用于监控游戏和 GPU 的性能,并实现最佳的性能调优。


对于 VDI、CDN 等领域,英特尔也提供了相应的软硬件配置、库、SDK 和 Library 等工具,用户可以方便地下载和使用。


所有这些解决方案都基于以英特尔® 至强® 为主的 CPU 平台、以 Xe 为主英特尔 dGPU 平台和 oneAPI 软硬件,并已经得到广泛应用和成熟验证。随着每一代至强处理器架构的升级,视频处理性能持续提升。从 Catholic 8260 到之前的 istake,再到现在的第四代英特尔® 至强® 可扩展处理器(Sapphire Rapids),视频编解码和转码的处理能力呈线性增长。在第四代英特尔® 至强® 可扩展处理器问世之前,所有的 8K 实时编解码赛事都需要使用四个至强® 处理器。而今年随着第四代至强® 的推出,已经能够在两个至强® 处理器或两个 Sapphire Rapids 处理器上实现 8K 的实时转码,性能更优,性价比更高。


在基于第四代英特尔® 至强® 可扩展处理器和 GPU 的异构视频处理平台中,CPU 负责处理视频业务的接收和分发,作为整体调度中心。CPU 编解码产生的视频质量可靠且高。GPU 主要处理速度敏感型的在线业务,包括直播、游戏和渲染加速。使用小型且高密度的 GPU 部署,可进一步降低总体成本。根据需求进行扩展和优化,提供更好的性价比和吞吐量。这种异构平台已经在许多应用领域得到了广泛应用,例如直播编解码、赛事转播、游戏 VDI 超分和视频分析等。它为客户带来了更高的性能和性价比,满足了不同领域的视频处理需求。


在异构平台中,如何协同调配 CPU、GPU 和其他加速卡之间的任务是非常重要的。为了解决这个问题,英特尔推出了名为 Deeplink 的技术。Deeplink 技术提供了 Dynamic Power Share(动态功耗共享)、Stream Assist(流式访问)等协同处理和加速的方法,以提高异构平台的整体性能和效率。   通过 Deeplink 技术,英特尔可以在 Flex140 这款 GPU 卡上稳定实现 8K 的实时 GPU 编解码。



基于至强® CPU 和 GPU,英特尔构建了可扩展的视频处理器平台。该平台涵盖底层硬件和软件基础架构,包括操作系统、硬件加速器、Docker、API、数据库和 SDK 等。虽然英特尔被认为是一家以硬件为主的公司,但也拥有庞大的软件团队。从底层的 Firmware 到驱动、操作系统,再到 Kubernetes、虚拟化和容器化环境的调度和利用,软件团队致力于与合作伙伴合作,充分利用硬件架构的特性,为视频云上的各种应用提供高效的软件解决方案。


极致的性能,成本与体验“鱼与熊掌”兼得的密码


谈到这里,回归最初的问题“成本与体验到底是不是零和博弈”想必大家都有了答案。陆扬表示,成本的优化,无外乎是性价比的问题。当性能提高到一定水平,性价比、整体成本自然就有所下降。在英特尔平台的迭代中,不断提升核心计算能力,包括频率、缓存大小和内存容量等,都是希望通过这些升级来降低整体拥有成本,提高性价比。在过去几十年以及未来,英特尔的软硬件架构解决方案将继续与合作伙伴一起致力于提高视频云行业的服务质量、总体性能和应用成本。


有关未来视频处理系统的趋势和发展方向,张清源持极其乐观的态度。他表示,整个视频领域未来会朝着更高清、更沉浸、更交互的方向去演进。算力的增长还会继续,并将推动计算资源的创新,从而提高计算效率和降低成本。其次,AI 算法和端到端算法联动将成为重要的发展方向,使视频处理从全链路角度考虑整体效果。此外,精细化也是一个趋势,类似于推荐系统的个性化推荐,视频处理可能会结合人群特点进行定制化处理。这些方向都有很大的潜力。


陆扬补充道,视频的发展趋势包括分辨率的提升和适配范围的扩大。视频分辨率已经发展到 8K,然而,这种超高清分辨率对计算中心提出了巨大挑战,因为处理这样的视频需要处理庞大的计算量。另外,AI 应用的迅猛发展也对计算中心提出了挑战。无论是 CPU、加速器还是异构平台,如何高效智能地运行越来越复杂的应用和计算中心,使计算能够无缝衔接,具备全链路的动态感知和自适应能力,都是未来的重要方向。基于此,陆扬希望英特尔的最新硬件架构平台能够适应不断变化的视频云应用,更好地服务大众需求。


点击此处,了解更多英特尔云及互联网行业创新实践。

2023-06-30 12:283357

评论

发布
暂无评论
发现更多内容

redis 基础-数据结构-跳跃表

小技术君

Vue3-组合式API

福豆粑粑

Vue3

第七周作业

Geek_a327d3

架构师培训 -07 总结 性能测试与性能优化

刘敏

架构师训练营第七章作业

吴吴

架构师训练营 week7

devfan

第七周总结

Geek_a327d3

week 7 作业

a晖

学习总结 - 架构师训练营 - 第七周

走过路过飞过

第七周学习总结

潜默闻雨

RabbitMQ 的监控(附 Python 监控源码)

AlwaysBeta

Python RabbitMQ 消息队列 消息堆积处理

架构师训练营第七周总结

Bruce Xiong

Mac 环境下 RabbitMQ 的安装

AlwaysBeta

Mac RabbitMQ 消息队列

w7-分布式系统中性能的影响因素

麻辣

架构师训练营 No.7 周作业

连增申

【架构师训练营 - week7 -1】总结

早睡早起

架构师 0期07周总结

我在终点等你

关于性能压测

俊俊哥

性能测试

操作系统、性能优化

GalaxyCreater

性能优化

【架构师训练营 - week7 -1】作业

早睡早起

架构师训练营 - 作业 7

进击的炮灰

第07周 优化系统性能-01 学习总结

Jaye

第07周 优化系统性能-01 命题作业

Jaye

Python 实现 RabbitMQ 的六种工作模式(附 Python 代码)

AlwaysBeta

Python RabbitMQ 消息队列

并发测试JAVA

王麒宇

第7周 性能优化:性能优化是架构师展现自己技术全面性的时刻

陆不得

第七周总结

上山砍柴

性能测试并发压力变大,系统如何变化

李朋

架构师训练营 No.7 周总结

连增申

第7周

Geek_2b3614

ARTS打卡Week 08

teoking

ios LeetCode

视频处理系统精细化演进,成本与体验之间如何找寻平衡点?_英特尔_张雅文_InfoQ精选文章