【经验分享&讨论】如何判断H264的帧为I帧
本帖最后由 宁静致远 于 2013-10-7 16:37 编辑不保证正确性,仅仅是与大家讨论对标准的理解。
判断一个帧是否是I帧,我通过判断slice_header来决定。
如何判断slice_header的方法如下:
之前一直对slice_header的一些变量的数据结构占多少位感到疑惑,实际确实是可变的。
详情查阅14496-10 avc的文档此章节。
Parsing process for Exp-Golomb codes
此章节列出了ue(v)格式是分布的的。
由于I帧肯定是帧内预测,所以第一个宏块的起始地址是0,于是对应后面的slice_type 也就可以算出是不是I帧了。
slice_type是 2 4 7 9 都是 I slice,
因此 第五个字节开始算起,符合如下数据,我认为都可以算是I帧。
1 011
1 00101
1 0001000
1 0001010
由于紧跟着的变量也是ue(v)格式的,所以不可以用字节判断,必须从第五个字节开始,按位来判断是否是I帧。
奇怪,为啥没人分享呢 谢, 谢,
页:
[1]