微帧Per-Title编码技术:自适应码率-画质-分辨率

本文涉及的产品
视觉智能开放平台,视频通用资源包5000点
视觉智能开放平台,图像通用资源包5000点
视觉智能开放平台,分割抠图1万点
简介: Per-Title编码技术由Netflix提出,旨在为每部电影量身定制合适的码率阶梯,以节省带宽和存储成本。传统固定码率阶梯在某些视频类型上存在浪费,Per-Title通过分析视频内容的复杂度,生成最优的码率-质量曲线,确保在有限带宽下提供最佳视频质量。微帧的Per-Title技术进一步优化了这一过程,通过智能算法和深度学习,为每个视频选择最合适的分辨率和码率组合,实现高效传输和优质观看体验。

Per-Title编码是指以节省码率、存储空间及传输带宽成本为目的,为每部电影(基于其空间和时间属性及复杂度)调整合适的码率阶梯(Bitrate Ladder)。

Per-Title技术的来源

Per-Title最早由Netflix提出并应用于其流媒体服务中,在Per-Title技术出现之前,视频服务供应商普遍依赖于一套预先设定的Bitrate Ladder,来处理几乎所有的视频内容。例如,下表给出了Netflix在采用Per-Title技术之前不同码率和分辨率组合的Bitrate Ladder。

image.png

对大多数视频而言,在码率受限的情况下,这种一刀切的固定Bitrate Ladder可以实现高质量编码,然而在某些情况下,如卡通动画或静态访谈节目,采用高达5800kbps的码率来编码1080P视频,无疑是码率上的浪费,造成了不必要的带宽与存储负担;而面对带宽仅能传输1750kbps的用户群体,他们本有可能享受720P高清画质,但受限于通用配置,只能局限于观看480P标清视频。

事实上,每一个视频都有自己的码率-质量曲线(RD曲线),如下图为某个视频3个分辨率档位的RD曲线,每条曲线上选取了3个点,表示固定Bitrate Ladder选取的3个码率档位。

image.png

在这个图中我们可以看到几个问题:

问题1:随着Bitrate Ladder爬升,会出现质量不单调提升的现象。用户消耗了更多的带宽,但是接收到的视频质量反而更低了。
image.png

问题2:在同样码率(带宽要求)下,切换不同的分辨率档位,视频质量还有提升空间。
image.png

把几条RD曲线合并起来,提取他们的凸包(Convex Hull,或称外包线),在这个凸包上取点,就可以避免这两个问题。
image.png

如上图所示,绿点就是在凸包上取点,取代原先的黑点。而对于比较靠近的几个绿点和黑点,可以只挑选有代表性的一个,得到简化ladder,如图中蓝圈所示。按照图中的蓝色箭头爬升ladder,我们将得到单调递增的视频质量。相比固定Bitrate Ladder,这种方式可以保证提供给用户的视频质量是最优的,同时降低了带宽传输成本。

微帧Per-Title编码技术

微帧Per-Title编码技术的目标,就是为每一个视频或视频片段量身定制,找到最优的凸包,精准锁定既满足画面清晰度要求,又符合主观观看敏感度标准的最低码率点,以达到节省带宽的目的。
image.png

为了达到最佳质量的视频流,微帧设计了两套不同的Per-Title优化算法:一是常规码率-分辨率选择的Per-Title优化算法;二是基于CRF(恒定质量因子)的Per-Title优化算法。

常规码率-分辨率选择的Per-Title优化算法

与其他常规策略相比,微帧的Per-Title优化算法在相同码率下能实现更高的视频质量,可以在最大码率限制下选择主观质量最优的分辨率,并且能够检测R-Q(码率-质量)水平,以更低的码率获取同等的主观质量。

基于CRF的Per-Title优化算法

也许存在一个观点认为,CRF已经能够根据视频内容自动调节码率,可以避免带宽浪费,没有必要再引入Per-Title。然而这种观点忽视了视频编码过程中更为复杂和多维的需求,CRF虽然能动态调整码率,但并未充分考虑视频在不同分辨率下的表现差异,Per-Title则能基于视频内容特性和观看条件给予全方位的优化策略,在不同分辨率和码率下提供最优解。

一般情况下,简单场景倾向于选择高分辨率以展示更多细节,复杂场景则倾向选择低分辨率以有效控制码率,同时保持视觉质量的稳定性。微帧基于CRF的Per-Title优化算法,通过深度学习拟合每个视频在不同分辨率下[码率-CRF-VMAF]三者之间的关系,并根据三者之间的关系给出既定要求下的最佳编码参数,能够在特定码率要求下达到最佳画质(最大化VMAF分数),或在满足VMAF分数的前提下最小化码率。无论是追求极致的视频体验,还是严格控制传输成本,微帧Per-Title优化算法都能给出最优的分辨率与CRF组合。

相比固定CRF ,微帧Per-Title有什么优势?

1) 在众多备选分辨率中,为每个视频挑选更合适的分辨率组合

通过对视频内容复杂度、场景切换频率、运动向量等多个维度的深度分析,自动为每个视频挑选最合适的分辨率组合,确保用户在各种观看条件下都能获得最佳的视觉体验。

