对于 TS 中 PTS_DTS_flags 的重设
此字段在PES头语法中,标识PTS与DTS在PES分组首部的出现情况,当出于某种需求要对此标志位进行修改,例如由‘3’ 修改为‘2’,即删除DTS,但仅仅修改了这个标志位并没有达到“删除DTS”的目的。虽然VLC等播放器可以正常解码且不报任何错误,在一些严格的解码器上,会无法识别新生成的数据。例如elecard分析软件会报告“无法检测流”,ipad播放会说“无法播放此影片”
这是因为忽略了一个问题,在PTS语法中,前4个bit要求与 PTS_DTS_flags 取值相同。因此,在修改 PTS_DTS_flags 的之后,PTS语法前4bit也要做相应的修改。这样目前已知的解码器就可以正常工作
(转载请注明作者和出处 easyice.cn ,请勿用于任何商业用途)