HEVC Test Model (HM)  HM-16.18
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
ContextTables.h
Go to the documentation of this file.
1 /* The copyright in this software is being made available under the BSD
2  * License, included below. This software may be subject to other third party
3  * and contributor rights, including patent rights, and no such rights are
4  * granted under this license.
5  *
6  * Copyright (c) 2010-2017, ITU/ISO/IEC
7  * All rights reserved.
8  *
9  * Redistribution and use in source and binary forms, with or without
10  * modification, are permitted provided that the following conditions are met:
11  *
12  * * Redistributions of source code must retain the above copyright notice,
13  * this list of conditions and the following disclaimer.
14  * * Redistributions in binary form must reproduce the above copyright notice,
15  * this list of conditions and the following disclaimer in the documentation
16  * and/or other materials provided with the distribution.
17  * * Neither the name of the ITU/ISO/IEC nor the names of its contributors may
18  * be used to endorse or promote products derived from this software without
19  * specific prior written permission.
20  *
21  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS
25  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
26  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
27  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
30  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
31  * THE POSSIBILITY OF SUCH DAMAGE.
32  */
33 
39 #ifndef __CONTEXTTABLES__
40 #define __CONTEXTTABLES__
41 
44 
45 // ====================================================================================================================
46 // Constants
47 // ====================================================================================================================
48 
49 #define MAX_NUM_CTX_MOD 512
50 
51 #define NUM_SPLIT_FLAG_CTX 3
52 #define NUM_SKIP_FLAG_CTX 3
53 
54 #define NUM_MERGE_FLAG_EXT_CTX 1
55 #define NUM_MERGE_IDX_EXT_CTX 1
56 
57 #define NUM_PART_SIZE_CTX 4
58 #define NUM_PRED_MODE_CTX 1
59 
60 #define NUM_INTRA_PREDICT_CTX 1
61 
62 #define NUM_CHROMA_PRED_CTX 2
63 #define NUM_INTER_DIR_CTX 5
64 #define NUM_MV_RES_CTX 2
65 #define NUM_CHROMA_QP_ADJ_FLAG_CTX 1
66 #define NUM_CHROMA_QP_ADJ_IDC_CTX 1
67 
68 #define NUM_REF_NO_CTX 2
69 #define NUM_TRANS_SUBDIV_FLAG_CTX 3
70 #define NUM_QT_ROOT_CBF_CTX 1
71 #define NUM_DELTA_QP_CTX 3
72 
73 #define NUM_SIG_CG_FLAG_CTX 2
74 #define NUM_EXPLICIT_RDPCM_FLAG_CTX 1
75 #define NUM_EXPLICIT_RDPCM_DIR_CTX 1
76 
77 //--------------------------------------------------------------------------------------------------
78 
79 // context size definitions for significance map
80 
81 #define NUM_SIG_FLAG_CTX_LUMA 28
82 #define NUM_SIG_FLAG_CTX_CHROMA 16
83 
84 // |----Luma-----| |---Chroma----|
85 static const UInt significanceMapContextSetStart [MAX_NUM_CHANNEL_TYPE][CONTEXT_NUMBER_OF_TYPES] = { {0, 9, 21, 27}, {0, 9, 12, 15} };
86 static const UInt significanceMapContextSetSize [MAX_NUM_CHANNEL_TYPE][CONTEXT_NUMBER_OF_TYPES] = { {9, 12, 6, 1}, {9, 3, 3, 1} };
89 
90 //------------------
91 
92 #define NEIGHBOURHOOD_00_CONTEXT_1_THRESHOLD_4x4 3
93 #define NEIGHBOURHOOD_00_CONTEXT_2_THRESHOLD_4x4 1
94 
95 //------------------
96 
97 #define FIRST_SIG_FLAG_CTX_LUMA 0
98 #define FIRST_SIG_FLAG_CTX_CHROMA (FIRST_SIG_FLAG_CTX_LUMA + NUM_SIG_FLAG_CTX_LUMA)
99 
100 #define NUM_SIG_FLAG_CTX (NUM_SIG_FLAG_CTX_LUMA + NUM_SIG_FLAG_CTX_CHROMA)
101 
102 //--------------------------------------------------------------------------------------------------
103 
104 // context size definitions for last significant coefficient position
105 
106 #define NUM_CTX_LAST_FLAG_SETS 2
107 
108 #define NUM_CTX_LAST_FLAG_XY 15
109 
110 //--------------------------------------------------------------------------------------------------
111 
112 // context size definitions for greater-than-one and greater-than-two maps
113 
114 #define NUM_ONE_FLAG_CTX_PER_SET 4
115 #define NUM_ABS_FLAG_CTX_PER_SET 1
116 
117 //------------------
118 
119 #define NUM_CTX_SETS_LUMA 4
120 #define NUM_CTX_SETS_CHROMA 2
121 
122 #define FIRST_CTX_SET_LUMA 0
123 
124 //------------------
125 
126 #define NUM_ONE_FLAG_CTX_LUMA (NUM_ONE_FLAG_CTX_PER_SET * NUM_CTX_SETS_LUMA)
127 #define NUM_ONE_FLAG_CTX_CHROMA (NUM_ONE_FLAG_CTX_PER_SET * NUM_CTX_SETS_CHROMA)
128 
129 #define NUM_ABS_FLAG_CTX_LUMA (NUM_ABS_FLAG_CTX_PER_SET * NUM_CTX_SETS_LUMA)
130 #define NUM_ABS_FLAG_CTX_CHROMA (NUM_ABS_FLAG_CTX_PER_SET * NUM_CTX_SETS_CHROMA)
131 
132 #define NUM_ONE_FLAG_CTX (NUM_ONE_FLAG_CTX_LUMA + NUM_ONE_FLAG_CTX_CHROMA)
133 #define NUM_ABS_FLAG_CTX (NUM_ABS_FLAG_CTX_LUMA + NUM_ABS_FLAG_CTX_CHROMA)
134 
135 #define FIRST_CTX_SET_CHROMA (FIRST_CTX_SET_LUMA + NUM_CTX_SETS_LUMA)
136 
137 //--------------------------------------------------------------------------------------------------
138 
139 // context size definitions for CBF
140 
141 #define NUM_QT_CBF_CTX_SETS 2
142 
143 #define NUM_QT_CBF_CTX_PER_SET 5
144 
145 #define FIRST_CBF_CTX_LUMA 0
146 
147 #define FIRST_CBF_CTX_CHROMA (FIRST_CBF_CTX_LUMA + NUM_QT_CBF_CTX_PER_SET)
148 
149 
150 //--------------------------------------------------------------------------------------------------
151 
152 #define NUM_MVP_IDX_CTX 1
153 
154 #define NUM_SAO_MERGE_FLAG_CTX 1
155 #define NUM_SAO_TYPE_IDX_CTX 1
156 
157 #define NUM_TRANSFORMSKIP_FLAG_CTX 1
158 
159 #define NUM_CU_TRANSQUANT_BYPASS_FLAG_CTX 1
160 
161 #define NUM_CROSS_COMPONENT_PREDICTION_CTX 10
162 
163 #define CNU 154
164 
165 
166 // ====================================================================================================================
167 // Tables
168 // ====================================================================================================================
169 
170 // initial probability for cu_transquant_bypass flag
171 static const UChar
173 {
174  { 154 },
175  { 154 },
176  { 154 },
177 };
178 
179 // initial probability for split flag
180 static const UChar
182 {
183  { 107, 139, 126, },
184  { 107, 139, 126, },
185  { 139, 141, 157, },
186 };
187 
188 static const UChar
190 {
191  { 197, 185, 201, },
192  { 197, 185, 201, },
193  { CNU, CNU, CNU, },
194 };
195 
196 static const UChar
198 {
199  { 154, },
200  { 110, },
201  { CNU, },
202 };
203 
204 static const UChar
206 {
207  { 137, },
208  { 122, },
209  { CNU, },
210 };
211 
212 static const UChar
214 {
215  { 154, 139, 154, 154 },
216  { 154, 139, 154, 154 },
217  { 184, CNU, CNU, CNU },
218 };
219 
220 static const UChar
222 {
223  { 134, },
224  { 149, },
225  { CNU, },
226 };
227 
228 static const UChar
230 {
231  { 183, },
232  { 154, },
233  { 184, },
234 };
235 
236 static const UChar
238 {
239  { 152, 139, },
240  { 152, 139, },
241  { 63, 139, },
242 };
243 
244 static const UChar
246 {
247  { 95, 79, 63, 31, 31, },
248  { 95, 79, 63, 31, 31, },
249  { CNU, CNU, CNU, CNU, CNU, },
250 };
251 
252 static const UChar
254 {
255  { 169, 198, },
256  { 140, 198, },
257  { CNU, CNU, },
258 };
259 
260 static const UChar
262 {
263  { 153, 153 },
264  { 153, 153 },
265  { CNU, CNU },
266 };
267 
268 static const UChar
270 {
271  { 154, 154, 154, },
272  { 154, 154, 154, },
273  { 154, 154, 154, },
274 };
275 
276 static const UChar
278 {
279  { 154, },
280  { 154, },
281  { 154, },
282 };
283 
284 static const UChar
286 {
287  { 154, },
288  { 154, },
289  { 154, },
290 };
291 
292 //--------------------------------------------------------------------------------------------------
293 
294 //Initialisation for CBF
295 
296 // |---------Luminance---------|
297 #define BSLICE_LUMA_CBF_CONTEXT 153, 111, CNU, CNU, CNU
298 #define PSLICE_LUMA_CBF_CONTEXT 153, 111, CNU, CNU, CNU
299 #define ISLICE_LUMA_CBF_CONTEXT 111, 141, CNU, CNU, CNU
300 // |--------Chrominance--------|
301 #define BSLICE_CHROMA_CBF_CONTEXT 149, 92, 167, 154, 154
302 #define PSLICE_CHROMA_CBF_CONTEXT 149, 107, 167, 154, 154
303 #define ISLICE_CHROMA_CBF_CONTEXT 94, 138, 182, 154, 154
304 
305 
306 static const UChar
308 {
312 };
313 
314 
315 //--------------------------------------------------------------------------------------------------
316 
317 static const UChar
319 {
320  { 79, },
321  { 79, },
322  { CNU, },
323 };
324 
325 
326 //--------------------------------------------------------------------------------------------------
327 
328 //Initialisation for last-significant-position
329 
330 // |------------------------------Luminance----------------------------------|
331 #define BSLICE_LUMA_LAST_POSITION_CONTEXT 125, 110, 124, 110, 95, 94, 125, 111, 111, 79, 125, 126, 111, 111, 79
332 #define PSLICE_LUMA_LAST_POSITION_CONTEXT 125, 110, 94, 110, 95, 79, 125, 111, 110, 78, 110, 111, 111, 95, 94
333 #define ISLICE_LUMA_LAST_POSITION_CONTEXT 110, 110, 124, 125, 140, 153, 125, 127, 140, 109, 111, 143, 127, 111, 79
334 // |------------------------------Chrominance--------------------------------|
335 #define BSLICE_CHROMA_LAST_POSITION_CONTEXT 108, 123, 93, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU
336 #define PSLICE_CHROMA_LAST_POSITION_CONTEXT 108, 123, 108, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU
337 #define ISLICE_CHROMA_LAST_POSITION_CONTEXT 108, 123, 63, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU, CNU
338 
339 
340 static const UChar
342 {
346 };
347 
348 
349 //--------------------------------------------------------------------------------------------------
350 
351 static const UChar
353 {
354  { 121, 140,
355  61, 154,
356  },
357  { 121, 140,
358  61, 154,
359  },
360  { 91, 171,
361  134, 141,
362  },
363 };
364 
365 
366 //--------------------------------------------------------------------------------------------------
367 
368 //Initialisation for significance map
369 
370 // |-DC-| |-----------------4x4------------------| |------8x8 Diagonal Scan------| |----8x8 Non-Diagonal Scan----| |-NxN First group-| |-NxN Other group-| |-Single context-|
371 // | | | | |-First Group-| |-Other Group-| |-First Group-| |-Other Group-| | | | | | |
372 #define BSLICE_LUMA_SIGNIFICANCE_CONTEXT 170, 154, 139, 153, 139, 123, 123, 63, 124, 166, 183, 140, 136, 153, 154, 166, 183, 140, 136, 153, 154, 166, 183, 140, 136, 153, 154, 140
373 #define PSLICE_LUMA_SIGNIFICANCE_CONTEXT 155, 154, 139, 153, 139, 123, 123, 63, 153, 166, 183, 140, 136, 153, 154, 166, 183, 140, 136, 153, 154, 166, 183, 140, 136, 153, 154, 140
374 #define ISLICE_LUMA_SIGNIFICANCE_CONTEXT 111, 111, 125, 110, 110, 94, 124, 108, 124, 107, 125, 141, 179, 153, 125, 107, 125, 141, 179, 153, 125, 107, 125, 141, 179, 153, 125, 141
375 
376 // |-DC-| |-----------------4x4------------------| |-8x8 Any group-| |-NxN Any group-| |-Single context-|
377 #define BSLICE_CHROMA_SIGNIFICANCE_CONTEXT 170, 153, 138, 138, 122, 121, 122, 121, 167, 151, 183, 140, 151, 183, 140, 140
378 #define PSLICE_CHROMA_SIGNIFICANCE_CONTEXT 170, 153, 123, 123, 107, 121, 107, 121, 167, 151, 183, 140, 151, 183, 140, 140
379 #define ISLICE_CHROMA_SIGNIFICANCE_CONTEXT 140, 139, 182, 182, 152, 136, 152, 136, 153, 136, 139, 111, 136, 139, 111, 111
380 
381 //------------------------------------------------
382 
383 static const UChar
385 {
389 };
390 
391 
392 //--------------------------------------------------------------------------------------------------
393 
394 //Initialisation for greater-than-one flags and greater-than-two flags
395 
396 // |------Set 0-------| |------Set 1-------| |------Set 2-------| |------Set 3-------|
397 #define BSLICE_LUMA_ONE_CONTEXT 154, 196, 167, 167, 154, 152, 167, 182, 182, 134, 149, 136, 153, 121, 136, 122
398 #define PSLICE_LUMA_ONE_CONTEXT 154, 196, 196, 167, 154, 152, 167, 182, 182, 134, 149, 136, 153, 121, 136, 137
399 #define ISLICE_LUMA_ONE_CONTEXT 140, 92, 137, 138, 140, 152, 138, 139, 153, 74, 149, 92, 139, 107, 122, 152
400 
401 #define BSLICE_LUMA_ABS_CONTEXT 107, 167, 91, 107
402 #define PSLICE_LUMA_ABS_CONTEXT 107, 167, 91, 122
403 #define ISLICE_LUMA_ABS_CONTEXT 138, 153, 136, 167
404 
405 // |------Set 4-------| |------Set 5-------|
406 #define BSLICE_CHROMA_ONE_CONTEXT 169, 208, 166, 167, 154, 152, 167, 182
407 #define PSLICE_CHROMA_ONE_CONTEXT 169, 194, 166, 167, 154, 167, 137, 182
408 #define ISLICE_CHROMA_ONE_CONTEXT 140, 179, 166, 182, 140, 227, 122, 197
409 
410 #define BSLICE_CHROMA_ABS_CONTEXT 107, 167
411 #define PSLICE_CHROMA_ABS_CONTEXT 107, 167
412 #define ISLICE_CHROMA_ABS_CONTEXT 152, 152
413 
414 
415 //------------------------------------------------
416 
417 static const UChar
419 {
423 };
424 
425 static const UChar
427 {
431 };
432 
433 
434 //--------------------------------------------------------------------------------------------------
435 
436 static const UChar
438 {
439  { 168, },
440  { 168, },
441  { CNU, },
442 };
443 
444 static const UChar
446 {
447  { 153, },
448  { 153, },
449  { 153, },
450 };
451 
452 static const UChar
454 {
455  { 160, },
456  { 185, },
457  { 200, },
458 };
459 
460 static const UChar
462 {
463  { 224, 167, 122, },
464  { 124, 138, 94, },
465  { 153, 138, 138, },
466 };
467 
468 static const UChar
470 {
471  { 139, 139},
472  { 139, 139},
473  { 139, 139},
474 };
475 
476 static const UChar
478 {
479  {139, 139},
480  {139, 139},
481  {CNU, CNU}
482 };
483 
484 static const UChar
486 {
487  {139, 139},
488  {139, 139},
489  {CNU, CNU}
490 };
491 
492 static const UChar
494 {
495  { 154, 154, 154, 154, 154, 154, 154, 154, 154, 154 },
496  { 154, 154, 154, 154, 154, 154, 154, 154, 154, 154 },
497  { 154, 154, 154, 154, 154, 154, 154, 154, 154, 154 },
498 };
499 
501 
502 #endif
static const UChar INIT_SAO_MERGE_FLAG[NUMBER_OF_SLICE_TYPES][1]
#define NUM_QT_ROOT_CBF_CTX
number of context models for QT ROOT CBF
Definition: ContextTables.h:70
static const UInt notFirstGroupNeighbourhoodContextOffset[MAX_NUM_CHANNEL_TYPE]
Definition: ContextTables.h:88
static const UChar INIT_PART_SIZE[NUMBER_OF_SLICE_TYPES][4]
static const UChar INIT_LAST[NUMBER_OF_SLICE_TYPES][2 *15]
#define ISLICE_LUMA_CBF_CONTEXT
#define PSLICE_CHROMA_LAST_POSITION_CONTEXT
static const UInt significanceMapContextSetSize[MAX_NUM_CHANNEL_TYPE][CONTEXT_NUMBER_OF_TYPES]
Definition: ContextTables.h:86
static const UChar INIT_SIG_FLAG[NUMBER_OF_SLICE_TYPES][(28+16)]
#define NUM_INTER_DIR_CTX
number of context models for inter prediction direction
Definition: ContextTables.h:63
#define NUM_MERGE_FLAG_EXT_CTX
number of context models for merge flag of merge extended
Definition: ContextTables.h:54
#define NUM_CU_TRANSQUANT_BYPASS_FLAG_CTX
#define NUM_MVP_IDX_CTX
number of context models for MVP index
#define BSLICE_LUMA_SIGNIFICANCE_CONTEXT
unsigned int UInt
Definition: TypeDef.h:212
#define BSLICE_LUMA_LAST_POSITION_CONTEXT
#define BSLICE_CHROMA_CBF_CONTEXT
#define NUM_CTX_LAST_FLAG_XY
number of context models for last coefficient position
#define NUM_SAO_TYPE_IDX_CTX
number of context models for SAO type index
#define NUM_PRED_MODE_CTX
number of context models for prediction mode
Definition: ContextTables.h:58
#define ISLICE_LUMA_SIGNIFICANCE_CONTEXT
#define BSLICE_LUMA_ONE_CONTEXT
#define PSLICE_CHROMA_CBF_CONTEXT
static const UChar INIT_CHROMA_QP_ADJ_FLAG[NUMBER_OF_SLICE_TYPES][1]
#define BSLICE_LUMA_ABS_CONTEXT
#define ISLICE_CHROMA_CBF_CONTEXT
#define NUM_ONE_FLAG_CTX
number of context models for greater than 1 flag
#define NUM_SKIP_FLAG_CTX
number of context models for skip flag
Definition: ContextTables.h:52
static const UChar INIT_ABS_FLAG[NUMBER_OF_SLICE_TYPES][((1 *4)+(1 *2))]
static const UChar INIT_INTER_DIR[NUMBER_OF_SLICE_TYPES][5]
static const UChar INIT_QT_ROOT_CBF[NUMBER_OF_SLICE_TYPES][1]
#define NUM_SAO_MERGE_FLAG_CTX
number of context models for SAO merge flags
#define NUM_MV_RES_CTX
number of context models for motion vector difference
Definition: ContextTables.h:64
static const UChar INIT_CHROMA_PRED_MODE[NUMBER_OF_SLICE_TYPES][2]
static const UChar INIT_MERGE_FLAG_EXT[NUMBER_OF_SLICE_TYPES][1]
#define ISLICE_CHROMA_SIGNIFICANCE_CONTEXT
static const UInt nonDiagonalScan8x8ContextOffset[MAX_NUM_CHANNEL_TYPE]
Definition: ContextTables.h:87
static const UChar INIT_TRANSFORMSKIP_FLAG[NUMBER_OF_SLICE_TYPES][2 *1]
#define ISLICE_CHROMA_ABS_CONTEXT
static const UChar INIT_SKIP_FLAG[NUMBER_OF_SLICE_TYPES][3]
static const UChar INIT_QT_CBF[NUMBER_OF_SLICE_TYPES][2 *5]
#define NUM_SIG_CG_FLAG_CTX
number of context models for MULTI_LEVEL_SIGNIFICANCE
Definition: ContextTables.h:73
#define BSLICE_CHROMA_SIGNIFICANCE_CONTEXT
static const UChar INIT_PRED_MODE[NUMBER_OF_SLICE_TYPES][1]
static const UChar INIT_CHROMA_QP_ADJ_IDC[NUMBER_OF_SLICE_TYPES][1]
#define NUM_CHROMA_PRED_CTX
number of context models for intra prediction (chroma)
Definition: ContextTables.h:62
#define ISLICE_LUMA_ABS_CONTEXT
static const UChar INIT_EXPLICIT_RDPCM_FLAG[NUMBER_OF_SLICE_TYPES][2 *1]
#define BSLICE_CHROMA_ABS_CONTEXT
static const UChar INIT_TRANS_SUBDIV_FLAG[NUMBER_OF_SLICE_TYPES][3]
#define ISLICE_CHROMA_ONE_CONTEXT
#define NUM_REF_NO_CTX
number of context models for reference index
Definition: ContextTables.h:68
static const UChar INIT_SPLIT_FLAG[NUMBER_OF_SLICE_TYPES][3]
#define NUM_DELTA_QP_CTX
number of context models for dQP
Definition: ContextTables.h:71
static const UChar INIT_DQP[NUMBER_OF_SLICE_TYPES][3]
#define PSLICE_LUMA_CBF_CONTEXT
#define NUM_EXPLICIT_RDPCM_FLAG_CTX
number of context models for the flag which specifies whether to use RDPCM on inter coded residues ...
Definition: ContextTables.h:74
static const UChar INIT_CROSS_COMPONENT_PREDICTION[NUMBER_OF_SLICE_TYPES][10]
#define CNU
dummy initialization value for unused context models 'Context model Not Used'
#define NUM_EXPLICIT_RDPCM_DIR_CTX
number of context models for the flag which specifies which RDPCM direction is used on inter coded re...
Definition: ContextTables.h:75
#define PSLICE_CHROMA_ONE_CONTEXT
#define ISLICE_CHROMA_LAST_POSITION_CONTEXT
static const UChar INIT_SIG_CG_FLAG[NUMBER_OF_SLICE_TYPES][2 *2]
unsigned char UChar
Definition: TypeDef.h:208
static const UInt significanceMapContextSetStart[MAX_NUM_CHANNEL_TYPE][CONTEXT_NUMBER_OF_TYPES]
Definition: ContextTables.h:85
#define NUM_QT_CBF_CTX_PER_SET
number of context models for QT CBF
static const UChar INIT_MERGE_IDX_EXT[NUMBER_OF_SLICE_TYPES][1]
#define BSLICE_CHROMA_LAST_POSITION_CONTEXT
static const UChar INIT_MVD[NUMBER_OF_SLICE_TYPES][2]
#define ISLICE_LUMA_LAST_POSITION_CONTEXT
#define NUM_CTX_LAST_FLAG_SETS
#define ISLICE_LUMA_ONE_CONTEXT
#define NUM_ABS_FLAG_CTX
number of context models for greater than 2 flag
#define BSLICE_CHROMA_ONE_CONTEXT
static const UChar INIT_ONE_FLAG[NUMBER_OF_SLICE_TYPES][((4 *4)+(4 *2))]
#define PSLICE_LUMA_SIGNIFICANCE_CONTEXT
#define NUM_TRANS_SUBDIV_FLAG_CTX
number of context models for transform subdivision flags
Definition: ContextTables.h:69
static const UChar INIT_SAO_TYPE_IDX[NUMBER_OF_SLICE_TYPES][1]
#define NUM_CROSS_COMPONENT_PREDICTION_CTX
#define NUM_CHROMA_QP_ADJ_IDC_CTX
number of context models for chroma_qp_adjustment_idc
Definition: ContextTables.h:66
static const UChar INIT_REF_PIC[NUMBER_OF_SLICE_TYPES][2]
#define NUM_TRANSFORMSKIP_FLAG_CTX
number of context models for transform skipping
#define PSLICE_CHROMA_ABS_CONTEXT
#define PSLICE_LUMA_ABS_CONTEXT
#define BSLICE_LUMA_CBF_CONTEXT
static const UChar INIT_CU_TRANSQUANT_BYPASS_FLAG[NUMBER_OF_SLICE_TYPES][1]
#define NUM_INTRA_PREDICT_CTX
number of context models for intra prediction
Definition: ContextTables.h:60
static const UChar INIT_INTRA_PRED_MODE[NUMBER_OF_SLICE_TYPES][1]
static const UChar INIT_MVP_IDX[NUMBER_OF_SLICE_TYPES][1]
#define PSLICE_LUMA_ONE_CONTEXT
#define PSLICE_CHROMA_SIGNIFICANCE_CONTEXT
#define NUM_QT_CBF_CTX_SETS
#define NUM_CHROMA_QP_ADJ_FLAG_CTX
number of context models for chroma_qp_adjustment_flag
Definition: ContextTables.h:65
#define NUM_PART_SIZE_CTX
number of context models for partition size
Definition: ContextTables.h:57
#define PSLICE_LUMA_LAST_POSITION_CONTEXT
#define NUM_MERGE_IDX_EXT_CTX
number of context models for merge index of merge extended
Definition: ContextTables.h:55
#define NUM_SIG_FLAG_CTX
number of context models for sig flag
static const UChar INIT_EXPLICIT_RDPCM_DIR[NUMBER_OF_SLICE_TYPES][2 *1]
#define NUM_SPLIT_FLAG_CTX
number of context models for split flag
Definition: ContextTables.h:51