CONFIG_F436_OBUORDER: Question about legal location for content interpretation
Question 1
The document F436 says:
• If CI OBUs are present in a temporal unit, these shall only be present in the first picture unit of each embedded layer within this temporal unit.
• If a CI OBU is present in any temporal unit, this CI OBU shall also be present in the first temporal unit of the sequence and shall contain the same contents in all its repetitions for a given embedded layer. (Note: this guarantees that the content interpretation parameters for each embedded layer do not vary across the entire sequence).
My question is about a temporal unit which has:
- OBU_CONTENT_INTERPETATION
- OBU_REGULAR_TILE_GROUP
Is this legal?
From the document, it looks like it is legal.
However, the code triggers an error:
// * 0. CLK/OLK signalled without CI
// * 1. CI obu signalled without CLK/OLK
// * 2. CI obu signalled with CLK/OLK
if (pbi->ci_and_key_per_layer[obu_mlayer_id] == 1) {
avm_internal_error(&cm->error, AVM_CODEC_CORRUPT_FRAME,
"CI OBU is signalled without CLK/OLK");
This error is because it has seen a content interpretation OBU, without also seeing an OBU_CLOSED_LOOP_KEY or OBU_OPEN_LOOP_KEY.
Question 2
The spec says:
A bitstream conforming to this specification consists of one or more coded video sequences.
Does "sequence" in the phrase "first temporal unit of the sequence" above refer to the bitstream, or a coded video sequence?