关于腾讯云:Serverless-音视频转码-芒果-TV-落地实践上

44次阅读

共计 3741 个字符,预计需要花费 10 分钟才能阅读完成。

本文整顿自芒果 TV 吴刚强在 Techo 大会的分享。上面,让咱们一起回顾下吴老师在 Techo 大会的精彩演讲内容。

原文作者:吴刚强 整顿编辑:王天云;@Aceyclee

大家好,我叫吴刚强,来自芒果 TV,十分荣幸收到腾讯云的邀请来和大家分享芒果 TV 在腾讯云 Serverless 上的落地摸索及实际。

明天的分享,次要从目前 Serverless 的易用性以及出于对资源的耗费和老本的思考,心愿能为做相似业务落地的同学提供肯定的参考。

我本次的分享次要分四个局部,第一个是芒果 TV 简略介绍;第二个是音视频编解码业务的简述及倒退现状;第三是引入 Serverless 联合当前,咱们在此期间做的事件;第四是布局及瞻望。

芒果 TV,在座各位都比拟相熟,它是湖南广电下的视频平台。大家熟知的《高兴大本营》、《明星大侦探》、《歌手》、《爸爸去哪儿》等等这些节目,尤其是在往年推出的自制节目《乘风破浪的姐姐》,十分火爆。

芒果 TV 作为湖南广电双核驱动的策略主体之一,是国内 A 股首家国有控股的视频平台。通过这么多年的倒退,取得十分多的光荣。

芒果音视频编解码业务

上面我简略介绍下咱们团队承当的业务,次要有以下几个方面:

在自有内容的音视频播出里,每天有海量视频的生产,耗费咱们很大的计算资源。每天解决的量从 240P 到 4K 等不同清晰度、超 50 余种格局,蕴含 AVC、HEVC、MPEG 等多种编码格局。

而在 UGC 方面,咱们须要疾速将创作者的内容出现给用户,给创造者带来收益。这一块目前咱们有一部分还是在用腾讯云的点播服务,前期逐渐往 Serverless 下面迁徙。

主观感兴趣视频编码的钻研

上面我分享一下主观感兴趣视频编码的钻研,它是基于视觉冗余原理和对编码器引擎深度优化,绝对原生 X264、X265 编码软件等同主观画质降低码率 40% 以上。

第一,咱们进行后期的预处理,通过剖析这个视频动静复杂度、场景、镜头等,自适应匹配到 RDO 编码曲线最佳性价比码率,从而实现在不升高主观画质的体验上,去降低码率达到 30% 以上。

第二,主观感兴趣的区域编码。图二,是咱们人眼聚焦的点在小汽车下面,能够看到一个人开着车的动作,利用人眼视觉感兴趣区域关注特点,通过芒果自研基于 AI 的主观感兴趣区域预测模型,领导编码器在不同区域的编码品质权重调配,等同主观体验降低码率 15% 以上。

第三,视频编码图像增强技术,自主研发的系列编码图像优化技术,在不减少码率前提下,达到超过源片画质的体验晋升。

咱们在后面看到的是编码的算法钻研,而在宏大的音视频解决平台的版本迭代过程中,咱们还有很多的钻研。

芒果音视频转码平台产品迭代

从 2015 年起开始第一代,基于 Hadoop 的 MapReduce 计算实现,它处理量比拟少,随着业务的疾速倒退,前期咱们发现该架构扩大比拟艰难。

第二代,是基于 mesos 的分布式资源管理框架,这个时候咱们的业务曾经有所增加,日处理量失去晋升,尤其是 2016 年芒果提出独播的策略,音视频内容须要疾速生产上线,在此基础上实现了视频分段转码。

第三代,是在 2019 年的时候,因为引进 AI 技术和咱们图像优化技术,引入这些办法后,因而采纳 K8S 来实现资源的调度,自研调度及工作流编排。而到往年因受到疫情的影响,咱们视频的量增长的十分疾速,尤其是在 UGC,超过以前十倍以上的量,引入了 Serverless 的后,疾速的实现了集群的扩容,疾速去提供咱们所须要的计算资源。

Serverless 的价值

第一个场景,咱们为什么要去用这个 Serverless,在此之前,后面的几位大咖曾经分享过。从下图咱们能够看到,从左到右云端计算的倒退,云计算始终在提高的。

右边是咱们晚期是物理机托管,到云主机到容器的呈现,到当初 Serverless 的呈现,曾经失去十分的倒退。

晚期的物理机和云主机和容器的特点,决定了 30% 的工夫是处于低负载的状况。而芒果晚期视频的转码,大略有上百台服务器,在本地 IDC 机房。白天资源严重不足,但到凌晨则处于低负载,服务器资源无奈正当应用,而现在采纳 Serverless 当前,可能保障咱们资源失去正当利用。

Serverless 可能给咱们带来哪些价值呢?

  1. 疾速部署、弹性伸缩灵便的按量应用,升高业务应用瓶颈。
  2. 按应用场景实现工作的多地区调度能力,依据用户起源去调用每个区域资源正当应用。
  3. 云上备份容灾机制,实现业务的不间断运行。
  4. 在确保性能的根底上省钱省事的目标。

芒果 Serverless 落地实际

