首页 > 解决方案 > 更改 HM 参考软件以显示有关比特流的一些信息

问题描述

我对 HM HEVC(和 JEM)参考软件非常陌生,目前正在尝试了解源代码。我想为每个组件添加一些要显示的行:算法名称(即算法间/内部算法)+ 比特流长度+ 输出 bin 文件中的位置。了解哪个组件的编码成本更高以及编解码器的工作方式。在那之后,我也想为 JEM 做同样的事情。我的问题首先是我无法理解那里的很多功能,注释不够,所以有什么参考资料可以理解代码吗??!!(我已经阅读了曼努埃尔,没有帮助)。第二,我不知道在哪里以及如何添加这些行;是在TEncGOP,TEncSlice还是TEncCU. Ps:我不认为TEncGOP.compressGOP可能在其他2个课程中。

标签: video-processingvideo-encodinghevcvideo-codecs

解决方案


第 1 点:有一个通俗易懂的规则,即在解码器端记录编码决策(例如 pred 模式、MV、IPM、块大小)比在编码器端容易得多。这是因为你在编码器端有超级复杂的 RDO 过程,很容易让你迷失在循环中。但在解码器端,一切都只出现一次。但是,如果你坚持在编码器端做,你可能会在这里找到一些提示:Get some information from HEVC reference software

第 2 点:与编码决策不同,记录率(即不同语法元素的写入比特数)在解码器端比编码器端更复杂。对于与以非 EP 模式(即使用 CABAC 上下文)编码的任何内容相关联的小数位尤其如此。所以你可以在编码器端做这部分。但恐怕这并不容易。

第 3 点:我认为理解代码的最佳方式是逐行阅读。这非常耗时,但如果您从理论上了解标准,您可能能够区分重要部分并忽略其余部分。

PS:我认为您的帖子中有太多问题,大多过于笼统。这让我有点难以一起回答它们。所以你我会等你采取下一步并提出更精确的问题。


推荐阅读