向更智能、更兼容演进。
陈高星|演讲者
大家好,我是阿里云视频云的陈高星,明天和大家分享的主题是“多”维演进:智能化编码架构的钻研与实际。
本次分享分为四局部:首先是视频编码与加强方向的业界趋势,其次是对在该背景下衍生的阿里云视频云智能编码架构进行介绍,以及其中对于“多”维演进的技术细节,最初是咱们对于智能编码的一些思考和摸索。
01 视频编码与加强方向的业界趋势
首先介绍视频编码与加强方向的业界趋势。视频技术倒退的趋势始终在谋求更高清、更实时、更互动、更低成本以及更智能。
过来几年直至2022年,尽管从“高清化”的角度围绕AR/VR、沉迷式8K这些概念的话题热度有所升高,但随着2023年上半年苹果VisionPro的推出,VR的热度再次升高。除概念化炒作外,视频“高清化”也是实实在在的趋势。举个例子,相较于2018年世界杯直播,能够发现新一届2022年直播视频的码率和分辨率显著晋升,预计下一届还会进一步晋升。
围绕更“高清化”的趋势,咱们能看到近年各大企业都在陆续推出自研的下一代编码器,包含266、AV1,甚至是公有规范的编码器。同时,咱们也在智能编码和加强上看到不少的需要。为了升高“高清化”带来的老本压力,视频编码的软硬异构计划成为热点,包含阿里云的倚天710 ARM异构和多个友商在ASIC硬件转码计划上的布局。
从“低时延”的角度,随着5G基础设施的遍及,毫秒级的提早技术逐渐趋于成熟,并在多个场景失去了利用和落地。阿里云视频云反对的2022年6月央视云考古节目《三星堆奇幻之旅》以及2023年春晚推出的央博“新春云庙会”都用到了相干的超低延时云渲染技术。在2022年世界杯期间,超低时延的直播RTS也在逐渐上量。当然,以大趋势来看,目前“超低延时”直播仅在个别畛域和场景是刚需,真正的暴发还需依赖更多的理论利用场景。
在更“智能化”方面,咱们察看到在编码内核的根底上,工业界继续聚焦利用AI能力晋升视频编码压缩率,包含使用视频编码和解决的联合,视频编码与品质评估联合,视频编码与AI生成联合,以及端云联结优化来继续晋升视频编码主客观压缩率。在近年来大家关注的“视频加强”和“内容自适应编码”等畛域,也能看到基于GAN的细节修复生成技术一直落地。
随着2023年ChatGPT和大语言模型的暴发,AIGC成为目前的技术热点。MidJourney等一众绘图软件的风靡,以及Stable Diffusion等开源模型的疾速倒退让咱们看到了AIGC在图片畛域的微小实力,同时文生视频技术也在逐渐衰亡。
那么,随同着更高清、更实时、更高效、更智能的编码需要,咱们也面临许多技术与以后需要的矛盾。
随着AR/VR时代的到来,视频的分辨率、帧率以及色域都会一直的扩充,繁多视频的信息量将会成倍的减少。低时延意味着对编码速度的更高要求,而CPU芯片解决能力不再遵循摩尔定律快速增长,清晰度、带宽、计算成本和编码速度的矛盾会越来越重大,次要体现为以下四点:
第一,编码标准降级速度远慢于视频信息量收缩的速度。编码标准历经过来十年的倒退仅带来了50%压缩率的晋升,这远远落后于视频化和体验降级带来的流量增长。
第二,新编码标准压缩率的晋升速度远低于视频帧率、分辨率晋升的速度。从720P 30fps到8k 60fps,视频信息量将减少72倍,这与编码标准的倒退速度呈现了较大矛盾。
第三,新编码标准复杂度的减少远高于CPU性能增长。从264到266,每一代编码标准相较上代大多减少10倍以上的复杂度,远高于CPU解决能力的减少。
第四,繁多编码标准难以笼罩多种利用需要。随着视频在更多利用场景的扩大深入,如VR场景所需的沉迷式编码标准,以及面向机器视觉工作的VCM视频编码标准,更须要对编码标准进行特定场景下的优化。
在以上看似难以和谐的矛盾背景下,如果想实现“鱼与熊掌兼得”,以下五个问题值得探讨。
首先,除了码率和品质,视频编码还能够关注哪些指标?例如不同内容的品质稳定性,保障序列级或者是序列片段,甚至是序列到Gop之间的品质稳定性,从主观到主观上,以及从资源耗费的角度去思考编码复杂度的稳定性。
第二,如何用好现有的编码标准? 现有的各种规范,例如前述的VR沉迷式规范、 VCM等,尽管具备开源代码,但从多年来MSU较量的后果能够看到,它们还存在很大优化空间。因而,研发多规范的编码器也是业界始终关注和钻研的方向。
第三,视频编码标准自身笼罩不到的维度有哪些?其实从每一代的规范来看,视频编码谋求的指标都是尽可能与“源”统一,所以少数状况下纯编码器优化应用有源的主观指标作为参考规范,但这种形式对低画质场景并不实用。
鉴于编码后的视频还是为人眼观看服务的,尽管人眼主观评估较为耗时费劲,但实际上它是可能给客户带来价值的方向。因而,将人眼评估引入视频智能加强来晋升画质,也是咱们的次要钻研方向之一。
第四,在编码标准上,现有规范对视觉冗余的开掘和场景自适应能力还有有余。现有规范其实只定义了大略的工具集以及解码器,然而如果可能引入多级的自适应编码,进一步开掘各个模块之间的“耦合”能力,实际上能够进一步晋升编码器的品质下限。
第五,如何突破资源重叠,置换视频压缩效率晋升的技术思维惯性。从复杂度的角度,其实咱们不必单纯从硬件角度思考,例如:仅通过硬件资源的重叠的实现编码普惠的成果。咱们能够通过多平台的反对,比方与底层架构的深度耦合或者将局部模块软化的形式,兼顾软件的“灵活性”和硬件的“高效性”,达到算法普惠化。
因而阿里云视频云针对以上五个问题的解法就是右侧的五大“多”维。
02 智能编码架构介绍
如图所示,咱们的智能编码架构次要体现在五个维度。
传统编码架构的编码流程是从视频源开始,通过可选的视频解决模块进入编码的码控和内核局部,而后输入码流。
智能编码架构最显著的特点是 “多级自适应编码能力” 。它会对视频源进行剖析,基于源评估编码流程中的解决、码控、内核等环节对于最终输入的影响,自适应决策模块外部的参数和工具组合。
同时,为了实现多级自适应编码,咱们在视频解决、码控和内核上提供了多方位的编码工具和能力。最初,这个编码架构须要可能自适应的模块化,使其可能自适应地从软编到不同硬编平台。
五个维度具体的原子能力如上图所示。多级自适应编码除业务场景和视频热度等分类外,还包含基于场景内容和片源品质的语义级自适应;而内容自适应则蕴含:基于不同编码指标的前解决Pre-coding、以及基于人眼的JND、ROI等;工具自适应则是联结各个编码模块,包含码控和内核模块。
在视频解决方面, “多”维智能视频加强包含画质加强、视频降噪、细节修复生成、去压缩失真以及时域和空域的SR和FRC技术。
在编码码控上,多指标编码能力兼容在除码率、品质外,还包含针对指标编码复杂度、品质稳定,以及一些CV工作的多指标编码兼容。
在内核上,咱们有自研的多规范编码器,笼罩264、265、266、AVS3、AV1以及VCM编码器。
在多平台反对方面,咱们的架构可能反对从软编的X86、ARM架构到局部应用硬编的联结优化平台。
03 智能编码架构的“多”维演进
接下来,将对智能编码架构的“多”维演进进行具体介绍。首先是多级自适应编码,它的要害是基于片源品质的内容自适应,因为片源品质是视频解决和编码十分重要的决策特色。
咱们基于大量客户场景数据,对片源进行多个维度的分类,除了片源的语义级品质之外,还有如上图所示的对时空域复杂度的评估,思考编码影响进行R/D斜率剖析,以及针对序列级中的不同序列进行智能的码率调配。
品质剖析模块至关重要,在视频品质方面,充沛理解视频是否有噪声、压缩或者传输带来的品质损失对后续的解决和加强将起到要害指导作用。特地是在须要应用一些低成本的加强和编码方案时,咱们很难用一个模块去自适应解决所有的品质进化。因而,退出品质剖析模块能够帮忙咱们更好的获取编码的品质下限。对于品质好的源,能有大量或者适中的加强成果。对于品质差的源,能够晋升更多的品质。
另外,视频源的品质也会影响编码的决策。如果视频源的某一片段比较复杂,那在低码率的状况下很可能会呈现大量的“块效应”,因而在该场景下咱们会偏向于调配更多的码率。
内容自适应的另一部分是基于人眼的JND和saliency map。JND对工业界来说是一个十分重要的方向。传统的视频编码是基于信息论的,它从预测构造的角度减小时域冗余、空间冗余、统计冗余等的冗余,从而实现对视频的压缩,但对视觉冗余的开掘还远远不够。
JND的基本原理如上图所示,传统视频编码应用的RDO曲线是间断的凸曲线,但人眼理论感知到的是非间断的阶梯状线。如果利用阶梯状曲线替换凸曲线,在雷同失真的状况下能够应用更少的码率。
传统的JND计划分为“自顶向下”和“自底向上”两种形式。咱们更多抉择“自底向上”形式,对视觉皮层的视觉特色来进行表征,如色彩、亮度、对比度、静止等形式。从空域上思考亮度掩蔽、对比度掩蔽,从时域上思考基于静止的掩蔽。
咱们会引入深度学习办法预测JND模块对人眼主观的影响,而后联合编码外部的码控模块计算以后每一块能够进一步扩充量化步长的空间。目前,咱们的JND模块在通用场景,等同主观下,能节俭30% 以上码率,在一些垂直场景下甚至能够节俭50%以上。
除了JND, 开掘人眼视觉冗余的另一个重要技术就是saliency map。咱们在saliency map上布局了两个方向:一是低成本的基于人脸的ROI,为了能用在更普惠的直播以及超低时延场景,咱们针对人脸开发了该工具。它联合检测与跟踪算法,对于检测到的人脸区域综合JND以及四周的像素块进行调整,保障在进步主观画质的同时升高ROI区域和非ROI区域的边界感。
二是saliency map技术,如上图展现的一些体育场景以及UGC场景。咱们利用眼动仪采集时域注意力等信息,通过采集两千多个视频,收集10亿以上的注视点,构建了一套人眼注意力模型。
上图中突出显示的区域代表了人眼次要关注的区域,它会随着工夫的变动产生一些变动。该模型与编码器相结合,针对不同的区域进行码率调配。在间断观看下,可能晋升主观画质。
接下来介绍被利用于编码器外部的工具自适应技术。咱们认为传统的率失真实践是基于主观的,在少数低码率的状况下会放大块效应。如低码率下抉择skip或DC模式很容易呈现块效应。
尽管编码标准中存在诸如deblocking filter等工具,然而它的强度不足以补救理论产生的块效应。从主观上看,如果针对平坦区域减少一点噪声和含糊,带来的主观感触反而更好。
咱们采纳两种形式进行了主观优化,一种是单向的,基于源内容以及编码后信息预测,该区域后续是否容易呈现块效应,并对后续区域进行针对性码率爱护,同时也会辨别块效应是片源自带还是编码导致的。第二种是针对点播场景的2pass编码,能够根据first pass的理论编码后果进行二次解决。
上图展现了主观比照后果,并排比照图中右侧为开启工具后成果,能够看到块效应在人脸区域显著缩小,这一帧的码率大略减少了5%。因为从编码器码控角度,保障序列整体码率不变的晋升下限无限,能够看到图中人体的手臂地位还较为含糊。
对于多维度视频加强局部咱们将次要介绍自研的窄带高清品牌。阿里云早在2015年便曾经提出了“窄带高清”概念,在2016年正式推出窄带高清技术品牌并进行产品化。目前通过多轮筛选和探讨,积淀为窄带高清1.0和窄带高清2.0两个方向。
窄带高清1.0是平衡版,次要作用是应用起码的老本实现自适应内容解决和编码,在节俭码率的同时实现画质的晋升。它会充分利用编码器内的信息帮忙视频解决,即用老本很小的前解决办法实现低成本的内容自适应。
窄道高清1.0在视频解决上分为两个细分档位,一种是计算复杂度绝对较低的无差别锐化加强。另一种,会基于片源品质进行de-artifacts和deblur自适应锐化加强。对品质较差的片源,相应的deartifacts权重较大。
窄带高清2.0通过屡次技术选型,最终定义为空间维度细节修复,解决视频生产链路造成的画质损失,即屡次编码压缩导致的画质损失。在编码上也会减少更多自适应能力,包含JND、ROI、SDR+等等。
上图展现了窄带高清2.0的加强成果。惯例CNN模型对编码压缩造成的块效应、边缘锯齿、毛刺等artifacts有比拟好的平滑作用,能够使整个画面看起来更加洁净,但会造成一种磨皮成果。窄带高清2.0抉择基于GAN的细节加强,以晋升画面质感,如眼角、嘴唇等等。
窄带高清2.0细节修复生成核心技术模块包含以下7个方面:
一是训练样本多样性:建设类型丰盛的高画质视频库作为模型训练样本,训练样本蕴含多样的纹理特色,对GAN生成纹理的真实感有很大的帮忙;
二是通过精细化建模一直优化训练数据,基于对业务场景面临的画质问题进行深入分析,贴合场景一直优化训练样本,以达到精细化建模成果;
三是摸索更无效的模型训练策略,包含训练损失函数配置调优,例如perceptual loss应用不同layer的feature会影响生成纹理的颗粒度,不同loss的权重配比也会影响纹理生成的成果。咱们在模型训练过程应用了一种名为NoGAN/渐进式训练策略。一方面能够晋升模型的解决成果,另一方面对模型生成成果的稳定性也有帮忙。
四是为了进步模型对片源品质的自适应能力,咱们在训练输出样本品质的多样性和训练流程方面做了很多工作。最终对中低质量的源有显著的加强成果,对高质量源有中等加强成果。
五是依据学术界的教训,解决指标先验信息越明确,GAN的生成能力越强。因而为了晋升GAN对不同场景的解决成果,咱们采纳了一种1+N的解决模式,即一个具备温和生成能力的通用场景模型+N个具备激进生成能力的垂直细分场景模型,如足球的草地细节、动画场景的边缘线条、综艺场景的人像。
六是高效可控的模型推理,通过模型蒸馏/轻量化,同时基于阿里云神龙HRT GPU推理框架,GAN细节生成模型在单卡V100上,解决效率可达1080P 60fps。
七是为了保障GAN模型生成成果的帧间一致性,防止帧间不间断带来的视觉闪动和编码累赘,阿里云视频云通过与高校单干,提出一种即插即用的帧间一致性加强模型。
接下来介绍几个具体的客户案例。第一个是2022年江苏挪动的世界杯转码。针对该场景次要用到了前述的细节修复生成能力。比照图左侧为通过修复生成并编码后的成果,右侧为片源。放大后能够看到,人体毛发细节和文字边缘锐度都取得了显著晋升。
同样,在BesTV的NBA直播转码上也能达到相似成果。比照窄高编码后画面和片源能够看到,文字区域、球衣细节和地板纹理更加丰盛。
除了体育场景外,咱们还反对了《现实之途》演唱会场景,它的特点是片源品质较差(现场是暗场,随同着灯光、烟雾和场景的频繁切换),能够看到画面有显著的块效应。针对该场景,除了窄带高清2.0外,咱们同时应用了人像定制模板和基于语义的宰割疏导技术对图像进行还原。
上图展现了转码图与原图的成果比照,能够看到人物背地烟雾的块效应失去改善,人脸、毛发等细节也失去晋升。右图是观众反馈,对直播画面的清晰度评估很高。
除了前述的体育直播和演唱会场景外,咱们对一些沉迷式场景也进行了优化,例如对VR场景窄高采纳基于VR视角和经纬度的JND和saliency map技术。
为了进一步优化沉迷式体验,咱们还提供了可能出现声源空间方位的空间音频技术,使用户可能在听的过程中感触到声源的变换,使实时互动从“在线”变成 “在场”。
接下来介绍多指标编码能力兼容。除了惯例关注的码率和品质外,咱们还思考了指标复杂度和指标品质编码。
首先是指标复杂度编码。传统编码器编码速度、机器资源耗费随视频内容扭转而扭转,导致少数状况下编码水位绝对不可控。因而在理论应用中咱们对编码器也会有复杂度限度的应用需要。
复杂度调配具体从序列级到GOP级到帧级到块级进行反馈,反馈的内容包含编码品质、速度以及前述的一些自行剖析内容。这使得简略场景下能够利用更多计算资源换取主客观品质晋升。简单场景下相似于码控VBV的概念,能够在防止升高主客观品质的同时限度编码复杂度。
其次是指标品质编码,在此以VMAF为例。传统ABR/CRF码控无奈在同一码控参数设置下,保障不同序列VMAF分恒定。同时,也无奈疾速通过指标VMAF分取得应设置的指标码率或CRF参数。
尽管CRF是品质较为稳固的码控形式,但具体到某一个特定指标,不同序列的分数稳定依然较大。基于以上背景,咱们开发了指标品质编码工具,右下图是工具开启前后的比照图,能够看到代表开启工具后的橙色线,不同序列间的品质分方差显著变小。
接下来介绍架构中的多规范自研编码内核。首先是咱们自研的三大编码器:S264、S265和Ali266,每种都基于主观、主观及场景束缚研发了100+的算法,笼罩直播,点播,RTC场景,以及云端,终端,天然场景,SCC场景。
性能上,S264、S265绝对开源编码器,在全场景下可晋升20%~60%压缩率,特地是针对超高清,低延时场景进行了更深度优化。优化形式包含预处理(MCTF、Scene Detection、SCC Detection、GOP size自适应)、疾速算法(块划分、模式决策、静止预计、SAO/ALF)、码率管制(CUTree、AQ、lambda优化、CTU级码控)和工程优化(多线程并行、代码重构、访存优化、SIMD优化)。
S264、S265于2022年加入了世界编码器Cloud较量,共取得19项第一,相较于大赛指定的基准编码器AWS可节俭63% 的码率,从转码效率的角度,相较友商也领有2~6倍的劣势。
Ali266于2021年首次加入世界编码器codec大赛,在主观较量取得8项第一,相比于参考编码器x265,在雷同PSNR主观品质下可节俭51% 的码率,同时它在主观较量中评分第一。
在Ali266的落地方面,阿里云视频云与达摩院严密单干,推动Ali266在媒体解决、直播转码等产品的商用落地。2022年1月,Ali266在优酷正式上线,在老本和用户体验上取得显著受害。
为了欠缺和推动Ali266的生态化,咱们也优化了Ali266的解码器,计划包含多线程减速、汇编优化、内存&缓存优化。优化后解码性能相较于开源解码器达到了40%~105%的晋升,内存占用降落30%以上,反对超过九成挪动端设施的高清实时解码。
接下来介绍对于多平台的反对。
首先,是阿里云视频云与平头哥解决方案团队单干的,基于倚天ARM服务器的优化。咱们在倚天710上,次要针对S264、S265进行了架构的深度优化,次要包含三个方向,一是计算函数的汇编优化,使得总体性能晋升40%;二是计算函数并行优化,也实现了约40%的性能晋升;三是偏管制函数优化,将算法设计与优化相结合,再晋升了20%的性能。最终后果是,S264和S265倚天绝对于C7性能晋升了30% 以上,并已在视频云点播场景大规模商用。
如图所示,展现了云渲染场景的一个案例:央博新春云庙会。它要求低时延并自带Nvidia inc编码器。咱们通过接管该编码器的码控模块,交融自研的JND和基于空域特色码率调配的AQ算法,加上前解决加强技术,最终实现了窄高落地在云渲染场景的落地。并列图中右侧为窄高优化后的成果,能够看到实现了丰盛的细节晋升成果。
04 智能编码的思考和摸索
最初,分享一些在智能编码上的实际和思考。首先,是咱们在面对主客观优化的矛盾时,如何去定义“好”?当初的编码方向曾经愈发从“主观”向“主观”聚拢。无论是以“人”为核心还是从最终的用户体验登程,视频都应该关注主观体验的。
在研发过程中,如果单纯思考编码器优化,咱们通常依赖如PSNR、SSIM、VMAF-NEG这样的有源主观指标。但当优化指标相似于窄高,是出于晋升主观品质,那么主观指标分数的晋升就不肯定能反映到主观品质上。
更进一步来说,应用繁多主观指标掂量视频品质也存在问题,从编码标准方面看,应用规范自带的SAO和DB工具,对PSNR和SSIM影响不大,但会导致VMAF分数升高;从开源软件方面看,X265编码器的PSY工具可能在主观上减少一些高频细节,但对主观指标也有不良影响;咱们自研的基于编码反馈的主观优化反映的主观指标同样不佳;后面提到的JND也是一样,显著在主观指标上反馈不好;
在前解决加强上,能够显著看到SRGAN中清晰而谬误的纹理相较于含糊的细节主观体现更优,但PSNR和SSIM更差。
这是咱们当下在编码优化中的一个窘境。
另一方面,是咱们在AI for coding方面的一些相干实际,咱们始终关注AI Codec在视频编码方向的倒退。目前能够看到,它的确可能继续晋升视频主观品质,在前解决以及编码方向能利用GAN以及Diffusion Model等生成技术晋升主观品质。这也是咱们正在钻研的重要方向。
对于沉迷式编码标准,咱们目前在继续关注基于“点云”的编码标准以及基于沉迷式的MIV编码标准,后续依据落地状况也会退出到多自研规范的编码器中。
最初对于Coding for AI,目前次要在关注VCM,它在等同信息量下,压缩率相比传统编码能进步2-3倍,可间接利用结构化的码流进行视觉工作,同时反对多种多媒体工作。具体利用上,咱们正在明厨亮灶、主动驾驶、AI监考方向进行相干实际和摸索。
以上就是明天的全副分享,谢谢大家!