上面介绍下咱们在引入 Serverless 当前的落地实际。总体来讲,咱们在 Serverless 落地的实际包含以下几个方面:

第一、音视频转码

刚刚做了简略介绍了,咱们在云端利用 Serverless 实现音视频转码,它只须要简略的三步就能够达到:

第一步,创立函数,部署自研编码器资源包、部署转码逻辑。

第二步,配置 COS Bucket 触发器,对源视频实时处理加工;旁路生成日志和监控、反对告警。

第三步,对转码后的视频回传 COS,并散发到自建 CDN 或腾讯 CDN 节点。

它的外围劣势次要是在于凭借云函数弱小的联动能力,可能将咱们视频上传以及视频解决和加工,还有视频提取还有存储场景可能有机联合为一体。

第二、反对灵活处理

能反对自定义转码函数,本身编码器可能疾速部署下来,补救独自服务,云服务的盲点。

第三、平滑迁徙

线上 UPGC 内容采纳的云厂家的点播服务,编码器处于不可控的状态。而采纳 Serverless 后可能平滑迁徙咱们本人的转码零碎,把自研的编码器迁徙下来,可自在调节所需参数,达到优化视频品质的目标。

第四、降本增效

这是最大的长处,可能大量升高咱们老本,咱们在上线当前,计算资源的 老本升高了百分之四五十以上

咱们原有的音视频转码架构,须要本人监控各项指标,比如说 CPU 和内存,还有网络带宽。咱们通过触发器,去调动云服务器的装置镜像去接入计算平台,这个有一个比拟大的问题,它这里延时比拟高。

第二,咱们启动当前,什么时候开释资源也存在很大的问题,造成大量计算资源的节约。而所以采纳 SCF 当前,就能够使用云函数主动扩容的形式去应答大量用户申请,同时腾讯云实现了实时监控,比如说内存、并发,网络带宽。

芒果业务场景:自研的 DAG 工作引擎反对函数编排

目前咱们在应用云函数过程当中,一个比拟艰难的点,咱们编排了十几个函数或者是几十个函数后,发现把函数串联起来的时候,有一点艰难。

因而前期咱们通过自研的 DAG 工作引擎来实现,它反对咱们本地任务调度的同时,去反对 SCF 的编排,解决了函数之间的联动调用,能够从图片看到,一个视频进来咱们要提出它的水印,提取音频,或者是前面要做视频的封装,而不同的封装格局,为了节俭这个资源,会将转码进去的文件做不同的转封装输入。

芒果业务场景:视频魔术手

另外一个业务场景,就是视频魔术手。在应用芒果 TV APP 的时候,用户看到一个精彩片段或者是本人喜爱的明星片段,想把片段分享进来,须要对视频做裁剪。

实现的计划有两个,第一个从客户端去实现,第二个从服务端实现。

咱们在调研的过程当中发现,在客户端实现的时候,思考用户设施的计算资源,还有他可能有一个弱网环境下,导致内容上传呈现问题,因而咱们从服务端去实现,采纳云函数 SCF 解决来解决。客户端、浏览器或者是 APP 小程序申请生成片段时,利用 SCF 解决后将视频地址返回给用户播放,再分享进来。传统服务端实现须要思考负载平衡,然而这次咱们采纳 SCF 后可能动静去扩缩容,成本低,而且用户没有任何申请的时候,不要领取费用任何费用。

咱们思考视频解决的场景十分耗费资源,用户一次申请须要耗费 4 个外围 CPU,64 核传统的服务器,同时可能解决 16 个用户的申请,如果咱们 QPS 达到 100 的时候,须要大量的服务器去撑持,而在采纳 SCF 后,这是目前咱们做的收益十分大的一个面。

最初,我再总结下咱们在应用云函数当前的理论感触

  • 高易用性,咱们只须要实现业务代码的逻辑,无需关怀非性能开发以外的问题,免运维。
  • 稳定性,目前稳定性还是十分高的。然而有一个问题,是实时处理的重试解决。
  • 快迭代,反对版本号,API 流量自在调配,疾速实现灰度计划。
  • 快启动能力,每次在一秒钟之内实现,20 秒以内能实现,当初目前能满足咱们需要。

芒果 TV 音视频转码团队下一步业务布局

Serverless 的架构下用户不必再去关怀运维所须要的资源,咱们间接关注业务代码逻辑,依照工夫耗费领取费用。随着 Serverless 呈现,云函数计算才真正到来了。

思考到咱们将来建设能力,能够将 4K、CPU、AI 能力往下来迁徙,目前来说 GPU 在 Serverless 下面未能实现,但将来可期待。其次是咱们转码架构降级,将来咱们将本地的零碎往上面迁徙,能够帮忙咱们把研发效力晋升。第三个是升高运维复杂度,优化转码老本。尽管 Serverless 还有有余的中央,须要去欠缺。然而凭借 Serverless 本身弱小的劣势,无论是对企业还是开发者来说,它还是具备十分大的吸引力的。

置信随着将来技术飞速的倒退,Serverless 在将来有有限设想的空间。谢谢大家!

One More Thing

立刻体验腾讯云 Serverless Demo,支付 Serverless 新用户礼包 ???? serverless/start

欢送拜访:Serverless 中文网!

正文完
 0