How to Broadcast Multimedia Contents?
H.264 encoder is composed of two layers, video coding layer (VCL) and network abstraction layer (NAL). VCL translates the video information into bits streams. Since the underlying transportation layers are diversified, NAL maps VCL bitstreams into byte-oriented transportation-layer-friendly and HDLC-like NAL units prior to delivery.
During the mapping of VCL bitstreams to NAL units, at least three operations are done, which are byte alignment, emulation prevention, framing with an additional one-byte NAL unit header. The first byte after a NAL unit start code prefix is the NAL unit header. A NAL unit header consists of three fields.
- forbidden_bit (1 bit): may be used to indicate a NAL unit is corrupted or not.
- nal_storage_idc (2 bit): signals relative importance, and if the picture is stored in the reference picture buffer.
- nal_unit_type (5 bit): signals 1 of 10 different NAL unit types. H.264 defines two additional ranges of NAL unit type values as “Reserved” for future definition of compatible extensions and “Unspecified” for application specific decoders