关于 H264文件中 I帧,B帧,P帧的判断!解决办法

关于 H264文件中 I帧,B帧,P帧的判断!
一直在用FFMPEG做编码,同时在做rtp打包解包传输的过程中对H264也有一定了解。00 00 00 01 /00 00 01 -> nal(一个字节)->紧跟着数据,这是基本的H264帧。由于现在做项目 TS 的打包 mepeg2 音视频同步的问题,以及后面需要得到H264的I,P,B帧,所以有几个问题想请教:
1:一帧H264数据中哪个字段是判断I,P,B帧的
2:在做ts打包音视频的时候是否可以根据视频的es包(h264数据)判断视频的帧类型
3:pts/dts怎样实现音视频同步。 都需要什么参数,才能解析标准文档给的那个公式。
请高手指教!!
------解决方案--------------------
1)I,P,B的信息不在NAL头里,在SLICE HEADER里,只有当NAL负载了SLICE图象时,才能在SLICE HEADER里判断是哪种类型;
2)PTS、DTS算法你可以这么试试,搞个起点时间,然后将起点时间定义为DTS,PTS比这个DTS稍微晚一点,然后每帧的PTS都做为下一帧的DTS,下一帧的PTS就是当前帧的PTS加上帧率折算过来的单位图象播放时间,这样应该就可以了。