• 新一代视频编码标准VVC的芯片设计思考


    编者按: VVC是新一代刚发布的视频编码标准,其中集成了当前最先进的视频压缩技术,相比上一代标准HEVC,可以提升将近50%的视频压缩率。但同时,VVC也带来了更复杂的预测方式、块划分等,其编码计算量暴增10倍以上。LiveVideoStackCon 2022 上海站大会邀请到了复旦大学微电子学院的范益波老师和和大家一同探讨了针对新一代视频编码标准VVC的芯片设计和思考。

    文/范益波
    整理/LiveVideoStack

    图片

    大家好,本次我分享的主题是新一代视频编码标准VVC的芯片设计思考。

    图片

    内容主要分为六个部分:VVC标准简介;Cmodel-硬件架构设计的算法模型;预测器模块(帧内预测和帧间预测);重建环路模块(RDO、变换量化);输出模块(ILF滤波、熵编码);总结与展望。

    1、VVC标准简介

    1.1标准发展历程

    图片

    首先简单介绍下VVC标准。VVC是视频领域最新一代的标准,由两大国际组织ITU和ISO共同打造的标准。我国许多知名厂商也有很多专利,也是下一代视频应用非常重要的标准,在高分辨率以及VR领域能够发挥很大的作用。比如说能够面向支持4K到16K的分辨率以及VR 360°视频,并且有很多拓展的应用场景,包括SNR拓展Enhancement layer、立体/多视图编码、全景格式和静止图像编码。整体效率相较于HEVC提升了30-50%的压缩效率,也仍然采用了混合的编码框架。此外视频也能支持4:4:4、4:2:2和4:2:0视频格式,YCbCr色彩空间和8位到16位比特深度。同时也支持无损压缩和主观无损压缩,支持辅助通道,如深度通道、alpha通道等。

    1.2VVC标准引入的新特性

    图片

    右边这张表列出了VVC标准引入的一些新特性以及每一个特性所能取得的收益。比如最高的色度分离树能够达到接近4.50%的收益,其余的比如DQ也能达到1.50%的收益,大部分的编码工具收益在1%以下。如果将这些新特性分类的话,能够分成图像划分、变换量化、环路滤波、帧间预测、帧内预测。图像划分有更大的LCU块、分离的色度树;变换量化有依赖量化、多变换核选择;环路滤波能支持自适应环路滤波;帧间预测上增加了仿射变换模型,这也是第一次被采用;在帧内预测中有更多的预测方向、多参考行等。

    2、C-Model硬件架构设计的算法模型

    一般做硬件时会涉及到C-Model,接下来简单介绍下C-Model。

    2.1什么是C-Model?

    图片

    软件编码器的主要目的是提升CPU执行效率,因此在写程序的时候更多是一种深度优先的模式,遵循的是串行编码逻辑,因此不是很需要考虑数据的依赖。因为CPU在执行过程中都是串行的逻辑,它的数据依赖关系没有太多地被考虑。所以直接基于软件编码器设计并行编码器不是非常适合,在行为有很大差异的基础上还无法直接导出硬件设计所需要的数据。

    C-Model编码器就是在这个情况下被设计出来的,按照模拟硬件的模块架构和流水线行为进行设计,如右图xk265的硬件架构。首先C-Model编码器需要模拟硬件流水线行为,并且广度优先。所谓的广度优先,就是将硬件对应的模块变成一个独立的函数,保证其流水线前后的数据依赖和硬件的完全一样。并且C-Model编码器遵循并行编码逻辑,实现与硬件架构一致的数据依赖关系,不仅能够提高压缩的效率,更重要的是能导出硬件设计所需要的数据,确保软件和硬件相一致,能够起到非常大的作用。

  • 相关阅读:
    希望已有的异步函数内部添加部分同步逻辑,但是外部不需要使用await接收返回值实现方法——匿名函数
    electron程序私有化部署更新
    wandb报错Network error (ProxyError), entering retry loop
    三天吃透MySQL面试八股文
    Java基于SpringBoot的校园博客系统
    linux的持续性学习
    C#中的访问修饰符知识点
    烂大街的缓存穿透、缓存击穿和缓存雪崩,你真的懂了?
    全国地级市城镇化和协调发展指数测算数据(2005-2019)六份数据
    哪些地方会出现css阻塞和js阻塞_前端培训技术
  • 原文地址:https://blog.csdn.net/vn9PLgZvnPs1522s82g/article/details/127683211