我在 PES 解复用器中检测到新的 PES 数据包,搜索 packet_start_code_prefix (0x000001)。当它发生时,我可以读取 PES_packet_length,因此我可以从字节流中提取当前的 PES 数据包。但如果是 H.264 视频流,则 PES_packet_length=0。
在这种情况下如何提取PES数据包?0x000001 也可能出现在 H.264 最终单元字节流中,因此我不能使用此前缀来查找下一个 PES 数据包。
我注意到,在每个 H.264 PES 数据包中,PES 数据包中的最后一个最终单元是一个填充数据(nal_unit_type=12)。我是否需要使用这个事实来检测当前 PES 数据包的结束?