修改 HEVC HM 参考编解码器

Modifying HEVC HM reference codec

我对 HEVC 编解码器领域还很陌生。我使用的是 HM 参考代码版本 10.1。我的任务是使块大小达到 128x128。因此,我尝试在配置文件中将参数 MaxCUWidthMaxCUHeight 分别设置为 128 和 128。

这确保最大 CU 大小限制为 128 x 128。但是,代码崩溃并出现以下错误:

Error: Minimum CU width must be greater than minimum transform size
Error: Minimum CU Height must be greater than minimum transform size

我的问题是我无法弄清楚代码需要更改的位置和方式,以免影响其他参数。任何与此相关的帮助对我来说都是非常有价值的。

最小 CU width/height 来自 MaxCUWidth/MaxCUHeightMaxPartitionDepth 参数。 MaxPartitionDepth 禁止,CTU 可以拆分的频率。因此,如果您也将 MaxPartitionDepth 增加 1,它应该可以工作。

或者,您可以将参数 QuadtreeTULog2MinSize 增加 1,以增加最小变换大小,但我推荐第一种方法,因为这只会增加 CTU 大小,而不会改变其余部分配置。

感谢您帮我完成现在对于 HEVC HM 版本 (10.1) 只需要修改深度增量 1,而 CusizeWidthCuSizeheight 必须等于 128。为此,我对 log2Bliksize<=7 进行了更改,其中包含

TComPattern.cpp

并在

中对 MAX_CU_DEPTH 进行了更改

TComRom.h

之后我得到了 128x128 的块大小/CU(尺寸)。