解析 HEVC 以获得运动信息
Parsing HEVC for Motion Information
我通过简单地识别 sart 代码(000001 或 00000001)来解析 HEVC 流,现在我正在寻找 NAL 有效载荷中的运动信息。我的目标是计算流中运动信息的百分比。有什么想法吗?
最好的办法是从 HM 参考软件开始(在此处获取:https://hevc.hhi.fraunhofer.de/svn/svn_HEVCSoftware/trunk/)并在从比特流读取不同类型的数据时添加一些调试信息。这可能比从头开始编写比特流解码器容易得多。
检查软件中已经内置的调试,例如RExt__DECODER_DEBUG_BIT_STATISTICS或DEBUG_CABAC_BINS。这可能已经做了你想要的,如果不是,它会非常接近。我认为有关位使用的信息最好在解码期间在 source/Lib/TLibDecoder/TDecBinCoderCABAC.cpp
中收集。
如果你需要加快速度,你当然可以跳过实际的解码步骤:)
在解码器端,你可以找到运动矢量信息作为MVD,所以你应该使用像素解码过程来获取运动信息。需要你了解HEVC帧间预测的过程。
比你还厉害!
我通过简单地识别 sart 代码(000001 或 00000001)来解析 HEVC 流,现在我正在寻找 NAL 有效载荷中的运动信息。我的目标是计算流中运动信息的百分比。有什么想法吗?
最好的办法是从 HM 参考软件开始(在此处获取:https://hevc.hhi.fraunhofer.de/svn/svn_HEVCSoftware/trunk/)并在从比特流读取不同类型的数据时添加一些调试信息。这可能比从头开始编写比特流解码器容易得多。
检查软件中已经内置的调试,例如RExt__DECODER_DEBUG_BIT_STATISTICS或DEBUG_CABAC_BINS。这可能已经做了你想要的,如果不是,它会非常接近。我认为有关位使用的信息最好在解码期间在 source/Lib/TLibDecoder/TDecBinCoderCABAC.cpp
中收集。
如果你需要加快速度,你当然可以跳过实际的解码步骤:)
在解码器端,你可以找到运动矢量信息作为MVD,所以你应该使用像素解码过程来获取运动信息。需要你了解HEVC帧间预测的过程。
比你还厉害!