Frame_num表示解码的顺序。该图像是参考帧的时候,Frame_num才有意义。非参考帧的frame_num在poc type为2或3时,用于poc值的计算。
H264中frame_num定义如下:当参数集中的句法元素gaps_in_frame_num_value_allowed_flag不为1时,每个图像的frame_num值是它前一个参考帧的frame_num值增加1.
当gaps_in_frame_num_value_allowed_flag为1时,网络阻塞,编码器可能会丢弃编码后的帧,编码器必须有机制将缺失的frame_num及所对应的图像填补。
解码器不是直接引用frame_num,而是由它计算出来的PicNum。
Frame_num是对帧编号的,也就是说如果在场模式下,同属一个场对的顶场和底场两个图像的frame_num的值是相同的。在帧或帧场自适应模式下,就直接将图像的frame_num赋给PicNum,而在场模式下,将2*frame_num和2*frame_num+1两个值分别赋给两个场。2*frame_num+1永远被赋给当前场,解码到当前场对的下一个场时,刚才被赋为2*frame_num+1的场的PicNum值被重新计算为2*frame_num,而将2*frame_num+1赋给新的当前场。