本文为媒矿工厂翻译的技术文章
原标题:HYPER: a decade of challenges and achievements.
原作者:sonnati
原文链接:https://sonnati.wordpress.com/2021/03/30/hyper-a-decade-of-challenges-and-achievements/amp/
翻译整理:王珅
从Flash Player和Adobe Media Server的年代开始关注我的人都知道,在过去的15年里,我一直忙于开发编码器、播放器和一般的软件架构,以实现、增强和优化大规模的视频流。我在为NTT Data、Sky、IntelMedia、VEVO等公司的创新项目上取得了许多专业上的成功。在这种情况下,我有幸遇到了许多贵人:经理、工程师、同事和最终的朋友,他们帮助我成长为一名工程师和视频流架构师。
特别是在2021年,我庆祝了Hyper的10周年,这是其中的一项成就,让我们从头开始讲起吧。
构想
2008年,我开始与意大利一家领先的系统集成商Value Team合作(后来被全球创新者NTT Data收购)。当时BBC的iPlayer刚刚发布,媒体客户开始要求提供类似的服务,于是NTT Data联系我,为新生的catch-up电视和OTT服务市场设计一个高性能的平台(编码器和播放器)。该产品VTenc在2009年为意大利第一个catch-up电视(意大利电信旗下的La7.tv)的推出提供了支持。
VTenc最创新的功能是可以对单个视频进行并行编码,将其分割成若干段,然后分布在一个计算网格上进行并行编码。这个想法是在与Antony Rose和他的团队(BBC的iPlayer的创建者)讨论后产生的,他们强调catch-up电视编码的主要问题之一是处理时间过长,在电视上的节目结束后,延迟了编码流的分发。
几个月后,解决许多技术挑战后,该功能已经准备就绪。平行编码的想法被成功地应用于La7.tv:我们以“部分”的形式接收直播节目,每当有广告时段时就会发出。每个部分通常是20-25分钟长,被潜入到较小的块中,进行并行编码,然后用地图还原风格的范式进行重新组装和打包。同时,由于客户端的播放列表,最终的结果在直播节目结束后仅10分钟就可以进行流媒体播放。
这在当时是一个不可思议的结果,因为商业编码器需要很多时间对2-3小时的资产进行精确的2次编码。这也是Flash中自适应比特率流媒体的首批绝对实现之一(在Flash Player 9 AMS中的自定义实现,而Adobe在Flash Player 10中才正式推出自适应比特率)。
Hyper的诞生
VTenc在接下来的几年里不断改进,直到2011年,NTTData与意大利天空电视台签订协议,为该广播公司的新传入OTT服务提供编码器。
我们实现了新的功能,他们选择VTenc的关键点有很多:
- - 灵活的队列管理系统
- - 快速的可定制性
- - 高视频质量
- - 高密度和可扩展性
- - 上市时间短。
VTenc演变成更复杂的东西,NTT Data Hyper诞生了。这种模式与购买商业编码器不同,商业编码器通常有很长的进化周期和明确定义但不灵活的路线图。Hyper更类似于Netflix或Amazon建立的那种专注的、定制的和优化的编码引擎。通常也是一个沙盒,用来构思和测试新技术和想法。
在这2021年,我们庆祝Hyper的第一个10年。
十年来的创新成就和里程碑
从那时起,面对过去十年的挑战,我们取得了许多成就和里程碑。回顾过去,这是一个激动人心的旅程,在专业上很紧张,也很充实,许多成就值得回顾。
- 从第一个经验版本(2013年)到使用ML实现奇特的 "targetMOS "和 "targetDevice"编码模式(2017年之后),内容感知编码方法是一段很长的故事。我一直是"上下文优化"的粉丝,并在Flash视频的年代开始了我的实验,在Adobe Max 2009-11上提出了一些初步的想法,但后来我有机会在业界以各种"口味"实现这些范式。
- 基本流的内部缓存逻辑,允许快速重新利用以前编码的产物,而不需要执行新的高代价的编码。有了这个逻辑,我们已经能够多次在几天内重新利用图书馆(数以万计的资产)。通过这种方式,添加新的音频格式,改变内容播放列表中的身份其他元素,或添加新的打包格式(例如:新版本的HLS)一直是快速和低成本的。
- 2016年,Hyper从网格计算发展到混合云模式,内部资源应对基本的工作负荷,而云资源则满足峰值。从一开始就围绕不可知的服务和灵活的工作队列考虑软件,混合是一个自然的步骤。资源可以被分割,以便在一些队列上获得最大的吞吐量和成本效益,同时在其他队列上获得最小的输出时间。
- 在这最后的背景下,我的团队设计了一个两步技术,生成一个具有可控感知质量的智能夹层,以快速和方便地将非常大的高质量资源转移到云端进行并行编码(带宽减少了一个数量级)。
- 在AWS和GCloud上的全面云部署,可以快速、动态地从2个按需实例扩展到数千个现货实例("弹性纹理"),优化的扩展逻辑使基础设施成本最小化,并提供比标准扩展系统(如自动扩展组)更高的反应性。
现在,Hyper已经10岁了,经过各种数百万次的编码工作,在2021年,我们将最终确定Hyper v2,并解决新的挑战(VVC、AV1、完全重构、感知交付、不可知架构以将大规模并行化处理应用于其他环境),但这是一个全新的故事...现在让我们庆祝一下。
庆祝Hyper十岁生日快乐!