You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A temporal unit consists of a series of OBUs starting from a temporal delimiter, optional sequence headers, optional metadata OBUs, a sequence of one or more frame headers, each followed by zero or more tile group OBUs as well as optional padding OBUs.
The first temporal unit of a coded video sequence must contain one or more sequence header OBUs before the first frame
header OBU.
If a temporal unit contains one or more sequence header OBUs, the first appearance of the sequence header OBU must
be before the first frame header OBU.
One or more metadata and padding OBUs may appear in any order within an OBU sequence (unless constrained by
semantics provided elsewhere in this specification).
This seems to imply that metadata and/or padding OBUs may appear before the first sequence header. Therefore, OperatingPointIdc might not have been set at the time these OBUs are read.
In particular, 5.3.1. General OBU syntax has this conditional:
which may depend on an undefined value of OperatingPointIdc for metadata and padding OBUs. Some possible solutions:
Consider OperatingPointIdc to be initialized to 0 before any sequence header is read.
Require that a sequence header appear before any metadata or padding OBUs.
Specify that the && operator short-circuits, move the OperatingPointIdc != 0 clause to the end, and require that metadata and padding OBUs have obu_extension_flag == 0.
Perhaps only require obu_extension_flag == 0 if they appear before the first sequence header, if we desire that it be possible to assign layers to a metadata OBU.
The text was updated successfully, but these errors were encountered:
From Version 1.0.0 with Errata 1:
7.5. Ordering of OBUs says:
This seems to imply that metadata and/or padding OBUs may appear before the first sequence header. Therefore,
OperatingPointIdc
might not have been set at the time these OBUs are read.In particular, 5.3.1. General OBU syntax has this conditional:
which may depend on an undefined value of
OperatingPointIdc
for metadata and padding OBUs. Some possible solutions:OperatingPointIdc
to be initialized to 0 before any sequence header is read.&&
operator short-circuits, move theOperatingPointIdc != 0
clause to the end, and require that metadata and padding OBUs haveobu_extension_flag == 0
.obu_extension_flag == 0
if they appear before the first sequence header, if we desire that it be possible to assign layers to a metadata OBU.The text was updated successfully, but these errors were encountered: