Graphics Reference
In-Depth Information
a
b
1 2 3 4
9 10 11 12
17 18 19 20
25 26 27 28
33 34 35 36
41 42 43 44
5 6 7 8
13 14 15 16
21 22 23 24
29 30 31 32
37 38 39 40
45 46 47 48
2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
17 18 19 20
21 22 23 24
1
25 26 27 28
29 30 31 32
33 34 35 36
37 38 39 40
41 42 42 44
45 46 47 48
substreams
substreams
Fig. 8.4 These two examples illustrate which CTUs are terminated when slice segments
are divided into substreams using tiles and wavefront parallel processing. Values of
( end_of_slice_segment_flag , end_of_sub_stream_one_bit ) are given for each
configuration. ( a ) Tiles : CTU 12, 24, and 36 have (0, 1); CTU 48 (1, not signaled); and the rest
of the CTUs have (0,0). ( b ) Wavefront parallel processing : CTU 8, 16, 24, 32 and 40 have (0, 1);
CTU 48 (1, not signaled); and the rest of the CTUs have (0,0)
start code
3 entry points
BA
CTU 1-12 BA CTU 13-24 BA CTU 25-36 BA CTU 37-48
BA
substream
substream
substream
substream
slice_segment_header( )
slice_segment_data( )
rbsp_slice_segment_trailing_bits( )
Fig. 8.5 Ordering of the bitstream for the tiles example in Fig. 8.4 a. CABAC needs to be
terminated before byte alignment ( BA ) as shown by the black boxes . Entry points for substreams
are sent in slice_segment_header()
last CTU of the corresponding substream. 7 An example of this is illustrated in
Fig. 8.4 .Both end_of_slice_segment_flag and end_of_sub_stream
_one_bit are coded using the terminating mode of the arithmetic coding engine.
This is required since at the end of a slice segment or a substream, the arithmetic
coding engine must be flushed and the resulting CABAC codeword must be byte
aligned before, at least in the former case, inserting the startcode for the next slice or
entry point for the next slice segment. Figure 8.5 shows an example of the locations
of CABAC termination within a bitstream.
8.4.1
Coding Block Structure
The coding block structure is determined by the coding quadtree which is signaled
by a flag called split_cu_flag at each of its nodes to indicate whether a given
coding block should be further subdivided into four smaller CBs. There is a strong
spatial correlation between the chosen CQT depth of neighboring CBs, i.e., the
7 Note that the value of end_of_sub_stream_one_bit is always 1 and it is only sent for the
last CTU of a substream.
Search WWH ::




Custom Search