Skip to content

Editorial: Clarify semantics of operating_point_idc[i] #359

@podborski

Description

@podborski

This is an editorial thing.

The current semantics of the operating_point_idc[i] bitmask in the specification is somewhat unclear, especially regarding the spatial and temporal layer mapping. I find the language a bit confusing myself but I also experienced other people struggling with it.

We could try to improve it. For example, we could rephrase the text and add a small figure that makes it more clear.

We could replace this:

operating_point_idc[ i ] contains a bitmask that indicates which spatial and temporal layers should be decoded for operating point i. Bit k is equal to 1 if temporal layer k should be decoded (for k between 0 and 7). Bit j+8 is equal to 1 if spatial layer j should be decoded (for j between 0 and 3).

with this:

operating_point_idc[i] is a bitmask that specifies the spatial and temporal layers to be decoded for operating point i. Bits 0 to 7 represent the temporal layers, while bits 8 to 11 represent the spatial layers. If bit k (where k is between 0 and 7) is set to 1, temporal layer k is decoded. Similarly, if bit j+8 (where j is between 0 and 3) is set to 1, spatial layer j is decoded.

The following figure illustrates the bitmask structure:

| spatial layers  |       temporal layers      |
 3   2   1   0     7   6   5   4   3   2   1   0  <-- Layer value (j, k)
11  10   9   8     7   6   5   4   3   2   1   0  <-- Bit index

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions