Opened 5 years ago
Closed 5 years ago
#964 closed defect (fixed)
Issues in semantics of picture timing SEI message
Reported by: | vdrugeon | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | |
Component: | spec | Version: | |
Keywords: | Cc: | ksuehring, bbross, XiangLi, fbossen, jvet@… |
Description
Could HRD experts please have a look at the following potential issues?
I believe that an inference rule for cpb_removal_delay_minus1 for temporal sublayers is needed, as only the value of cpb_removal_delay_minus1 for the highest temporal layer has to be signalled within the PT SEI message. For all other temporal sublayers, signalling is optional. I would therefore suggest the following inference rule: "When cpb_removal_delay_minus1[ i ] is not present for i between TemporalId and bp_max_sublayers_minus1-1, inclusive, the value of cpb_removal_delay_minus1[ i ] is inferred to be equal to cpb_removal_delay_minus1[ bp_max_sublayers_minus1 ]".
The equation for the calculation of picDpbOutputDelta seems strange: "Otherwise (pt_sublayer_delays_present_flag[ i ] is equal to 1), picDpbOutputDelta[ i ] is set equal to CpbRemovalDelayVal[ i ] − ( cpb_removal_delay_minus1[ sps_max_sublayers_minus1 ] + 1 )." If CpbRemovalDelayVal[ i ] and cpb_removal_delay_minus1[ sps_max_sublayers_minus1 ] differ by CpbRemovalDelayMsb[ i ], then picDpbOutputDelta will be too big. Is that intended? In addition, bp_max_sublayers_minus1 is used rather than sps_max_sublayers_minus1 in the rest of the syntax and semantics of the picture timing SEI message. Should this equation be "picDpbOutputDelta[ i ] is set equal to CpbRemovalDelayVal[ i ] − CpbRemovalDelayVal[ bp_max_sublayers_minus1 ]" instead?
The equation for cpbRemovalDelayValTmp[ i ] also uses sps_max_sublayers_minus1 instead of bp_max_sublayers_minus1.
Change history (3)
comment:1 Changed 5 years ago by yk
comment:2 Changed 5 years ago by ysanchez
In my opinion, we should infer non-signalled CPB removal times of an AU for a Htid to be equal to the CPB removal times of the AU for Htid +1 , i.e. for the next sublayer, similar to what Ye-Kui suggested. Since the CpbRemovalDelayVal is not always derived using cpb_removal_delay_minus1[ i ], I think that we should not infer the value of cpb_removal_delay_minus1[ i ] when not present but modify the derivation of CpbRemovalDelayVal so that:
- If pt_sublayer_delays_present_flag[ i ] is equal to 0, CpbRemovalDelayVal[ i ] is set equal to CpbRemovalDelayVal[ i + 1 ].
This should achieve the same as an inference value for cpb_removal_delay_minus1[ i ] but seems easier to me.
In addition to the fix that Virginie suggested for picDpbOutputDelta[ i ], we should remove the following sentence "If pt_sublayer_delays_present_flag[ i ] is equal to 0, picDpbOutputDelta[ i ] is set equal to 0." as the inference discussed above would take care of this issue.
comment:3 Changed 5 years ago by yk
- Resolution set to fixed
- Status changed from new to closed
Will fix as Yago suggested above in JVET-R2001-v8. Closing the ticket now. If needed, it can be reopened or a new ticket is issued.
On the inference, it seems that it is possible to signal cpb_removal_delay_minus1[ i ] for some values but not other values of i in the range of TemporalId to bp_max_sublayers_minus1 − 1, inclusive. If that is confirmed, would it better to specify the inference as follows instead?
When cpb_removal_delay_minus1[ i ] is not present for i in the range of TemporalId to bp_max_sublayers_minus1 − 1, inclusive, the value of cpb_removal_delay_minus1[ i ] is inferred to be equal to cpb_removal_delay_minus1[ i + 1 ].
Regarding the calculation of picDpbOutputDelta and cpbRemovalDelayValTmp, I am with you that bp_max_sublayers_minus1 instead of sps_max_sublayers_minus1 should be used.
Not yet making changes to the text (to do that after the discussion is concluded).