【发布时间】:2014-12-30 12:54:12
【问题描述】:
我从硬盘中提取了几个最终单元。我想知道其中哪些是有效的最终单位。是否有任何工具或代码可以验证单个 h264 AVC 最终单元的结构或语法。
【问题讨论】:
-
欢迎来到 SO。到目前为止,您对这个问题的研究成果是什么? SO 不是关于“我问,你做的工作”,而是在人们遇到困难时帮助他们。
标签: h.264
我从硬盘中提取了几个最终单元。我想知道其中哪些是有效的最终单位。是否有任何工具或代码可以验证单个 h264 AVC 最终单元的结构或语法。
【问题讨论】:
标签: h.264
这取决于。首先,您需要通过第一个字节弄清楚 NAL 类型是什么。如果 NAL 是 SPS 或 PPS,您基本上可以按原样解码,看看结果是否正常。
如果 NAL 是实际的编码切片,则至少需要三个 NAL 才能对其进行解码。对应的 SPS、PPS 和编码切片。您可以在没有 SPS 和 PPS 的情况下解码切片标头的前几个元素,但是您需要根据切片标头中的 PPS ID 对应的 SPS 和 PPS 才能继续。
有一些命令行工具(可能是 h264_parse)可以为您转储此类标头信息,或者您可以破解参考解码器来帮助您。 http://iphome.hhi.de/suehring/tml/
最后,了解您的 NAL 是否“好”的唯一方法是将其与您开始使用的比特流匹配或对其进行完全解码并验证生成的图片输出是否为位精确。
检查 NAL 字节长度,也许每个 NAL 的校验和或 CRC 也会有所帮助,但比特流中不存在这样的机制,你必须添加它。
【讨论】: