限时领|《AI 百问百答》专栏课+实体书(包邮)! 了解详情
写点什么

“世界杯直播”技术实践解析:抖音视频编码器优化

字节跳动-多媒体实验室

  • 2023-03-03
    北京
  • 本文字数:1721 字

    阅读完需:约 6 分钟

“世界杯直播”技术实践解析:抖音视频编码器优化

对于世界杯这样的大型体育赛事而言,视频编码算法既要在高速运动、复杂纹理的场景下确保直播内容的清晰度和流畅度,保障用户的观赛体验,又要兼顾码率、延迟等对网络传输层面尤为敏感的指标。


另外,抖音实现了业界首次的世界杯比赛支持 4K HDR 10-bit 直播,其内容信息量相较于以往有极大提升,对编码器的实时性提出了更高要求。火山引擎如何完成这个挑战?

BVC 编码器长期迭代优化


火山引擎自研的 BVC 编码器经过多年的技术攻关和优化技术积累,以及在不同视频服务业务方向上的长期迭代优化,目前其编码性能和编码器架构的计算效率都处于业界领先水平,在国际权威编码器大赛 MSU 比赛中多次夺冠。

世界杯项目针对性优化

概述


在 BVC 编码器的基础上,火山引擎多媒体实验室针对世界杯比赛场景进行了一系列针对性优化。


首先通过科学构建世界杯比赛视频的测试集,分析足球比赛视频特性,进一步挖掘了当前场景下的先验信息,有效提升了编码效率,在保证画质的情况下进一步降低了码率,同时优化了码率平稳性以及码控精度。


同时,团队优化了多核下的并行机制,极大幅度提升了 CPU 利用率;同时分析并优化了 4K HDR 10-bit 视频编码中的复杂度瓶颈,进一步加快了 HDR 视频的编码速度。最终使得 BVC 编码器在保证画质和降低码率的同时,能进一步提升编码速度,达到并超出了 4K HDR 10-bit 50fps 视频实时编码的要求。

另外在线上部署时,团队通过主观质量评测专门对足球赛事视频优化了各种不同质量配置下的最优码率,比如超高清 4K,超高清 HDR,蓝光 HD 等质量配置,保证不同用户的观看质量。

优化成果


本次 BVC 编码器共优化了 3 个不同档位,分别用于 4K HDR/SDR 编码,1080p 编码,以及 720p/480p 编码。


(1)针对世界杯场景, BVC 编码器优化前后各项指标对比如下图


可见优化后,BVC 编码器既有相同视频质量下带宽收益(BD-Rate),尤其是在相同 VMAF 质量指标时码率节省收益显著,同时编码速度和 CPU 利用率也提升较大(尤其是 4K 档位),码控精准度也有显著提升。



(2)针对世界杯场景的 4K 10 - bit 视频  BVC 编码器与开源 x265 编码器性能对比如下图:

可见在相同 PSNR 下,BVC 编码器的带宽节省高于 x265 的 veryslow 最慢档,且在相同测试条件下,编码速度也高于 x265 的 ultrafast 最快档。



备注:上述图示中,speed(相对于 x265 ultrafast 编码速度)越大越好,bandwidth(相对于 x265 ultrafast 带宽)越小越好。

优化手段


团队通过精准构建世界杯足球比赛测试集,有效约束了团队的优化场景,既能为团队提供更多的足球比赛视频的先验信息,同时也不会导致过拟合的情况。在此基础上,团队做了大量编码器内核优化,包括编码工具调优,新增数十项主/客观编码算法,多线程调度以及 SIMD 等工程优化加速,码率控制优化等;在优化过程中,团队使用了多个质量评价指标对优化技术性能进行评估,最终实现了在保证画质不变的条件下既有码率节省又有速度提升的优化效果。


(1)构建精准的足球比赛测试序列


团队分析了足球比赛视频中每个片段的时域复杂度和空域复杂度,同时根据每个片段的场景内容,筛选出了数十个作为足球比赛测试集。


在此基础上,团队加入了部分通用测试视频防止过拟合,构建了最终的测试集,如下图:


(2)优化编码器内核


