Signalling required NAL units
A decoder is informed that a first NAL unit cannot be discarded by the decoder through at least one of: a profile indicated by a value of a profile identifier in a parameter set, the first type being indicative of a second NAL unit type, the second NAL unit type being a NAL unit in the NAL unit stream that is not required for the decoding of chroma or luma samples by the decoder, the first NAL unit being preceded by a Required Container NAL unit of a third NAL unit type, the first NAL unit being preceded by a Required Container NAL unit including a field indicating a number of following NAL units, the first NAL unit being encapsulated by a Required Container NAL unit, and the first NAL unit being preceded by a Required Container NAL unit Start and being followed by a Required Container NAL unit end.
1 . A method of video decoding performed by at least one processor of a decoder, the method comprising:
receiving (i) one or more encoded pictures and (ii) a NAL unit stream comprising at least one first Network Abstraction Layer Unit (NAL unit) of a first type;
interpreting the first NAL unit; and
decoding at least one of the one or more encoded pictures in accordance with the interpreting the first NAL unit corresponding to a supplemental enhancement information (SEI) message, wherein
the decoder is informed that the first NAL unit cannot be discarded by the decoder through at least one of:
a profile indicated by a value of a profile identifier in an active parameter set,
the first type being indicative of a second NAL unit type, the second NAL unit type being a NAL unit in the NAL unit stream that is not required for the decoding of chroma or luma samples by the decoder,
the first NAL unit being preceded by a Required Container NAL unit of a third NAL unit type,
the first NAL unit being preceded by a Required Container NAL unit including a field indicating a number of following NAL units,
the first NAL unit being encapsulated by a Required Container NAL unit, and
the first NAL unit being preceded by a Required Container NAL unit Start and being followed by a Required Container NAL unit end.
2 . The method according to claim 1 , wherein the profile indicates that the first NAL unit of the first type cannot be discarded by the decoder.
3 . The method according to claim 1 , wherein the profile indicates that the NAL unit stream comprises a first SEI message that cannot be discarded and a second SEI message that can be discarded.
4 . The method according to claim 1 , wherein the profile indicates that each SEI message in the NAL unit stream is (i) located at a predetermined interval, (ii) associated with a key frame, or (iii) associated with a trigger event cannot be discarded by the decoder.
5 . The method according to claim 1 , wherein the active parameter set is a sequence parameter set.
6 . The method according to claim 1 , wherein the Required Container NAL unit is empty.
7 . The method according to claim 1 , wherein the first NAL unit immediately follows the Required Container NAL unit, and wherein the NAL unit stream comprises a second NAL unit that immediately follows the first NAL unit, and wherein the second NAL unit can be discarded by the decoder.
8 . The method according to claim 1 , wherein the Required Container NAL unit comprises a NAL unit header that includes the field indicating the number of following NAL units,
wherein the NAL units immediately following corresponding to the number of following NAL units cannot be discarded by the decoder.
9 . The method according to claim 1 , wherein the NAL unit stream comprises a plurality of NAL units including the first NAL unit that are encapsulated by the Required Container NAL unit, wherein each NAL unit encapsulated by the Required Container NAL unit cannot be discarded by the decoder.
10 . The method according to claim 1 , wherein the NAL unit stream comprises a plurality of NAL units including the first NAL unit that are located between the Required Container NAL unit Start and the Required Container NAL unit End, wherein each NAL unit located between the Required Container NAL unit Start and the Required Container NAL unit End cannot be discarded by the decoder.
11 . A method of video encoding performed by at least one processor of an encoder, the method comprising:
generating a NAL unit stream comprising at least one first Network Abstraction Layer Unit (NAL unit) of a first type; and
encoding one or more encoded pictures in accordance with the first NAL unit corresponding to a supplemental enhancement information (SEI) message, wherein
the NAL unit stream indicates that the first NAL unit cannot be discarded through at least one of:
a profile indicated by a value of a profile identifier in an active parameter set,
the first type being indicative of a second NAL unit type, the second NAL unit type being a NAL unit in the NAL unit stream that is not required for processing chroma or luma samples,
the first NAL unit being preceded by a Required Container NAL unit of a third NAL unit type,
the first NAL unit being preceded by a Required Container NAL unit including a field indicating a number of following NAL units,
the first NAL unit being encapsulated by a Required Container NAL unit, and
the first NAL unit being preceded by a Required Container NAL unit Start and being followed by a Required Container NAL unit end.
12 . The method according to claim 11 , wherein the profile indicates that the first NAL unit of the first type cannot be discarded.
13 . The method according to claim 11 , wherein the profile indicates that the NAL unit stream comprises a first SEI message that cannot be discarded and a second SEI message that can be discarded.
14 . The method according to claim 11 , wherein the profile indicates that each SEI message in the NAL unit stream (i) located at a predetermined interval, (ii) associated with a key frame, or (iii) associated with a trigger event cannot be discarded.
15 . The method according to claim 11 , wherein the active parameter set is a sequence parameter set.
16 . The method according to claim 11 , wherein the Required Container NAL unit is empty.
17 . The method according to claim 11 , wherein the first NAL unit immediately follows the Required Container NAL unit, and wherein the NAL unit stream comprises a second NAL unit that immediately follows the first NAL unit, and wherein the second NAL unit can be discarded.
18 . The method according to claim 11 , wherein the Required Container NAL unit comprises a NAL unit header that includes the field indicating the number of following NAL units,
wherein the NAL units immediately following corresponding to the number of following NAL units cannot be discarded.
19 . The method according to claim 11 , wherein the NAL unit stream comprises a plurality of NAL units including the first NAL unit that are encapsulated by the Required Container NAL unit, wherein each NAL unit encapsulated by the Required Container NAL unit cannot be discarded.
20 . A method performed by at least one processor, the method comprising:
receiving a NAL unit stream comprising at least one first Network Abstraction Layer Unit (NAL unit) of a first type corresponding to a supplemental enhancement information (SEI) message, wherein
a decoder is informed that the first NAL unit cannot be discarded by the decoder through at least one of:
a profile indicated by a value of a profile identifier in an active parameter set,
the first type being indicative of a second NAL unit type, the second NAL unit type being a NAL unit in the NAL unit stream that is not required for the decoding of chroma or luma samples by the decoder,
the first NAL unit being preceded by a Required Container NAL unit of a third NAL unit type,
the first NAL unit being preceded by a Required Container NAL unit including a field indicating a number of following NAL units,
the first NAL unit being encapsulated by a Required Container NAL unit, and
the first NAL unit being preceded by a Required Container NAL unit Start and being followed by a Required Container NAL unit end.