Network Abstraction Layer

NAL has achieved a significant improvement in application flexibility relative to prior video coding standards.

An increasing number of services and growing popularity of high definition TV are creating greater needs for higher coding efficiency.

Throughout this evolution, continued efforts have been made to maximize coding efficiency while dealing with the diversification of network types and their characteristic formatting and loss/error robustness requirements.

The NAL is designed in order to provide "network friendliness" to enable simple and effective customization of the use of VCL for a broad variety of systems.

The coded video data is organized into NAL units, each of which is effectively a packet that contains an integer number of bytes.

The VCL NAL units contain the data that represents the values of the samples in the video pictures, and the non-VCL NAL units contain any associated additional information such as parameter sets (important header data that can apply to a large number of VCL NAL units) and supplemental enhancement information (timing information and other supplemental data that may enhance usability of the decoded video signal but are not necessary for decoding the values of the samples in the video pictures).

A parameter set is supposed to contain information that is expected to rarely change and offers the decoding of a large number of VCL NAL units.

Sequence and picture parameter sets can be sent well ahead of the VCL NAL units that they apply to, and can be repeated to provide robustness against data loss.

In some applications, parameter sets may be sent within the channel that carries the VCL NAL units (termed "in-band" transmission).

In other applications, it can be advantageous to convey the parameter sets "out-of-band" using a more reliable transport mechanism than the video channel itself.

Parameter Set use with reliable "out-of-band" parameter set exchange
Structure of a NAL Access Unit