H.264 standard describes the various syntax elements that may occur in a bitstream. It specifies exactly how each syntax element should be processed and decoded in order to produce an output video sequence. It is important to know whether a particular decoder can handle a particular coded sequence. This is achieved by specifying a profile and level for every coded sequence. Profile places algorithmic constraints on the decoder, determining which decoding tools the decoder should be capable of handling. Level places data processing and storage constraints on the decoder. It determine how much data the decoder should be capable of storing, processing and outputting to a display.

An H.264 decoder can immediately determine whether it is capable of decoding a particular bitstream by extracting the Profile and Level parameters.

Profiles

The H.264/AVC standard specifies a number of Profiles, each specifying a subset of the coding tools available in the H.264 standard. A decoder conforming to the Main Profile of H.264 only needs to support the tools contained within the Main Profile. Each Profile is intended to be useful to a class of applications. For example, Baseline Profile may be useful for low-delay applications such as video conferencing, with relatively low computational requirements. The Main Profile may be suitable for basic television/entertainment applications such as Standard Definition TV services.

Below figure shows the tools supported by the Baseline, Constrained Baseline, Extended and Main Profiles.

  • Baseline Profile includes I and P slice types, allowing intra prediction and motion compensated prediction from a single reference. It also has the basic 4 × 4 integer transform and CAVLC entropy coding. It also supports three tools for improved transport efficiency (FMO, ASO and Redundant Slices).
  • Extended Profile is a superset of the Baseline Profile, adding further tools that may be useful for efficient network streaming of H.264 data.
  • Main Profile is a superset of the Constrained Baseline Profile and adds coding tools that may be suitable for broadcast and entertainment applications such as digital TV and DVD playback.
Profile in H.264
Profiles in H.264