Graphics Reference
In-Depth Information
are reordered to be in decoding order before decoding. The decoding order for the
pictures in Fig. 2.3 , and other figures in this chapter, is indicated by the subscript
numbers inside the pictures.
Output order is the order in which pictures are output from the DPB, which is
the order in which the pictures are generally intended to be displayed. Typically, all
pictures are output, but there is an optional picture output flag in the slice header
that, when set equal to 0, will suppress the output of a particular picture. The HEVC
standard uses the term “output” rather than “display” as a way to establish a well-
defined boundary for the scope of the standard—what happens after the point of
“output” specified in the standard, such as exactly how (and whether) the pictures
are displayed and whether any post-processing steps are applied before the display,
is considered to be outside the scope of the standard.
Note that pictures that are output are not necessarily displayed. For example,
during transcoding the output pictures may be re-encoded without being displayed.
The output order of each picture is explicitly signaled in the bitstream, using an
integer picture order count (POC) value. The output order of the pictures in each
coded video sequence (CVS, see Sect. 2.2.3 ) is determined separately, such that all
output pictures for a particular CVS are output before any pictures of the next CVS
that appears in the bitstream in decoding order. Output pictures within each CVS
are always output in increasing POC value order. The output order in Fig. 2.3 ,and
other figures in this chapter, is shown by the order of the pictures themselves where
pictures are output from left to right. Note that the decoding order and the output
order is the same in Fig. 2.3 b while this is not the case in Fig. 2.3 a. The POC values
for pictures in different CVSs are not relevant to each other—only the relative POC
relationships within each CVS matter.
HEVC prohibits the decoding process of pictures of any lower temporal sub-
layer from having any dependencies on data sent for a higher temporal sub-layer. As
showninFig. 2.3 , no pictures in the lower sub-layer reference any pictures in the
higher sub-layer. Since there are no dependencies from higher sub-layers to lower
sub-layers, it is possible to remove higher sub-layers from a bitstream to create a
new bitstream with fewer pictures in it. The process of removing sub-layers is called
sub-bitstream extraction, and the resulting bitstream is called a sub-bitstream of the
original bitstream. Sub-bitstream extraction is done by discarding all NAL units
which have a temporal ID higher than a target temporal ID value called HighestTid.
HEVC encoders are required to ensure that each possible such sub-bitstream is itself
a valid HEVC bitstream.
Discarding higher sub-layer pictures can either be done in the path between the
encoder and decoder, or the decoder itself may choose to discard higher sub-layers
before decoding. One use-case of discarding sub-layers is rate adaptation, where
a node in a network between the encoder and decoder removes higher sub-layers
when network congestion between itself and the decoder is detected.
Search WWH ::




Custom Search