网络抽象层

网络抽象层(Network Abstraction Layer (NAL))是 H.264/AVC 影像编码标准的一部分,以NAL-unit为单位的方式来做为视讯编码层(Video Coding Layer,VCL)的运算单位。

2005年3月联合视讯小组(Joint Video Team,JVT)公布 H.264/AVC 引进视讯编码层与网络提取层的概念,在NAL-unit Header中的NAL-unit Type栏位记载此封包的型式,借由NAL来提供网络的State,让VCL有更好的编解码更错能力。一般而言,H.264/AVC bitstream是由数个NAL-units所组成,NAL unit stream内可以包含多个压缩视讯序列(coded video sequence)。

NAL units

NAL是一种封装(packaging)的模组,并拥有NAL-unit 标头(Header),此Header内又有许多资讯,包括 Type。一个完整的NALU是标头(Header)加上位元流(bitstream)。多个NAL-units组成一个access unit。

VCL 与 Non-VCL NAL Units

标准的NAL-unit总共规范有12种,这12种型式可粗分成VCL NAL-unit及non-VCL NAL-unit。其中non-VCL NAL-unit又有两种:Parameter Sets与Supplemental Enhancement Information (SEI)。这些资讯非常重要,如有错误,会导致无法解码,过去没有NAL unit时,很容易造成package lost,现在Parameter Sets可以采用所谓的out-of-band的方式来传送。

parameter sets又可分成:

  • sequence parameter sets, which apply to a series of consecutive coded video pictures called a coded video sequence
  • picture parameter sets, which apply to the decoding of one or more individual pictures within a coded video sequence
 
Parameter Set use with reliable "out-of-band" parameter set exchange

access unit

多个NAL-units组成一个access unit。多个access unit再组成一个Coded video sequence。

 
Structure of a NAL Access Unit

参见

参考书目

外部链接