Temporal identifier constraints for SEI messages
AssigneeHuawei Technologies Co., Ltd.
InventorYe-Kui Wang
Life of this patent
Estimating the term…
Abstract
A video coding mechanism is disclosed. The mechanism includes encoding a coded picture in one or more video coding layer (VCL) network abstraction layer (NAL) units in a bitstream. A non-VCL NAL unit is encoded into the bitstream such that a temporal identifier (TemporalId) for the non-VCL NAL unit is constrained to be equal to a TemporalId of an access unit (AU) containing the non-VCL NAL unit when a NAL unit type (nal_unit_type) of the non-VCL NAL indicates a supplemental enhancement information (SEI) message. A set of bitstream conformance tests is performed on the bitstream based on the SEI message. The bitstream is stored for communication toward a decoder.
Claims20
A method implemented by a decoder, the method comprising:
- receiving a bitstream comprising a coded picture in one or more video coding layer (VCL) network abstraction layer (NAL) units and a non-VCL NAL unit, wherein a temporal identifier (TemporalId) for the non-VCL NAL unit is constrained to be equal to a TemporalId of an access unit (AU) containing the non-VCL NAL unit when a NAL unit type (nal_unit_type) of the non-VCL NAL is equal to a prefix supplemental enhancement information (SEI) NAL unit type (PREFIX_SEI_NUT) or a suffix SEI NAL unit type (SUFFIX_SEI_NUT), wherein the non-VCL NAL unit includes a scalable nesting SEI message with a payload type set to one hundred thirty-three, wherein the scalable nesting SEI message contains one or more scalable-nested SEI messages, wherein the scalable nesting SEI message includes an output layer set (OLS) flag equal to one when the scalable-nested SEI messages apply to an OLS and equal to zero when the scalable-nested SEI messages apply to a layer, and wherein the scalable nesting SEI message includes a scalable nesting number of SEIs minus one (num_seis_minus1) plus one that specifies a number of the scalable-nested SEI messages with a value constrained to a range of 0 to 63, inclusive;
- deriving the TemporalId for the non-VCL NAL unit based on a NAL unit header temporal identifier plus one (nuh_temporal_id_plus1) syntax element in the non-VCL NAL unit;
- and
- decoding the coded picture from the one or more VCL NAL units to produce a decoded picture.
A method implemented by an encoder, the method comprising:
- encoding a coded picture in one or more video coding layer (VCL) network abstraction layer (NAL) units in a bitstream;
- encoding into the bitstream a non-VCL NAL unit such that a NAL unit header temporal identifier plus one (nuh_temporal_id_plus1) for the non-VCL NAL unit is constrained to be equal to a nuh_temporal_id_plus1 of an access unit (AU) containing the non-VCL NAL unit when a NAL unit type (nal_unit_type) of the non-VCL NAL is a supplemental enhancement information (SEI) message, and wherein the non-VCL NAL unit includes a scalable nesting SEI message with a payload type set to one hundred thirty-three, wherein the scalable nesting SEI message contains one or more scalable-nested SEI messages, wherein the scalable nesting SEI message includes an output layer set (OLS) flag equal to one when the scalable-nested SEI messages apply to an OLS and equal to zero when the scalable-nested SEI messages apply to a layer, and wherein the scalable nesting SEI message includes a scalable nesting number of SEIs minus one (num_seis_minus1) plus one that specifies a number of the scalable-nested SEI messages with a value constrained to a range of 0 to 63, inclusive;
- performing a set of bitstream conformance tests on the bitstream based on the SEI message.
A video decoding device comprising:
- a receiver configured to receive a bitstream comprising a coded picture in one or more video coding layer (VCL) network abstraction layer (NAL) units and a non-VCL NAL unit, wherein a temporal identifier (TemporalId) for the non-VCL NAL unit is constrained to be equal to a TemporalId of an access unit (AU) containing the non-VCL NAL unit when a NAL unit type (nal_unit_type) of the non-VCL NAL is equal to a prefix supplemental enhancement information (SEI) NAL unit type (PREFIX_SEI_NUT) or a suffix SEI NAL unit type (SUFFIX_SEI_NUT), and wherein the non-VCL NAL unit includes a scalable nesting SEI message with a payload type set to one hundred thirty-three, wherein the scalable nesting SEI message contains one or more scalable-nested SEI messages, wherein the scalable nesting SEI message includes an output layer set (OLS) flag equal to one when the scalable-nested SEI messages apply to an OLS and equal to zero when the scalable-nested SEI messages apply to a layer, and wherein the scalable nesting SEI message includes a scalable nesting number of SEIs minus one (num_seis_minus1) plus one that specifies a number of the scalable-nested SEI messages with a value constrained to a range of 0 to 63, inclusive;
- and
- one or more processors coupled to the receiver and configured to:
- derive the TemporalId for the non-VCL NAL unit based on a NAL unit header temporal identifier plus one (nuh_temporal_id_plus1) syntax element in the non-VCL NAL unit;
- and
- decode the coded picture from the one or more VCL NAL units to produce a decoded picture.
Dependencies are inferred from the claim text.