团队首先测试了已有的数十个编码工具在当前场景的性价比,找出性价比最高的(复杂度最低,码率节省最高)工具在当前场景下开启,并关闭性价比低的工具。


在此基础上,团队针对编码器内部的多个不同模块,其中包括预分析和编码过程中运动搜索,模式决策,环路滤波等,开发了数十项新算法,进一步提高了编码效率和降低模块的计算复杂度,加快编码速度。


针对世界杯场景中视频时域复杂度高特点,团队通过优化了码率控制算法,保证了场景切换时的码率平稳性,同时提高了整体码率的精准性。团队也优化了支持 ROI 区域的码控算法,在相同码率下使得主观感受更优,有效提高了足球比赛中人眼敏感的球员区域以及草坪区域的主观质量。


团队也进行了大量并行优化,通过多线程任务调度以及 SIMD 优化,提升了多核下的 CPU 利用率,极大加快了编码速度。


优化示例


 1 )解决 480p 档位拖影问题


优化前(左) vs 优化后(右):



 2 )提升 720p/480p 草坪清晰度


优化前(左) vs 优化后(右):



2023-03-03 16:094568
用户头像
鲁冬雪 GMI Cloud Head of China Marketing

发布了 370 篇内容, 共 303.4 次阅读, 收获喜欢 302 次。

关注

评论

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

零代码的MOM之路

明道云

BetterYeah AI x 添可 AI客服项目入选沙丘社区AI Agent最佳实践案例

BetterYeah AI

见证无限可能!火山引擎边缘云邀你参加冬季 Force 大会开发者论坛

火山引擎边缘云

边缘计算 边缘云 AI 大底座 边缘智能

【YashanDB知识库】如何查看共享集群共享盘的挂载关系

YashanDB

数据库 yashandb

计算虚拟化软件介绍

天翼云开发者社区

云计算 虚拟化

NAT原理:概念、使用场景、转发流程及规则

天翼云开发者社区

网络安全 NAT

通过低代码快速迭代助力创新行业系统化管理

明道云

【YashanDB知识库】主备集群用yasboot在线缩容后无法托管到YCM

YashanDB

数据库 yashandb

如何进行知识管理

易成研发中心

知识管理 知识管理软件

【YashanDB知识库】使用c-调用yashandb odbc驱动执行SQL时报YAS-08008 not all variables bounded

YashanDB

数据库 yashandb

优化Shopify API的调用性能

北京木奇移动技术有限公司

Shopify 软件外包公司 跨境电商平台

CPU的指令周期

天翼云开发者社区

cpu

【YashanDB知识库】如何设置yasql客户端的字符编码

YashanDB

数据库 yashandb

了解GaussDB性能调优之隐式转换,解决慢SQL问题

华为云开发者联盟

数据库 sql 性能调优 GaussDB

BetterYeah AI获2024世界互联网大会新耀场景奖

BetterYeah AI

库存平台稳定性建设实践

京东科技开发者

Shopify接口对接流程详解

北京木奇移动技术有限公司

跨境电商 Shopify 软件外包公司

解锁软件测试新境界:AI如何助力发现潜在缺陷

测试人

软件测试

电商API的奥秘:数据爬手的底层逻辑解析

代码忍者

API 接口 pinduoduo API

选择合适的Web3外包团队

北京木奇移动技术有限公司

软件外包公司 web3开发 web3开发团队

【YashanDB知识库】php查询超过256长度字符串,数据被截断的问题

YashanDB

数据库 yashandb

OpenSearch & AI 开放平台,实现0代码图片搜索!

阿里云大数据AI技术

阿里云 解决方案 OpenSearch AI搜索

Web3项目开发中常见的挑战

北京木奇移动技术有限公司

软件外包公司 web3开发

媒体报道 | 原钉钉副总裁AI赛道创业融资过亿,新品发布助力「双11」电商AI升级

BetterYeah AI

BetterYeah AI CEO张毅:企业级AI智能体正成为新质生产力

BetterYeah AI

“世界杯直播”技术实践解析:抖音视频编码器优化_AI&大模型_InfoQ精选文章