Decoded picture buffer processing for random access point pictures in video sequences
Systems, methods, and devices for processing video data are disclosed. Some examples receive a slice of a current picture to be decoded for a sequence of video data. These examples may also receive, in a slice header of the slice, at least one entropy coded syntax element and at least one non-entropy coded syntax element, wherein the non-entropy coded syntax element is before the entropy coded syntax element in the slice header and indicates whether pictures prior to the current picture in decoding order are to be emptied from a decode picture buffer without being output. They may decode the slice based on the non-entropy coded syntax element.
1. A method of decoding video data, the method comprising:
receiving, in a network abstraction layer (NAL) unit, a slice of a current picture to be decoded for a sequence of video data, wherein the current picture comprises a broken link access (BLA) picture and the NAL unit has a NAL unit type that is one of a plurality of NAL unit types including:
a coded slice of a BLA picture with associated leading pictures in a bitstream, and
a coded slice of a BLA picture with no associated leading pictures in the bitstream;
receiving, in a slice header of the slice of the current picture, one or more entropy coded syntax elements and at least one non-entropy coded syntax element,
wherein the at least one non-entropy coded syntax element comprises a no_output_of_prior_pics_flag syntax element that is included in the slice header immediately after a syntax element that indicates whether the slice is a first slice, in decoding order, of the current picture, and
wherein the no_output_of_prior_pics_flag syntax element is before all of the one or more entropy encoded syntax elements in the slice header and indicates whether pictures prior to the current picture in decoding order are to be emptied from the decoded picture buffer without being output; and
decoding the slice based on the at least one non-entropy coded syntax element, wherein decoding includes emptying one or more pictures prior to the current picture in decoding order from the decoded picture buffer when the value of the no_output_of_prior_pics_flag syntax element indicates that pictures prior to the current picture in decoding order are to be emptied from the decoded picture buffer without being output.
2. The method of claim 1 , wherein the one or more entropy coded syntax elements comprises a plurality of entropy coded syntax elements.
3. The method of claim 1 , further comprising decoding the non-entropy coded syntax element in a decoder.
4. The method of claim 3 , further comprising decoding the non-entropy coded syntax element in a Media Aware Network Element (MANE).
5. The method of claim 1 , further comprising:
determining that the current picture is the BLA picture; and
marking at least one reference picture in the decoded picture buffer as unused for reference prior to decoding the BLA picture.
6. A device for processing video data, the device comprising:
a memory comprising a decoded picture buffer; and
one or more processors configured to:
receive, in a network abstraction layer (NAL) unit, a slice of a current picture to be decoded for a sequence of video data, wherein the current picture comprises a broken link access (BLA) picture and the NAL unit has a NAL unit type that is one of a plurality of NAL unit types including:
a coded slice of a BLA picture with associated leading pictures in a bitstream, and
a coded slice of a BLA picture with no associated leading pictures in the bitstream;
receive, in a slice header of the slice of the current picture, one or more entropy coded syntax elements and at least one non-entropy coded syntax element,
wherein the at least one non-entropy coded syntax element comprises a no_output_of_prior_pics_flag syntax element that is included in the slice header immediately after a syntax element that indicates whether the slice is a first slice, in decoding order, of the current picture, and
wherein the no_output_of_prior_pics_flag syntax element is before all of the one or more entropy encoded syntax elements in the slice header and indicates whether pictures prior to the current picture in decoding order are to be emptied from the decoded picture buffer without being output; and
decode the slice based on the at least one non-entropy coded syntax element, wherein the one or more processors configured to empty one or more pictures prior to the current picture in decoding order from the decoded picture buffer when the value of the no_output_of_prior_pics_flag syntax element indicates that pictures prior to the current picture in decoding order are to be emptied from the decoded picture buffer without being output.
7. The device of claim 6 , wherein the one or more entropy coded syntax elements comprises a plurality of entropy coded syntax elements.
8. The device of claim 6 , further comprising a decoder configured to decode the non-entropy coded syntax element.
9. The device of claim 8 , wherein the device comprises a Media Aware Network Element (MANE) configured to decode the non-entropy coded syntax element.
10. The device of claim 6 , wherein the one or more processors are further configured to:
determine that the current picture is the BLA picture; and
mark at least one reference picture in a decoded picture buffer as unused for reference prior to decoding the BLA picture.
11. A device for decoding video data, the device comprising:
means for receiving, in a network abstraction layer (NAL) unit, a slice of a current picture to be decoded for a sequence of video data, wherein the current picture comprises a broken link access (BLA) picture and the NAL unit has a NAL unit type that is one of a plurality of NAL unit types including:
a coded slice of a BLA picture with associated leading pictures in a bitstream, and
a coded slice of a BLA picture with no associated leading pictures in the bitstream;
means for receiving, in a slice header of the slice of the current picture, one or more entropy coded syntax elements and at least one non-entropy coded syntax element,
wherein the at least one non-entropy coded syntax element comprises a no_output_of_prior_pics_flag syntax element that is included in the slice header immediately after a syntax element that indicates whether the slice is a first slice, in decoding order, of the current picture, and
wherein the no_output_of_prior_pics_flag syntax element is before all of the one or more entropy encoded syntax elements in the slice header and indicates whether pictures prior to the current picture in decoding order are to be emptied from the decoded picture buffer without being output; and
means for decoding the slice based on the at least one non-entropy coded syntax element, wherein the means for decoding includes means for emptying one or more pictures prior to the current picture in decoding order from the decoded picture buffer when the value of the no_output_of_prior_pics_flag syntax element indicates that pictures prior to the current picture in decoding order are to be emptied from a decoded picture buffer without being output.
12. The device of claim 11 , wherein the one or more entropy coded syntax elements comprises a plurality of entropy coded syntax elements.
13. The device of claim 11 , further comprising:
means for determining that the current picture is the BLA picture; and
means for marking at least one reference picture in a picture storage buffer as unused for reference prior to decoding the BLA picture.
14. A non-transitory and tangible computer-readable storage medium having stored thereon instructions that, when executed, cause one or more processors of a device to:
receive, in a network abstraction layer (NAL) unit, a slice of a current picture to be decoded for a sequence of video data, wherein the current picture comprises a broken link access (BLA) picture and the NAL unit has a NAL unit type that is one of a plurality of NAL unit types including:
a coded slice of a BLA picture with associated leading pictures in a bitstream, and
a coded slice of a BLA picture with no associated leading pictures in the bitstream;
receive, in a slice header of the slice of the current picture, one or more entropy coded syntax elements and at least one non-entropy coded syntax element,
wherein the at least one non-entropy coded syntax element comprises a no_output_of_prior_pics_flag syntax element that is included in the slice header immediately after a syntax element that indicates whether the slice is a first slice, in decoding order, of the current picture, and
wherein the no_output_of_prior_pics_flag syntax element is before all of the one or more entropy encoded syntax elements in the slice header and indicates whether pictures prior to the current picture in decoding order are to be emptied from the decoded picture buffer without being output; and
decode the slice based on the at least one non-entropy coded syntax element, wherein the medium further includes instructions that, when executed, cause one or more processors of the device to empty one or more pictures prior to the current picture in decoding order from the decoded picture buffer when the value of the no_output_of_prior_pics_flag syntax element indicates that pictures prior to the current picture in decoding order are to be emptied from a decoded picture buffer without being output.
15. The computer-readable storage medium of claim 14 , wherein the one or more entropy coded syntax elements comprises a plurality of entropy coded syntax elements.
16. The computer-readable storage medium of claim 14 , further comprising instructions that cause the one or more processors to determine that a current picture is the BLA picture; and mark a reference picture in a picture storage buffer as unused for reference prior to decoding the BLA picture.