2) 为每个分辨率选择最合适的码率或者CRF值

传统的CRF策略通常在单一分辨率下工作,而微帧的Per-Title通过分析每个分辨率下的画面质量与码率之间的关系,自动调整CRF值及最优码率,使视频在不同分辨率下都能展现出色的质量和编码效率。

微帧的Per-Title技术通过优化编码算法、并行处理技术以及智能任务调度,大幅度提升了其处理速度;这样多维度、多层次的深度优化,提升了视频编码效率和输出质量,不仅在分辨率和码率的选择上更加智能化,还实现了更为精确的编码控制,确保用户在任何设备、任何网络条件下都能获得最佳的视觉效果。

当然,除了Per-Title技术,微帧也优化了多项前沿视频编码技术,如ROI(感兴趣区域)保护算法、智能AI前处理、基于内容的CAE感知编码等等......微帧在视频编码技术的不断探索与研究优化,体现了对极致画质及高效传输的不懈追求,始终秉持着精益求精的态度,致力于为用户提供更极致、更高质量的视频观看体验。

相关文章
|
开发框架 iOS开发
iOS开发之AVKit框架使用
iOS开发之AVKit框架使用
967 0
iOS开发之AVKit框架使用
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
如何让AI更“聪明”?VLM模型的优化策略与测试方法全解析​
本文系统解析视觉语言模型(VLM)的核心机制、推理优化、评测方法与挑战。涵盖多模态对齐、KV Cache优化、性能测试及主流基准,助你全面掌握VLM技术前沿。建议点赞收藏,深入学习。
710 8
|
12月前
|
存储 编解码 算法
微帧WZ-JPEG图片编码压缩技术,实现超高压缩效率
在数字化时代,图像数据爆炸式增长,对传输和存储提出巨大挑战。JPEG作为互联网上最广泛应用的图片格式之一,占据超过60%的市场份额。微帧WZ-JPEG编码压缩技术通过优化DCT变换、量化及熵编码等步骤,实现了显著的压缩效率提升,平均节省27%的图片体积,复杂场景下可达40%,同时编码速度提升4倍,确保了高质量图像的快速加载与传输,极大提升了用户体验。此外,微帧还针对WebP、HEIF和AVIF等格式进行了专门优化,进一步彰显其在图像处理领域的技术优势。
|
存储 编解码 算法
视频为什么可以被压缩?帧内压缩与帧间压缩有何区别?视频编码中的CBR、VBR、CRF...是什么?
视频压缩基于冗余,包括空间冗余、时间冗余、视觉冗余和编码冗余。帧内压缩利用空间相关性,帧间压缩利用时间相关性。视频编码中的码率控制方法有CBR(固定码率)、VBR(动态码率)、CRF(固定码率系数)、CQP(固定质量参数)、CVBR(约束可变码率)和ABR(平均码率),各有优缺点,适用于不同的场景。
|
存储 编解码 算法
微帧科技:综合多项指标评价视频质量,才能更接近主观感受
视频质量评价指标如PSNR、SSIM和VMAF是衡量画面质量的重要工具,但不应成为视频工作者的唯一目标。微帧致力于优化画质,提升观看体验,强调综合评估指标,以实现最接近人眼主观感受的效果。本文探讨了PSNR avg.MSE与PSNR avg.log的区别,以及VMAF的优势与不足。
|
编解码 算法
为什么受损的视频数据通常显示为绿色?为什么很多30帧/秒的视频实际都是29.976帧/秒?
视频编码采用YUV格式因其亮度与色度分离,利于压缩且兼容黑白显示;受损视频常显绿色因YUV转RGB时Y、U、V为0导致;30帧/秒视频实为29.976帧/秒源于NTSC标准适应彩色电视需求;H.264等标准中H无特定含义,H.264又名MPEG-4 AVC,是ITU-T与ISO/IEC MPEG合作成果。
|
编解码 人工智能 自然语言处理
结合微帧编码引擎,从视频编解码角度对Sora浅析
2024年初,OpenAI发布的视频生成模型Sora成为焦点。Sora能生成长达1分钟的高质量视频,标志着生成式AI的重大突破。微帧分析了Sora的视频编码技术,发现其主要使用H.264编码,微帧的编码引擎WZ264和WZ265能显著降低视频码率,提升效率。
|
存储 C语言
[C语言]数据在内存中的存储(浮点数篇)
[C语言]数据在内存中的存储(浮点数篇)
270 0
|
编解码 Android开发 开发者
如何在轻量级RTSP服务中玩转H.264扩展SEI,实现自定义数据的发送与接收?
【9月更文挑战第4天】本文详细介绍了如何在轻量级RTSP服务中实现H.264标准的扩展SEI功能,包括环境准备、依赖引入、RTSP服务创建、自定义SEI数据发送与接收等步骤,并提供了具体代码示例,帮助开发者更好地利用SEI在视频流中嵌入元数据。
410 3
|
机器学习/深度学习 Linux TensorFlow
【Tensorflow+keras】用代码给神经网络结构绘图
文章提供了使用TensorFlow和Keras来绘制神经网络结构图的方法,并给出了具体的代码示例。
316 0

热门文章

最新文章