網路抽象層(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

參見 编辑

參考書目 编辑

外部連結 编辑