标题编码的过去、现在和未来
玛雅·安杰洛曾经说过, “除非你知道你去过哪里,否则你无法真正知道你要去哪里。,每个标题编码也是如此. 最初的一维数据率调整反映了所有视频编码不同的简单现实,现在是一个包含帧率的复杂分析, 决议, 色域, 动态范围, 以及交付网络和设备相关的数据. 一路走来, 视频质量指标(VQM)也有了进步, 根据需要提供与质量相关的数据,为每个标题算法提供数据. 在本文中, 我将回顾每个标题编码技术的历史,以提供一个视角来理解在选择技术和/或服务提供商时应该寻找哪些特性.
一切从优化开始
尽管Netflix在2015年12月发表了一篇开创性的文章,人们普遍认为它发明了标题编码。逐标题编码优化,“在此之前,已有几种技术可以根据源文件的复杂程度定制文件数据速率. 这些技术包括Beamr的内容自适应比特率(CABR)和恒定速率因子(CRF)技术在编解码器,如x264, x265和VP9.
Beamr的CABR是一个迭代, 逐帧编码,只要帧质量与原始文件质量“明显相同”(由 Beamr的VQM. 一旦质量 在此之后,编码器恢复到先前的编码并移动到下一帧.
CRF更像是一个黑匣子. 来解释操作, 使用大多数流媒体编码, 指定一个比特率目标, 说, 比特率= 5Mbps, 编码器输出5Mbps的文件. 如果内容是一个说话的头, the quality will be good; if it's a soccer match, 这可能会很危险. 在数据速率模式下,编码器改变质量以满足数据速率.
与CRF, 指定一个从0到51的CRF级别, 说, CRF = 25, 所述编码器输出具有CRF 25质量等级的文件. 如果内容是一个说话的头, the data rate might be 2Mbps; if it's a soccer match, 可能是15Mbps. 在CRF模式下,编码器改变数据速率以提供所要求的质量. CRF性能良好 作为每个标题的技术,当部署数据速率上限(编码质量CRF = 25,但 不要超过5Mbps). 这种模式称为封顶CRF, 它被Vimeo和JW Player等供应商以及一些大型视频播放设备所使用
点播(VOD)生产商.
在一般情况下, 优化技术是在实时事件期间调整文件数据速率的唯一实用方法. 出于这个原因,每个标题都要直播
编码技术,如AWS的Elemental Quality-Defined Variable Bitrate (QVBR)和Harmonic的EyeQ都是优化技术. 除了, 尽管Brightcove使用了更先进的按标题点播技术, 它使用有上限的CRF来直播视频.
所有优化技术都有一个非常严重的限制:除了比特率之外,它们不能改变文件或编码阶梯的任何方面. 为视角, 请注意,每当评估每个标题的编码技术时, 您通常将其与固定的编码阶梯进行比较. 你可以在 图1,左边是固定的梯子,右边是两个按标题排列的技术. Per-title B is an optimization technology; you feed it the number of rungs 和 决议s in the original encoding ladder, 它调整这些梯级的数据速率,而且只调整这些梯级的数据速率.
与此形成鲜明对比的是, 你给技术A提供原始文件, 它决定了编码阶梯需要多少梯级以及它们的数据速率 和 决议. 在图中, 您可以看到技术A不仅减少了梯级的数量(和编码成本), 它提高了这些阶梯的分辨率和相关的视频多方法评估融合(VMAF)质量. 因为优化技术只能调整数据速率, 而不是梯级的数量或它们的分辨率, 它们的表现通常不如其他能够调整这三个变量的逐标题技术.
仍然, 优化技术一直存在,直到Netflix做出了突破性的声明.
Netflix首次推出逐标题编码
Netflix在2015年12月首次推出了按标题播放的技术. 在高水平上, Netflix使用暴力编码技术,将每个源文件编码成数百种分辨率和数据速率的组合,以找到“凸包”,这是最有效地约束所有数据点的形状. 你可以在 图2.
有趣的是, 最初驱动Netflix决策引擎的指标是峰值信噪比(PSNR)。, 哪一种静止图像度量不包含运动的概念. Netflix将PSNR替换为 VMAF 2016年6月. 简而言之,VMAF融合了四个质量指标,包括一个简单的运动指标. 当启动, Netflix公布的数据显示,VMAF与主观评价的相关性高于PSNR, 这与我使用VMAF一致吗.
其他人入党
到2016年初, 很明显,许多其他组织已经致力于每个标题的执行工作相当长一段时间了. 在2016年国际电子成像研讨会上,YouTube展示了一份 纸 详细说明了它的方法. 为视角, 请注意,Netflix和YouTube从两个截然不同的角度来解决这个问题. Netflix对相对较少的视频进行编码, 但大多数都有数百万付费用户观看, 以最低比特率提供绝对最佳质量的昂贵编码模式是合理的.
与此形成鲜明对比的是, 2016年初, YouTube每分钟接收300个小时的视频, 其中一些有数百万观众观看, 但大多数人关注的人数要少得多. 这就需要更快且更便宜地执行每个游戏. 有趣的是, YouTube的技术将人工智能与源文件的单个240p CRF编码提供的文件复杂性数据相结合.
同样是在2016年, Capella Systems推出了一项名为“源自适应比特率阶梯”的功能, 或SABL, 在其旗舰VOD编码器中, 威尔士贸易委员会. SABL使用CRF来度量文件复杂性, 使用脚本可以根据CRF结果调整阶梯中的梯级数量及其分辨率. 出现了许多其他的商业实现, 包括在线视频平台Brightcove和云编码供应商Bitmovin的标题功能.
按照场景适应性
2018年,Netflix推出了基于场景的视频 动态优化器. 如图所示 图3, 而不是将视频分成任意的2秒或3秒的gop或片段, 动态优化将视频分成场景,并对每个场景分别进行编码. 虽然这会产生动态的 GOP和段长度, 自适应比特率(ABR)流交换继续有效地工作,因为所有阶梯级共享相同的GOP和段长度.
直观地说,基于场景的编码使 很有道理. 为单个场景定制编码参数应该比为包含两个或多个场景的片段寻找最佳编码配置更有效,这些场景可能包含完全不同的内容. 除了, 在场景变化中改变编码参数显然不像在场景中改变参数那么明显. 最终, Netflix's computed efficiency numbers speak for themselves; as measured by VMAF, 动态优化使Netflix能够降低x264的比特率, VP9 (libvpx), x265 × 28.04%, 37.61%和33%.分别为51%,同时保持相同的质量.
尽管基于射击的游戏很有吸引力, 这给玩家方面带来了重大问题, 特别是涉及广告插入的应用程序. 至少, 你需要在几乎所有平台上定制玩家/应用, 即便如此, 在想要的时间插入广告可能会很复杂. 在开始修改编码之前,一定要先检查播放器端.
下一个进步来自一个完全不同的方向,肯定地回答了这个问题, “你会创造你的。 如果你知道哪些设备在播放你的内容,以什么样的连接速度,编码阶梯就会不同?"
结合设备和网络数据
整合播放数据的标题编码技术几乎同时出现在三家公司:Brightcove, Mux, 和Epic实验室, 现在归海视所有. 最好的描述是在一份题为“优化大规模多屏视频传输,由流媒体传奇人物尤里·雷兹尼克和来自Brightcove的五位同事撰写.
介绍了Brightcove的上下文感知编码(CAE)技术, 它既分析内容”,又对每个客户端在每个速率下的流负载概率进行估计.它继续着, 在计算最终优化成本表达式, CAE生成器根据使用分布汇总为每种类型的客户机获得的估计值, 也由分析模块提供. 换句话说, CAE配置文件生成实际上是针对多设备/多屏幕交付的端到端优化过程."
本文分析了左图所示的三种使用模式 图4 并给出了为来自同一内容的每种使用模式创建的唯一编码阶梯. 第一种使用模式是以移动设备为中心的 第二种是通用的,第三种是通用的 以ip电视为中心,100%传输到平均带宽约为36Mbps的电视. 而前两个编码阶梯之间的区别是微妙的, 第三个梯子的梯级最少, 最低的总比特率, 和最高质量的顶级梯级. 这减少了编码和存储成本,并提高了QoE,尽管只是略微提高.
将回放数据分解到梯子创建分析中是有意义的, 但是从哪里获得数据,以什么形式获得数据? 他们, 哪个为大多数客户部署端到端平台, 这显然很简单, 因为它有所有的数据. Mux也是如此,因为它的旗舰产品是Mux Data,一个QoE监控工具. 对史诗, 哪个运行看起来是一个独立的编码器, 以及其他编码产品和服务, 答案不那么明确. 我就此事和其他细节联系了海威视, 但该公司还没有准备好讨论如何实施最近收购的产品.
So, 虽然这个概念很诱人, 你将如何在Brightcove或Mux这样的服务之外实现它. It's not rocket science; Brightcove detailed the summary data incorporated into its analysis in a single table, Reznik详细介绍了应用数据的算法 另一篇论文. 但就像指导编码内容相关方面的质量指标一样, 应用这些数据的算法可能会因实现而异. 而且很有可能的是,大多数没有插入端到端解决方案的现有编码产品和服务甚至可能没有考虑这种类型的集成.
Brightcove论文中提到的另一个变量是多编解码器实现. 在这里,论文指出:
CAE概要生成器的特性之一是能够为多个现有编解码器生成ABR概要. 在这种情况下,生成器还使用有关支持此类编解码器的信息 通过不同类别的接收设备. 这些信息是作为运营商使用和带宽统计的一部分提供的, 由分析引擎提供.
使用多编解码器配置文件生成可以额外节省可在编解码器之间切换的客户可以实现的再现总数和质量增益.
将多个编解码器合并到一个梯子中也很有意义. 尽管苹果建议H.264和HEVC内容,我在2018年进行的测试显示混合梯子,与H.在较低的梯级和H.265在上部,工作刚刚好(见 go2sm.com/ozersme19,第84页). Reznik和他在Brightcove的同事在另一篇论文中探讨了同样的问题 go2sm.com/reznik3. 生成单个混合阶梯节省了编码和存储成本, 使其成为大多数提供两种编解码器的制作人的最佳选择, 反过来,创建混合编解码器编码阶梯的能力是每个标题技术的一个有价值的功能.
帧率和动态范围
许多优质内容服务以每秒60帧(fps)或更快的速度分发高动态范围(HDR)视频. 尽管动态范围的考虑相对较新, 制作人在相当长的一段时间内一直在降低编码阶梯的最低阶的帧率. 然而, 到目前为止所讨论的每个标题技术都没有强调自动调整阶梯的帧率的能力. 50/60 fps和更快的视频会加剧这个问题, 两个或三个帧率开关可能是必要的,以表示质量从高到低比特率的平滑进展.
另一个类似的问题与动态范围有关. 虽然HDR在编码阶梯的顶端显然更可取, 它可能与较低的级别不兼容或无法交付. 很明显, 每个标题技术解决高帧率和HDR的优质内容也必须解决如何缩放帧率和动态范围, 以及前面讨论的所有其他参数, 在一个编码阶梯中.
流媒体供应商ATEME在其论文中解决了帧率和动态范围适应(以及更多)问题。下一代UHD HDR WCG HFR的前瞻性内容感知编码.本文首先探讨了帧率适应的影响, 使用atee质量指数(AQI)绘制如图所示的曲线 图5, 它可以跟踪从960 × 540到4K分辨率的视频流的质量, 帧率范围从25到100 FPS, 数据速率从1Mbps到80Mbps不等.
在论文中, 研究人员详细说明了ATEME指标包含了分辨率, 帧率, 动态范围, 和 色域; are codec independent; 和 use trellis optimization to produce the optimal rungs for the encoding ladder. 使用4K 100 fps HDR Hybrid Log-Gamma (HLG) 输入环法自行车赛,系统产生的编码阶梯如图所示 图6,它描述了数据速率和动态范围的开关点.
eme的作者们做了 显然,该系统还可以处理其他关键的配置因素, 声明,除了“率, 决议, 帧率和动态范围适应, 如果有必要,提议的框架甚至可以处理编解码器切换. 也有可能派生出一组配置文件来处理几种可能的屏幕尺寸."
作为警告, 注意,有些人反对在演示中改变帧率和/或动态范围,因为这可能无法保留原始的艺术意图. 例如,消费者技术协会的“Web应用视频生态系统-内容规范CTA-5001-A”国家, 建议在整个WAVE程序中保持一致的视频帧率,以避免由于帧丢失或帧重复而导致的运动伪影.关于视频色彩特性, 文件中写道, “一致的视频渲染利用了显示器的色域和动态范围,这对于程序中的所有演示来说都是理想的,以创造一致的观看体验."
当然, 帧率准则在违反时比在遵守时更受尊重, 因为苹果的HTTP直播(HLS)指导方针一直指导制作人在不同的阶梯上配置不同的帧率. 而且很难想象任何艺术意图会要求将HDR流发送到SDR设备. 仍然, 在为高帧率或HDR内容配置编码阶梯时,要记住这些注意事项.
你只有和你的质量标准一样好
此时此刻, 另一个报价, 通常(错误地)认为这是彼得·德鲁克的观点, “你无法管理你无法衡量的东西.应用到这个分析中, 这意味着如果您的VQM没有测量它, 你不能用那个度量来管理那个参数.
例如, 尊重帧率, 假设您正在比较从60帧/秒的源编码的两个3Mbps文件, 一个编码为1080p和30fps, 另一个是720p和60 FPS. 为1080p文件生成VMAF(或PSNR或SSIM)分数, 你可能需要将60帧/秒的源转换为30帧/秒. 虽然这将测量帧质量甚至一些运动质量(使用VMAF), 它无法衡量60帧比30帧的平滑优势. 因此,您确实不能使用VMAF来决定两个文件中哪一个提供更好的观看体验. 这意味着您不能使用VMAF为混合帧率阶梯中包含的文件选择最佳帧率.
HDR也是如此. 正如在一篇文章中所解释的 金星博客号探测器, “在屏幕上显示数字图像, 显示设备需要将像素值转换为相应的光值. 这个过程通常是非线性的,称为光电传递函数(EOTF)。. 不同的显示设备支持不同类型的“传递函数”.从Venera博客中总结,SDR视频使用了BT.709传递函数,限制为100尼特(cd/m2), 和HDR显示器使用感知量化器(PQ)或HLG传递函数, 哪一个可以扩展到10个,000尼特(尽管大多数HDR显示器产生大约1,000尼特).
除非VQM支持这些HDR传递函数, 它产生的分数将只衡量视频的SDR成分, 这意味着它与视频的主观评分的相关性很低. 这也使得比较SDR和HDR视频来确定相关的切换点变得无用.
那些衡量HDR视频质量的人没有多少选择. 值得注意的是, 莫斯科国立大学视频质量测量工具(VQMT)的最新版本首次推出了现有指标的三个HDR版本:SSIM, MS-SSIM, 和VQM, 尽管莫斯科州立大学无法分享这些分数与主观评价之间的关系.
另一个是 SSIMPLUS VOD监视器,它计算SSIMplus度量和 支持HDR10和杜比视界HDR视频. 该工具也由杜比实验室批准,并与杜比配置文件5和8兼容(见 图7).
测试其HDR评分的准确性, SSIM-WAVE将SSIMplus的HDR评分与两个公开可用的数据库进行比较,发现前者与主观评分有98%的相关性,后者与主观评分有85%的相关性. 与Moscow State工具支持的三种编解码器不同,SSIMplus可以合并帧 速率和色域的分析,它支持多个 设备配置文件,以预测对各种设备的主观评级, 包括智能手机和4K电视. (为了充分披露,作者制作了SSIMWAVE的培训和营销视频.)
正如我们看到的, ATEME创建了自己的度量标准, teme质量指数, 为其标题编码引擎提供必要的分析, Brightcove也做了同样的事情, 使用其感知加权SSIM来推动其 每部引擎. 如果要构建或评估每个标题的编码方案, 您将需要一个VQM,它可以支持由度量调整的参数. 我的开源指标, VMAF, 对分辨率和数据速率有好处吗, 但是到此为止, 无法比较帧率或其他参数, 如图所示 表1.
在这个时间点上(2021年6月),理想的每款游戏技术应该是:
- 可以换号码吗? 梯子的梯级
- 可以改变分辨率 梯子的梯级
- 可以改变数据速率吗 梯子上的梯级
- 将视频分成多个镜头 编码而不是 任意长度的GOPs或片段
- 可以合并多个编解码器 基于设备数据
- 可以结合网络性能
- 可以调整帧率
- 可调节动态范围
- 可以调整色域吗
似乎没有任何讨论过的产品或服务包含所有这些元素. 事实上, 除非你正在处理高帧率的HDR内容, 当最好从全帧速率降至半帧速率时,你可以丢掉最下面的三个帧,然后只是吐痰. 如果你是一名高级内容制作人,制作的视频正在突破质量的极限, 您将需要启用或禁用全部或大部分功能的能力.
[本文发表于2021年6月号的。 流媒体杂志]
相关文章
在标题编码中,编码服务为每个视频文件创建一个唯一的编码阶梯. 虽然可用于直播,但按标题编码最常用于视频点播.
2022年3月24日
HEVC和AV1的使用率呈上升趋势,H.根据Bitmovin对视频开发者和工程师的年度调查,264正在开始淡出人们的视线. 这并不是报告中唯一令人惊讶的地方.
12月3日
Bitmovin的Steve Geiger概述了按标题编码的好处, 如何使用它来优化您的交付, 以及2019年流媒体西部剪辑中的工作流程.
4月15日2020
流媒体学习中心负责人1月时解释了每个标题编码,并对他在2019年流媒体东部会议上的演讲中不同的每个标题编码技术进行了评分.
2019年8月2日
一次革命, 标题前编码被基于镜头的编码取代,然后是上下文感知编码. 以下是在选择解决方案时如何评估供应商.
2019年6月17日
提及的公司及供应商