随着阿里云、腾讯云、华为云等云计算头部企业在分布式云赛道的发展进程加快,以及企业上云速度加快,市场对云计算不断提出更高要求,中国分布式云计算发展进入实践落地阶段。近期,党的二十大报告更是提出了“加快建设数字中国”“加快发展方式绿色转型”等重大战略,为分布式云计算的发展指明了方向和路径。
以“万象智算”为主题的2022全球分布式云大会·上海站于10月26日正式拉开帷幕,本次大会集结了信通院、阿里云、腾讯云、F5、OceanBase、浪潮云等分布式云计算及细分领域的领袖企业,共同助推云计算向智能计算升级,促进数网协同、数云协同、云边协同、绿色智能的多层次算力设施体系建设。
在10月27日上午举办的音视频技术领袖论坛上,腾讯云音视频专家工程师 刘兆瑞发表了题为《4K/8K超高清时代,媒体处理技术如何加速媒体数字化升级》的精彩演讲。
另一方面,高清片源稀少,在AI之前也有专门的影片修复技术,大部分是通过人工手段,非常耗费人力、物力,无法大批量生产。现在通过AI能力的迭代,对非常老旧经典电影的修复能力,已经有很大的能力提升。
面向未来来,AR/VR的兴起,如果要达到比较好的效果、避免眩晕,往往需要更高的4K/8K的分辨率。除了清晰度和码率之外,延时也是AR/VR的关注重点,要考虑在大分辨率编码应用在新的玩法、新的应用上的延时问题。
(1)怎么样在保证主观评分的情况下,尽可能降低视频的码率;降低码率的情况下,主要是要去解决4K/8K超高清视频它的高带宽的问题,比如8K大概在100兆码率,如果降低50%,那就是在50兆,超高清视频压力会大幅降低。
(2)在编码上的优化,主要是指在速度的优化。对于一个超高码率的直播系统来说,要实现实时编码,整体的编码器系统架构和速度上需要进行非常多的迭代。
一方面是适合编码的,或者是去适应主观的,进行一些对应的视频增强的工作,然后进行对应的编码IDU的分析,包括参考帧的决策,包括量化的过程等等,之后再进行一些后处理的工作。
编码标准规范协议,内容、码率分配、内部算法等自主决策的地方,也是实现编码器优化所要关注的重点,也是各个编码器压缩性能的区别点。
腾讯云音视频编码器的优化核心主要关注两个方面:一方面是工程上,在工程上第一点是在指令级,把大量代码用指令级进行优化,大幅提升运算速度;另外一点是帧级的并行,进一步更大范围内的宏块的并行。
算法上的创新,一方面是提升压缩率,包括帧结构的决策、码率分配;另一方面,在算法的速度上,快速过滤掉那块。
腾讯云音视频实现了多层级的B帧被参考机制,进行多层级的B帧参考,在16个B帧情况下,纯编码能力技术可以有5%以上的压缩。
在低延迟场景上,如云游戏、AR/VR等场景,是不开B帧的,B帧往往会做后向的参考,因为解码时要先解码后帧再解码前帧,必然带来延时的增加。但B帧有它的好处,例如一个宏块有两个mv进行参考,极限情况下能带来更大的压缩率。
第一个层级会设计整个场景的基准码率,通过一些AI的手段提取特征,当前的码率大概是多少,VMAF大概是95分。
第二部分进行帧级的码率分配,得到一个场景和基准码率,看在场景内是有动的帧、静的帧,复杂的帧、简单的帧,进行更细粒度的帧级码率分配。
最后进行宏块级的码率分配,自适应量化的能力等。需要注意的是,码率分配的核心是在保证主观不变的前提下尽可能降低码率。例如,平坦区域细节并不多,码率达到一定程度再加码率只会造成浪费,JND或者AQ做的事情,是让码率分配得更均衡。
第一,从用户角度考虑,编码器在不停迭代,很多8K挡还是用265做,未来可能会换成266或者AV1。如果全身心投入一个硬件的方案或者给客户提供一个硬件方案,带来的问题就是随着编码标准的升级,再进行编码标准迁移时,整个硬件的芯片都需要进行对应的升级。如果是以软编实现,只需要做软件的升级,原先购买的服务器可以复用,升级的成本是非常低的。
第二,离线的、最极致的编码,压缩率最高的一定是软编方案,相比硬编有很多优势,一些复杂的算法在硬编上不太好做。
第三,从业务的场景考虑。一套硬件编码工具,可能支持了264或者265之类的8K视频编码,又支持HDR的能力,随着新标准不断迭代,之前的硬件不支持新标准的能力,更换整个系统是非常昂贵的。如果在软编的基础上,无论有什么新的标准,所有的业务需求都可以进行无损快速迭代优化。
既然软编能够做到,就应该用软编去做,无论从系统迭代还是功能开发的角度考虑,软编都有非常大的优势。
这样一来,可以通过软件的方式实现非常高分辨率的实时编码;另外,大部分直播系统是软件服务,软件系统的扩容非常简单,甚至资源接近于无限,整个直播系统和点播系统的打通,可以使整体资源利用率大幅提升,降低使用成本。
但是,这种做法也存在缺点,要把一个直播流切成一个一个文件的小片进行分发,延时会变得很高。这个延时大部分情况下还是可以接受的。首先,8K编码是非常复杂的一件事情,即使是硬件编码器,延时也有5、6秒左右,很难做到2、3秒的延时。其次,高分辨率的直播流分发,自身也有5秒以上的延时。
把直播和点播的系统打通后,原先默认一路直播流N个转码,通过直播和点播打通结合的方式,可以做到直播系统的千人千面,直播系统不同的人,比如显示不同广告的插入,下行有N个人观看的时候,可以把直播点播打通,切成很多小片放到下游的离线系统来进行并行处理,处理后,每个人观看不同的片,广告结束以后再回归到原来的直播系统。
首先,无论是超分算法、插帧算法还是去噪等,不得不面对的问题是片源多种多样,如果用一个通用的模型,都很难达到理想的效果;低清的片源需要很强的去噪,高清的片源则要细节增强的操作。这里延伸出第二个问题,一个视频,该怎样合理选择模型。目前的做法是,首先做画质评估,视频源通过AI能力评估当前画质如何,分辨率的超分形式是1080p到4K或是其他形式,之后从库里选出合适的模型进行操作。
从服务客户的角度考虑,腾讯云音视频在系统里针对不同清晰度的视频源预制了大量的定制模板,大部分的OTT或广电客户内部视频都是结构化存储,有自己的标签,了解视频属于什么样的类型,通过预先制定的模板,就可以选择适合的方式进行操作。
当艺人劣迹曝光后,需要对劣迹艺人的相关视频做批量下线操作,腾讯云音视频系统为支持更好的人脸检测、人脸识别等检测,视频入库时进行结构化的存储,应对突发事件时就可以更快速地做下线或者人脸替换等处理。
面对4K/8K的超高清视频,大部分还是源站的服务。为了让系统私有化,部署在没有任何依赖的环境下,团队把对腾讯内部组件的依赖全部去掉,整个系统以容器的方式轻松快速地部署在任何一个有CPU或GPU的通用环境,来实现完整的4K/8K的超高清转码以及增强处理。
很多用户有自建的转码系统,腾讯云音视频也提供更加开放的方式,如底层的原子编码能力、底层原子的增强能力。如果用户有自身的转码系统,只需要把整个编码库进行简单替换,系统不需要操作,腾讯云音视频就可以把领先的编码能力、增强能力,完全部署在用户自己的系统里,编码器是完全开放的。