码迷,mamicode.com
首页 > 其他好文 > 详细

H.264帧分析

时间:2015-01-31 14:28:58      阅读:203      评论:0      收藏:0      [点我收藏+]

标签:

1.H.264是由一个个NAL Unit组成,每个NAL Unit以0x000001或者0x00000001为起始码,每两个起始码之间的数据称之为NAL Unit;H.264规定当检查到0x000000标志前一个NAL单元的结束;

而NAL单元视频数据为了防止出现0x000000与起始码竞争,编码器时会插入0x03,当解码器在NAL内部监测到有0x000003的序列时,将把0x03抛弃掉,恢复原始数据。

技术分享

2.每个NAL Unit第一个字节的低5bit表示该单元的类型nal_unit_type:

技术分享

#define NALU_TYPE_SLICE 1

#define NALU_TYPE_DPA 2

#define NALU_TYPE_DPB 3

#define NALU_TYPE_DPC 4

#define NALU_TYPE_IDR 5

#define NALU_TYPE_SEI 6          

#define NALU_TYPE_SPS 7

#define NALU_TYPE_PPS 8

#define NALU_TYPE_AUD 9

#define NALU_TYPE_EOSEQ 10

#define NALU_TYPE_EOSTREAM 11

#define NALU_TYPE_FILL 12

AUD(分界符):在数据中0x00 00 00 01 09,0x09&0x1f=9

Sequence Parameter Set(SPS,序列参数集):在数据中0x00 00 01 67,0x67&0x1f=7

Picture Parameter Set(PPS,图像参数集):在数据中0x00 00 00 01 68,0x68&0x1f=8

SEI(补充增强信息单元):在数据中0x00 00 01 06,0x06&0x1f=6

I slice():在数据中0x00 00 00 01 65,0x65&0x1f=5

P slice():在数据中0x00 00 01 41,0x41&0x1f=1

3.SPS

profile_idc、level_idc指明所用的pprofile、level

pic_width_in_mbs_minus1指明图像宽度

pic_height_in_map_units_minus1指明图像高度

4.PPS

5.slice header

slice_type:指明slice类型

技术分享

frame_num:指明图像解码顺序

H.264帧分析

标签:

原文地址:http://www.cnblogs.com/aHuner/p/4229201.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!