NALU

NALU

H.264码流在网络中传输时实际是以NALU的形式进行传输的.

NALU结构

每个NALU一个字节HeaderRBSP组成.

NAL Header
NAL Header
  • forbidden_zero_bit

forbidden_zero_bit shall be equal to 0.

  • nal_ref_idc
    用于表示当前NALU的重要性,值越大,越重要.
    解码器在解码处理不过来的时候,可以丢掉重要性为0的NALU.
nal_ref_idc

nal_ref_idc不等于0时, NAL unit的内容可能是SPS/PPS/参考图像的片等.
nal_ref_idc等于0时,NAL unit的内容可能是非参考图像的片等.

nal_ref_idc shall not be equal to 0 for sequence parameter set or picture parameter set NAL units.
When nal_ref_idc is equal to 0 for one slice or slice data partition NAL unit of a particular picture, it shall be equal to 0 for all slice and slice data partition NAL units of the picture.

SPS/PPS时,nal_ref_idc不可为0.
当某个图像的片的nal_ref_id等于0时,该图像的所有片均应等于0.

nal_ref_idc shall not be equal to 0 for IDR NAL units, i.e., NAL units with nal_unit_type equal to 5.
nal_ref_idc shall be equal to 0 for all NAL units having nal_unit_type equal to 6, 9, 10, 11, or 12.

The relationship of nal_unit_type and nal_ref_idc
  • nal_unit_type

nal_unit_type specifies the type of RBSP data structure contained in the NAL unit as specified in Table 7-1.

NAL unit type codes

nal_unit_type从是否包含VCL层编码数据分为VCL NAL unitsnon-VCL NAL units.
VCL NAL units中包含VCL层编码输出的数据, 而non-VCL NAL units不包括.

VCL NAL units & non-VCL NAL units

VCL NAL units常用的是nal_unit_type=5nal_unit_type=1.
nal_unit_type=5表明该NALU的类型是IDR的slice, 也表明该NALU所在图像也属于IDR帧.
nal_unit_type=1时一般表示该NALU所在的帧是P帧.

RBSP(Raw Byte Sequence Payload)

A syntax structure containing an integer number of bytes that is
encapsulated in a NAL unit
.
An RBSP is either empty or has the form of a string of data bits containing syntax
elements followed by an RBSP stop bit and followed by zero or more subsequent bits equal to 0.

  • (RBSP) stop bit

A bit equal to 1 present within a raw byte sequence payload
(RBSP) after a string of data bits. The location of the end of the string of data bits within an RBSP can be identified by searching from the end of the RBSP for the RBSP stop bit, which is the last non-zero bit in the
RBSP.

stop bit用于标示RBSP中数据部分的结束. 其后会填充0.

An RBSP is specified as an ordered sequence of bytes as follows.
The RBSP contains an SODB as follows.

  • If the SODB is empty (i.e., zero bits in length), the RBSP is also empty.
  • Otherwise, the RBSP contains the SODB as follows.
  1. The first byte of the RBSP contains the (most significant, left-most) eight bits of the SODB; the next byte of the RBSP shall contain the next eight bits of the SODB, etc., until fewer than eight bits of the SODB remain.
  2. rbsp_trailing_bits( ) are present after the SODB as follows:
    i) The first (most significant, left-most) bits of the final RBSP byte contains the remaining bits of the SODB, (if any)
    ii) The next bit consists of a single rbsp_stop_one_bit equal to 1, and
    iii) When the rbsp_stop_one_bit is not the last bit of a byte-aligned byte, one or more rbsp_alignment_zero_bit is present to result in byte alignment.
  3. One or more cabac_zero_word 16-bit syntax elements equal to 0x0000 may be present in some RBSPs after the rbsp_trailing_bits( ) at the end of the RBSP.

SODB(String Of Data Bits):
最原始的编码数据RBSP, 长度不一定是8的倍数,此时需要对齐. 
RBSP: 在SODB的后面填加了结尾比特(RBSP trailing bits 一个bit“1”)若干比特“0”,以便字节对齐.

RBSP

References:
14496-10.pdf
14496-15.pdf
http://blog.csdn.net/newthinker_wei/article/details/8748442
http://www.360doc.com/content/14/0520/17/17532616_379388909.shtml
http://www.samirchen.com/video-concept/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,254评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,875评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,682评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,896评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,015评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,152评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,208评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,962评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,388评论 1 304
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,700评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,867评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,551评论 4 335
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,186评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,901评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,142评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,689评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,757评论 2 351

推荐阅读更多精彩内容

  • 年后新房交付,简单装修后高高兴兴入住了。 小区整体环境不错,道路干净,路两旁树木错落有致,生活设施齐全,运动场,儿...
    留逝阅读 273评论 1 2
  • 群里有麻麻私信我,问第一叛逆期…… 不是叛逆啦,是反抗期!这个必须要先说明,对于无论2.3岁还是青春期的孩子,用叛...
    和翊浛阅读 98评论 0 0
  • 翻译《Stack Overflow: The Hardware》 (20160717已完成)技术《About Ga...
    RiboseYim阅读 135评论 0 0
  • ​真琴实在是很喜欢各式各样的花,虽然对园艺和插花技术都有远超同龄人的审美品位和高超技术造诣,真琴却从来不参与学校花...
    GAssembly阅读 215评论 0 0
  • 最近再考虑要不要再买一个外研社的点读笔?拿不定主意是因为,我自己对点读笔的看法,但是音频有时候不好找,看看汪琣珽老...
    木木sani阅读 235评论 0 0