Emby Emby Emby Learn
  • Emby Home
  • Video
  • Audio
  • Media Files
    • Subtitles and captions
    • Photos and images
    • Metadata and discovery
    • Libraries and media collections
    • Playback and streaming
    • Media hardware acceleration
    • Displays and AV connections
    • Live TV and recording
  1. Emby Learn
  2. Video
  3. Video compression
  4. Codec levels and tiers
Search Results for

    Show / Hide Table of Contents

    Video Codec Levels and Tiers

    Codec levels and tiers describe resource limits that a compatible decoder must satisfy.

    A codec level defines a resource envelope for a bitstream: how large its coded pictures can be, how quickly they must be processed, how much picture state can be retained, and how much coded data must be buffered.

    A profile selects the kinds of operations. Level limits describe the scale at which those operations are required. Some codecs also define tiers, particularly for bitrate and coded-buffer limits.

    Work through a 1080p AVC stream

    H.264 counts several level resources in 16 × 16 macroblocks. For a progressive picture presented as 1920 × 1080, round each coded grid dimension up to a macroblock boundary:

    • Width: 1920/16 = 120 macroblocks.
    • Height: ceil(1080/16) = 68 macroblocks.
    • Picture size: 120 × 68 = 8,160 macroblocks.

    The coded macroblock grid is 1920 × 1088. A signaled crop can remove the extra eight rows from presentation. The decoder's coded-picture work still follows the larger macroblock grid.

    For H.264 Level 4.1, selected limits are:

    Resource Level 4.1 limit
    Macroblocks in a coded frame, MaxFS 8,192
    Macroblocks processed per second, MaxMBPS 245,760
    Decoded-picture-buffer macroblocks, MaxDpbMbs 32,768

    These are selected standard constraints, not the whole conformance test.

    Picture size and throughput give different answers

    The example's 8,160 macroblocks fit the per-picture limit of 8,192.

    At 30 fps, processing demand is:

    8,160 × 30 = 244,800 macroblocks/s, below 245,760.

    At 60 fps, demand is:

    8,160 × 60 = 489,600 macroblocks/s, above that limit.

    The dimensions are identical, but the second stream requires a larger throughput envelope. A label assigning “1080p” to one universal level would hide this difference.

    Other level constraints still need checking, including bitrate, coded buffering, motion limits, and profile-dependent factors. Passing the two calculations above explains one part of the requirement rather than certifying an arbitrary file.

    The reference-buffer calculation

    At this coded picture size, the selected DPB limit gives:

    floor(32,768 ÷ 8,160) = 4 picture slots.

    References and pictures awaiting output have to satisfy the decoded-buffer rules. A stream requesting more state cannot be made compliant by reducing only its bitrate. Conversely, a small compressed file can still require the full decoded picture surfaces.

    The reference-buffer article explains those surfaces' lifetimes and sample-memory footprints. A standard's logical DPB constraint and an implementation's total allocated memory are related but distinct measurements.

    HEVC Main 10, Level 5.1, and Main tier

    HEVC defines Main and High tiers. Where High tier is defined, it permits higher bitrate and coded-buffer limits within the relevant level. It does not select a different camera resolution or automatically improve the picture.

    In the description “HEVC Main 10, Level 5.1, Main tier”:

    • Main 10 is the profile's sample/tool permission.
    • 5.1 is the level's resource envelope.
    • Main tier selects the corresponding bitrate/buffer limits.

    The word “Main” serves two different names in this family. The entire codec-specific description supplies the meaning; H.264 Level 4.1 and HEVC Level 4.1 do not share one interchangeable resource table.

    Change the demand, or correct an excessive declaration

    If a source really exceeds a target's throughput, producing a suitable representation can require a lower picture rate, smaller raster, different reference structure, or other encoding changes. Editing its level flag does not reduce the coded work.

    A file can also be declared at a higher level than its actual demand needs. Correcting such a declaration requires checking the complete applicable constraints, including peak and buffer behavior, rather than looking only at the visible resolution.

    For an Emby decoder target, these calculations turn a broad resolution claim into questions about the actual stream: its coded grid, picture rate, retained state, profile, tier, and delivery demand.

    See Also

    • Video Codec Profiles
    • Video Reference Frames
    • Video Resolution
    • Video Frame Rate

    References

    • ITU-T H.264: Advanced video coding
    • ITU-T H.265: High efficiency video coding
    • x265: Profiles, levels, and tiers
    • Android decoder video capabilities
    On this Page
    2026 © EMBY LLC. Please see our terms of use and privacy policy.
    Back to Top