Line data Source code
1 : /*
2 : * Copyright (c) 2016, Alliance for Open Media. All rights reserved
3 : *
4 : * This source code is subject to the terms of the BSD 2 Clause License and
5 : * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License
6 : * was not distributed with this source code in the LICENSE file, you can
7 : * obtain it at www.aomedia.org/license/software. If the Alliance for Open
8 : * Media Patent License 1.0 was not distributed with this source code in the
9 : * PATENTS file, you can obtain it at www.aomedia.org/license/patent.
10 : */
11 :
12 : #include "./aom_config.h"
13 : #include "aom/aom_integer.h"
14 : #include "aom_mem/aom_mem.h"
15 : #include "av1/common/blockd.h"
16 : #include "av1/common/entropy.h"
17 : #include "av1/common/entropymode.h"
18 : #include "av1/common/onyxc_int.h"
19 : #include "av1/common/scan.h"
20 : #if CONFIG_LV_MAP
21 : #include "av1/common/txb_common.h"
22 : #endif
23 :
24 : // Unconstrained Node Tree
25 : /* clang-format off */
26 : const aom_tree_index av1_coef_con_tree[TREE_SIZE(ENTROPY_TOKENS)] = {
27 : 2, 6, // 0 = LOW_VAL
28 : -TWO_TOKEN, 4, // 1 = TWO
29 : -THREE_TOKEN, -FOUR_TOKEN, // 2 = THREE
30 : 8, 10, // 3 = HIGH_LOW
31 : -CATEGORY1_TOKEN, -CATEGORY2_TOKEN, // 4 = CAT_ONE
32 : 12, 14, // 5 = CAT_THREEFOUR
33 : -CATEGORY3_TOKEN, -CATEGORY4_TOKEN, // 6 = CAT_THREE
34 : -CATEGORY5_TOKEN, -CATEGORY6_TOKEN // 7 = CAT_FIVE
35 : };
36 : /* clang-format on */
37 :
38 : #if CONFIG_NEW_MULTISYMBOL
39 : /* Extra bits coded from LSB to MSB */
40 : const aom_cdf_prob av1_cat1_cdf0[CDF_SIZE(2)] = { AOM_ICDF(20352),
41 : AOM_ICDF(32768), 0 };
42 : const aom_cdf_prob *av1_cat1_cdf[] = { av1_cat1_cdf0 };
43 :
44 : const aom_cdf_prob av1_cat2_cdf0[CDF_SIZE(4)] = {
45 : AOM_ICDF(11963), AOM_ICDF(21121), AOM_ICDF(27719), AOM_ICDF(32768), 0
46 : };
47 : const aom_cdf_prob *av1_cat2_cdf[] = { av1_cat2_cdf0 };
48 : const aom_cdf_prob av1_cat3_cdf0[CDF_SIZE(8)] = {
49 : AOM_ICDF(7001), AOM_ICDF(12802), AOM_ICDF(17911),
50 : AOM_ICDF(22144), AOM_ICDF(25503), AOM_ICDF(28286),
51 : AOM_ICDF(30737), AOM_ICDF(32768), 0
52 : };
53 : const aom_cdf_prob *av1_cat3_cdf[] = { av1_cat3_cdf0 };
54 :
55 : const aom_cdf_prob av1_cat4_cdf0[CDF_SIZE(16)] = { AOM_ICDF(3934),
56 : AOM_ICDF(7460),
57 : AOM_ICDF(10719),
58 : AOM_ICDF(13640),
59 : AOM_ICDF(16203),
60 : AOM_ICDF(18500),
61 : AOM_ICDF(20624),
62 : AOM_ICDF(22528),
63 : AOM_ICDF(24316),
64 : AOM_ICDF(25919),
65 : AOM_ICDF(27401),
66 : AOM_ICDF(28729),
67 : AOM_ICDF(29894),
68 : AOM_ICDF(30938),
69 : AOM_ICDF(31903),
70 : AOM_ICDF(32768),
71 : 0 };
72 : const aom_cdf_prob *av1_cat4_cdf[] = { av1_cat4_cdf0 };
73 :
74 : const aom_cdf_prob av1_cat5_cdf0[CDF_SIZE(16)] = { AOM_ICDF(2942),
75 : AOM_ICDF(5794),
76 : AOM_ICDF(8473),
77 : AOM_ICDF(11069),
78 : AOM_ICDF(13469),
79 : AOM_ICDF(15795),
80 : AOM_ICDF(17980),
81 : AOM_ICDF(20097),
82 : AOM_ICDF(21952),
83 : AOM_ICDF(23750),
84 : AOM_ICDF(25439),
85 : AOM_ICDF(27076),
86 : AOM_ICDF(28589),
87 : AOM_ICDF(30056),
88 : AOM_ICDF(31434),
89 : AOM_ICDF(32768),
90 : 0 };
91 : const aom_cdf_prob av1_cat5_cdf1[CDF_SIZE(2)] = { AOM_ICDF(23040),
92 : AOM_ICDF(32768), 0 };
93 : const aom_cdf_prob *av1_cat5_cdf[] = { av1_cat5_cdf0, av1_cat5_cdf1 };
94 :
95 : const aom_cdf_prob av1_cat6_cdf0[CDF_SIZE(16)] = {
96 : AOM_ICDF(2382), AOM_ICDF(4727), AOM_ICDF(7036), AOM_ICDF(9309),
97 : AOM_ICDF(11512), AOM_ICDF(13681), AOM_ICDF(15816), AOM_ICDF(17918),
98 : AOM_ICDF(19892), AOM_ICDF(21835), AOM_ICDF(23748), AOM_ICDF(25632),
99 : AOM_ICDF(27458), AOM_ICDF(29255), AOM_ICDF(31024), AOM_ICDF(32768)
100 : };
101 : const aom_cdf_prob av1_cat6_cdf1[CDF_SIZE(16)] = {
102 : AOM_ICDF(9314), AOM_ICDF(15584), AOM_ICDF(19741), AOM_ICDF(22540),
103 : AOM_ICDF(25391), AOM_ICDF(27310), AOM_ICDF(28583), AOM_ICDF(29440),
104 : AOM_ICDF(30493), AOM_ICDF(31202), AOM_ICDF(31672), AOM_ICDF(31988),
105 : AOM_ICDF(32310), AOM_ICDF(32527), AOM_ICDF(32671), AOM_ICDF(32768)
106 : };
107 : const aom_cdf_prob av1_cat6_cdf2[CDF_SIZE(16)] = {
108 : AOM_ICDF(29548), AOM_ICDF(31129), AOM_ICDF(31960), AOM_ICDF(32004),
109 : AOM_ICDF(32473), AOM_ICDF(32498), AOM_ICDF(32511), AOM_ICDF(32512),
110 : AOM_ICDF(32745), AOM_ICDF(32757), AOM_ICDF(32763), AOM_ICDF(32764),
111 : AOM_ICDF(32765), AOM_ICDF(32766), AOM_ICDF(32767), AOM_ICDF(32768)
112 : };
113 : const aom_cdf_prob av1_cat6_cdf3[CDF_SIZE(16)] = {
114 : AOM_ICDF(32006), AOM_ICDF(32258), AOM_ICDF(32510), AOM_ICDF(32512),
115 : AOM_ICDF(32638), AOM_ICDF(32639), AOM_ICDF(32640), AOM_ICDF(32641),
116 : AOM_ICDF(32761), AOM_ICDF(32762), AOM_ICDF(32763), AOM_ICDF(32764),
117 : AOM_ICDF(32765), AOM_ICDF(32766), AOM_ICDF(32767), AOM_ICDF(32768)
118 : };
119 : const aom_cdf_prob av1_cat6_cdf4[CDF_SIZE(4)] = {
120 : AOM_ICDF(32513), AOM_ICDF(32641), AOM_ICDF(32767), AOM_ICDF(32768)
121 : };
122 : const aom_cdf_prob *av1_cat6_cdf[] = {
123 : av1_cat6_cdf0, av1_cat6_cdf1, av1_cat6_cdf2, av1_cat6_cdf3, av1_cat6_cdf4
124 : };
125 : #endif
126 : /* Extra bits coded from MSB to LSB */
127 : const aom_prob av1_cat1_prob[] = { 159 };
128 : const aom_prob av1_cat2_prob[] = { 165, 145 };
129 : const aom_prob av1_cat3_prob[] = { 173, 148, 140 };
130 : const aom_prob av1_cat4_prob[] = { 176, 155, 140, 135 };
131 : const aom_prob av1_cat5_prob[] = { 180, 157, 141, 134, 130 };
132 : const aom_prob av1_cat6_prob[] = {
133 : 255, 255, 255, 255, 254, 254, 254, 252, 249,
134 : 243, 230, 196, 177, 153, 140, 133, 130, 129
135 : };
136 :
137 : const uint16_t band_count_table[TX_SIZES_ALL][8] = {
138 : #if CONFIG_CHROMA_2X2
139 : { 1, 2, 2, 3, 0, 0, 0 },
140 : #endif
141 : { 1, 2, 3, 4, 3, 16 - 13, 0 }, { 1, 2, 3, 4, 11, 64 - 21, 0 },
142 : { 1, 2, 3, 4, 11, 256 - 21, 0 }, { 1, 2, 3, 4, 11, 1024 - 21, 0 },
143 : #if CONFIG_TX64X64
144 : { 1, 2, 3, 4, 11, 4096 - 21, 0 },
145 : #endif // CONFIG_TX64X64
146 : { 1, 2, 3, 4, 8, 32 - 18, 0 }, { 1, 2, 3, 4, 8, 32 - 18, 0 },
147 : { 1, 2, 3, 4, 11, 128 - 21, 0 }, { 1, 2, 3, 4, 11, 128 - 21, 0 },
148 : { 1, 2, 3, 4, 11, 512 - 21, 0 }, { 1, 2, 3, 4, 11, 512 - 21, 0 },
149 : { 1, 2, 3, 4, 11, 64 - 21, 0 }, { 1, 2, 3, 4, 11, 64 - 21, 0 },
150 : { 1, 2, 3, 4, 11, 256 - 21, 0 }, { 1, 2, 3, 4, 11, 256 - 21, 0 },
151 : };
152 :
153 : const uint16_t band_cum_count_table[TX_SIZES_ALL][8] = {
154 : #if CONFIG_CHROMA_2X2
155 : { 0, 1, 3, 6, 10, 13, 16, 0 },
156 : #endif
157 : { 0, 1, 3, 6, 10, 13, 16, 0 }, { 0, 1, 3, 6, 10, 21, 64, 0 },
158 : { 0, 1, 3, 6, 10, 21, 256, 0 }, { 0, 1, 3, 6, 10, 21, 1024, 0 },
159 : #if CONFIG_TX64X64
160 : { 0, 1, 3, 6, 10, 21, 4096, 0 },
161 : #endif // CONFIG_TX64X64
162 : { 0, 1, 3, 6, 10, 18, 32, 0 }, { 0, 1, 3, 6, 10, 18, 32, 0 },
163 : { 0, 1, 3, 6, 10, 21, 128, 0 }, { 0, 1, 3, 6, 10, 21, 128, 0 },
164 : { 0, 1, 3, 6, 10, 21, 512, 0 }, { 0, 1, 3, 6, 10, 21, 512, 0 },
165 : { 0, 1, 3, 6, 10, 21, 64, 0 }, { 0, 1, 3, 6, 10, 21, 64, 0 },
166 : { 0, 1, 3, 6, 10, 21, 256, 0 }, { 0, 1, 3, 6, 10, 21, 256, 0 },
167 : };
168 :
169 : const uint8_t av1_coefband_trans_8x8plus[MAX_TX_SQUARE] = {
170 : 0, 1, 1, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5,
171 : // beyond MAXBAND_INDEX+1 all values are filled as 5
172 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
173 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
174 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
175 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
176 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
177 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
178 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
179 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
180 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
181 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
182 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
183 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
184 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
185 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
186 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
187 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
188 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
189 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
190 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
191 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
192 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
193 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
194 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
195 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
196 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
197 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
198 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
199 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
200 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
201 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
202 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
203 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
204 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
205 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
206 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
207 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
208 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
209 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
210 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
211 : #if CONFIG_TX64X64
212 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
213 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
214 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
215 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
216 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
217 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
218 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
219 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
220 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
221 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
222 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
223 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
224 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
225 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
226 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
227 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
228 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
229 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
230 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
231 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
232 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
233 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
234 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
235 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
236 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
237 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
238 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
239 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
240 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
241 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
242 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
243 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
244 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
245 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
246 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
247 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
248 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
249 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
250 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
251 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
252 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
253 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
254 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
255 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
256 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
257 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
258 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
259 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
260 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
261 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
262 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
263 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
264 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
265 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
266 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
267 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
268 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
269 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
270 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
271 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
272 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
273 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
274 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
275 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
276 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
277 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
278 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
279 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
280 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
281 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
282 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
283 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
284 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
285 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
286 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
287 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
288 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
289 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
290 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
291 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
292 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
293 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
294 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
295 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
296 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
297 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
298 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
299 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
300 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
301 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
302 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
303 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
304 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
305 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
306 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
307 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
308 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
309 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
310 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
311 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
312 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
313 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
314 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
315 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
316 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
317 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
318 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
319 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
320 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
321 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
322 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
323 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
324 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
325 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
326 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
327 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
328 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
329 : 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
330 : 5, 5, 5, 5
331 : #endif // CONFIG_TX64X64
332 : };
333 :
334 : const uint8_t av1_coefband_trans_4x8_8x4[32] = {
335 : 0, 1, 1, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4,
336 : 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
337 : };
338 :
339 : const uint8_t av1_coefband_trans_4x4[16] = {
340 : 0, 1, 1, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 5, 5, 5,
341 : };
342 :
343 : const uint8_t av1_pt_energy_class[ENTROPY_TOKENS] = { 0, 1, 2, 3, 3, 4,
344 : 4, 5, 5, 5, 5, 5 };
345 :
346 : // Model obtained from a 2-sided zero-centered distribution derived
347 : // from a Pareto distribution. The cdf of the distribution is:
348 : // cdf(x) = 0.5 + 0.5 * sgn(x) * [1 - {alpha/(alpha + |x|)} ^ beta]
349 : //
350 : // For a given beta and a given probablity of the 1-node, the alpha
351 : // is first solved, and then the {alpha, beta} pair is used to generate
352 : // the probabilities for the rest of the nodes.
353 :
354 : // beta = 8
355 :
356 : // Every odd line in this table can be generated from the even lines
357 : // by averaging :
358 : // av1_pareto8_full[l][node] = (av1_pareto8_full[l-1][node] +
359 : // av1_pareto8_full[l+1][node] ) >> 1;
360 : // Values for tokens ONE_TOKEN through CATEGORY6_TOKEN included here.
361 : const aom_prob av1_pareto8_full[COEFF_PROB_MODELS][MODEL_NODES] = {
362 : { 3, 86, 128, 6, 86, 23, 88, 29 },
363 : { 6, 86, 128, 11, 87, 42, 91, 52 },
364 : { 9, 86, 129, 17, 88, 61, 94, 76 },
365 : { 12, 86, 129, 22, 88, 77, 97, 93 },
366 : { 15, 87, 129, 28, 89, 93, 100, 110 },
367 : { 17, 87, 129, 33, 90, 105, 103, 123 },
368 : { 20, 88, 130, 38, 91, 118, 106, 136 },
369 : { 23, 88, 130, 43, 91, 128, 108, 146 },
370 : { 26, 89, 131, 48, 92, 139, 111, 156 },
371 : { 28, 89, 131, 53, 93, 147, 114, 163 },
372 : { 31, 90, 131, 58, 94, 156, 117, 171 },
373 : { 34, 90, 131, 62, 94, 163, 119, 177 },
374 : { 37, 90, 132, 66, 95, 171, 122, 184 },
375 : { 39, 90, 132, 70, 96, 177, 124, 189 },
376 : { 42, 91, 132, 75, 97, 183, 127, 194 },
377 : { 44, 91, 132, 79, 97, 188, 129, 198 },
378 : { 47, 92, 133, 83, 98, 193, 132, 202 },
379 : { 49, 92, 133, 86, 99, 197, 134, 205 },
380 : { 52, 93, 133, 90, 100, 201, 137, 208 },
381 : { 54, 93, 133, 94, 100, 204, 139, 211 },
382 : { 57, 94, 134, 98, 101, 208, 142, 214 },
383 : { 59, 94, 134, 101, 102, 211, 144, 216 },
384 : { 62, 94, 135, 105, 103, 214, 146, 218 },
385 : { 64, 94, 135, 108, 103, 216, 148, 220 },
386 : { 66, 95, 135, 111, 104, 219, 151, 222 },
387 : { 68, 95, 135, 114, 105, 221, 153, 223 },
388 : { 71, 96, 136, 117, 106, 224, 155, 225 },
389 : { 73, 96, 136, 120, 106, 225, 157, 226 },
390 : { 76, 97, 136, 123, 107, 227, 159, 228 },
391 : { 78, 97, 136, 126, 108, 229, 160, 229 },
392 : { 80, 98, 137, 129, 109, 231, 162, 231 },
393 : { 82, 98, 137, 131, 109, 232, 164, 232 },
394 : { 84, 98, 138, 134, 110, 234, 166, 233 },
395 : { 86, 98, 138, 137, 111, 235, 168, 234 },
396 : { 89, 99, 138, 140, 112, 236, 170, 235 },
397 : { 91, 99, 138, 142, 112, 237, 171, 235 },
398 : { 93, 100, 139, 145, 113, 238, 173, 236 },
399 : { 95, 100, 139, 147, 114, 239, 174, 237 },
400 : { 97, 101, 140, 149, 115, 240, 176, 238 },
401 : { 99, 101, 140, 151, 115, 241, 177, 238 },
402 : { 101, 102, 140, 154, 116, 242, 179, 239 },
403 : { 103, 102, 140, 156, 117, 242, 180, 239 },
404 : { 105, 103, 141, 158, 118, 243, 182, 240 },
405 : { 107, 103, 141, 160, 118, 243, 183, 240 },
406 : { 109, 104, 141, 162, 119, 244, 185, 241 },
407 : { 111, 104, 141, 164, 119, 244, 186, 241 },
408 : { 113, 104, 142, 166, 120, 245, 187, 242 },
409 : { 114, 104, 142, 168, 121, 245, 188, 242 },
410 : { 116, 105, 143, 170, 122, 246, 190, 243 },
411 : { 118, 105, 143, 171, 122, 246, 191, 243 },
412 : { 120, 106, 143, 173, 123, 247, 192, 244 },
413 : { 121, 106, 143, 175, 124, 247, 193, 244 },
414 : { 123, 107, 144, 177, 125, 248, 195, 244 },
415 : { 125, 107, 144, 178, 125, 248, 196, 244 },
416 : { 127, 108, 145, 180, 126, 249, 197, 245 },
417 : { 128, 108, 145, 181, 127, 249, 198, 245 },
418 : { 130, 109, 145, 183, 128, 249, 199, 245 },
419 : { 132, 109, 145, 184, 128, 249, 200, 245 },
420 : { 134, 110, 146, 186, 129, 250, 201, 246 },
421 : { 135, 110, 146, 187, 130, 250, 202, 246 },
422 : { 137, 111, 147, 189, 131, 251, 203, 246 },
423 : { 138, 111, 147, 190, 131, 251, 204, 246 },
424 : { 140, 112, 147, 192, 132, 251, 205, 247 },
425 : { 141, 112, 147, 193, 132, 251, 206, 247 },
426 : { 143, 113, 148, 194, 133, 251, 207, 247 },
427 : { 144, 113, 148, 195, 134, 251, 207, 247 },
428 : { 146, 114, 149, 197, 135, 252, 208, 248 },
429 : { 147, 114, 149, 198, 135, 252, 209, 248 },
430 : { 149, 115, 149, 199, 136, 252, 210, 248 },
431 : { 150, 115, 149, 200, 137, 252, 210, 248 },
432 : { 152, 115, 150, 201, 138, 252, 211, 248 },
433 : { 153, 115, 150, 202, 138, 252, 212, 248 },
434 : { 155, 116, 151, 204, 139, 253, 213, 249 },
435 : { 156, 116, 151, 205, 139, 253, 213, 249 },
436 : { 158, 117, 151, 206, 140, 253, 214, 249 },
437 : { 159, 117, 151, 207, 141, 253, 215, 249 },
438 : { 161, 118, 152, 208, 142, 253, 216, 249 },
439 : { 162, 118, 152, 209, 142, 253, 216, 249 },
440 : { 163, 119, 153, 210, 143, 253, 217, 249 },
441 : { 164, 119, 153, 211, 143, 253, 217, 249 },
442 : { 166, 120, 153, 212, 144, 254, 218, 250 },
443 : { 167, 120, 153, 212, 145, 254, 219, 250 },
444 : { 168, 121, 154, 213, 146, 254, 220, 250 },
445 : { 169, 121, 154, 214, 146, 254, 220, 250 },
446 : { 171, 122, 155, 215, 147, 254, 221, 250 },
447 : { 172, 122, 155, 216, 147, 254, 221, 250 },
448 : { 173, 123, 155, 217, 148, 254, 222, 250 },
449 : { 174, 123, 155, 217, 149, 254, 222, 250 },
450 : { 176, 124, 156, 218, 150, 254, 223, 250 },
451 : { 177, 124, 156, 219, 150, 254, 223, 250 },
452 : { 178, 125, 157, 220, 151, 254, 224, 251 },
453 : { 179, 125, 157, 220, 151, 254, 224, 251 },
454 : { 180, 126, 157, 221, 152, 254, 225, 251 },
455 : { 181, 126, 157, 221, 152, 254, 225, 251 },
456 : { 183, 127, 158, 222, 153, 254, 226, 251 },
457 : { 184, 127, 158, 223, 154, 254, 226, 251 },
458 : { 185, 128, 159, 224, 155, 255, 227, 251 },
459 : { 186, 128, 159, 224, 155, 255, 227, 251 },
460 : { 187, 129, 160, 225, 156, 255, 228, 251 },
461 : { 188, 130, 160, 225, 156, 255, 228, 251 },
462 : { 189, 131, 160, 226, 157, 255, 228, 251 },
463 : { 190, 131, 160, 226, 158, 255, 228, 251 },
464 : { 191, 132, 161, 227, 159, 255, 229, 251 },
465 : { 192, 132, 161, 227, 159, 255, 229, 251 },
466 : { 193, 133, 162, 228, 160, 255, 230, 252 },
467 : { 194, 133, 162, 229, 160, 255, 230, 252 },
468 : { 195, 134, 163, 230, 161, 255, 231, 252 },
469 : { 196, 134, 163, 230, 161, 255, 231, 252 },
470 : { 197, 135, 163, 231, 162, 255, 231, 252 },
471 : { 198, 135, 163, 231, 162, 255, 231, 252 },
472 : { 199, 136, 164, 232, 163, 255, 232, 252 },
473 : { 200, 136, 164, 232, 164, 255, 232, 252 },
474 : { 201, 137, 165, 233, 165, 255, 233, 252 },
475 : { 201, 137, 165, 233, 165, 255, 233, 252 },
476 : { 202, 138, 166, 233, 166, 255, 233, 252 },
477 : { 203, 138, 166, 233, 166, 255, 233, 252 },
478 : { 204, 139, 166, 234, 167, 255, 234, 252 },
479 : { 205, 139, 166, 234, 167, 255, 234, 252 },
480 : { 206, 140, 167, 235, 168, 255, 235, 252 },
481 : { 206, 140, 167, 235, 168, 255, 235, 252 },
482 : { 207, 141, 168, 236, 169, 255, 235, 252 },
483 : { 208, 141, 168, 236, 170, 255, 235, 252 },
484 : { 209, 142, 169, 237, 171, 255, 236, 252 },
485 : { 209, 143, 169, 237, 171, 255, 236, 252 },
486 : { 210, 144, 169, 237, 172, 255, 236, 252 },
487 : { 211, 144, 169, 237, 172, 255, 236, 252 },
488 : { 212, 145, 170, 238, 173, 255, 237, 252 },
489 : { 213, 145, 170, 238, 173, 255, 237, 252 },
490 : { 214, 146, 171, 239, 174, 255, 237, 253 },
491 : { 214, 146, 171, 239, 174, 255, 237, 253 },
492 : { 215, 147, 172, 240, 175, 255, 238, 253 },
493 : { 215, 147, 172, 240, 175, 255, 238, 253 },
494 : { 216, 148, 173, 240, 176, 255, 238, 253 },
495 : { 217, 148, 173, 240, 176, 255, 238, 253 },
496 : { 218, 149, 173, 241, 177, 255, 239, 253 },
497 : { 218, 149, 173, 241, 178, 255, 239, 253 },
498 : { 219, 150, 174, 241, 179, 255, 239, 253 },
499 : { 219, 151, 174, 241, 179, 255, 239, 253 },
500 : { 220, 152, 175, 242, 180, 255, 240, 253 },
501 : { 221, 152, 175, 242, 180, 255, 240, 253 },
502 : { 222, 153, 176, 242, 181, 255, 240, 253 },
503 : { 222, 153, 176, 242, 181, 255, 240, 253 },
504 : { 223, 154, 177, 243, 182, 255, 240, 253 },
505 : { 223, 154, 177, 243, 182, 255, 240, 253 },
506 : { 224, 155, 178, 244, 183, 255, 241, 253 },
507 : { 224, 155, 178, 244, 183, 255, 241, 253 },
508 : { 225, 156, 178, 244, 184, 255, 241, 253 },
509 : { 225, 157, 178, 244, 184, 255, 241, 253 },
510 : { 226, 158, 179, 244, 185, 255, 242, 253 },
511 : { 227, 158, 179, 244, 185, 255, 242, 253 },
512 : { 228, 159, 180, 245, 186, 255, 242, 253 },
513 : { 228, 159, 180, 245, 186, 255, 242, 253 },
514 : { 229, 160, 181, 245, 187, 255, 242, 253 },
515 : { 229, 160, 181, 245, 187, 255, 242, 253 },
516 : { 230, 161, 182, 246, 188, 255, 243, 253 },
517 : { 230, 162, 182, 246, 188, 255, 243, 253 },
518 : { 231, 163, 183, 246, 189, 255, 243, 253 },
519 : { 231, 163, 183, 246, 189, 255, 243, 253 },
520 : { 232, 164, 184, 247, 190, 255, 243, 253 },
521 : { 232, 164, 184, 247, 190, 255, 243, 253 },
522 : { 233, 165, 185, 247, 191, 255, 244, 253 },
523 : { 233, 165, 185, 247, 191, 255, 244, 253 },
524 : { 234, 166, 185, 247, 192, 255, 244, 253 },
525 : { 234, 167, 185, 247, 192, 255, 244, 253 },
526 : { 235, 168, 186, 248, 193, 255, 244, 253 },
527 : { 235, 168, 186, 248, 193, 255, 244, 253 },
528 : { 236, 169, 187, 248, 194, 255, 244, 253 },
529 : { 236, 169, 187, 248, 194, 255, 244, 253 },
530 : { 236, 170, 188, 248, 195, 255, 245, 253 },
531 : { 236, 170, 188, 248, 195, 255, 245, 253 },
532 : { 237, 171, 189, 249, 196, 255, 245, 254 },
533 : { 237, 172, 189, 249, 196, 255, 245, 254 },
534 : { 238, 173, 190, 249, 197, 255, 245, 254 },
535 : { 238, 173, 190, 249, 197, 255, 245, 254 },
536 : { 239, 174, 191, 249, 198, 255, 245, 254 },
537 : { 239, 174, 191, 249, 198, 255, 245, 254 },
538 : { 240, 175, 192, 249, 199, 255, 246, 254 },
539 : { 240, 176, 192, 249, 199, 255, 246, 254 },
540 : { 240, 177, 193, 250, 200, 255, 246, 254 },
541 : { 240, 177, 193, 250, 200, 255, 246, 254 },
542 : { 241, 178, 194, 250, 201, 255, 246, 254 },
543 : { 241, 178, 194, 250, 201, 255, 246, 254 },
544 : { 242, 179, 195, 250, 202, 255, 246, 254 },
545 : { 242, 180, 195, 250, 202, 255, 246, 254 },
546 : { 242, 181, 196, 250, 203, 255, 247, 254 },
547 : { 242, 181, 196, 250, 203, 255, 247, 254 },
548 : { 243, 182, 197, 251, 204, 255, 247, 254 },
549 : { 243, 183, 197, 251, 204, 255, 247, 254 },
550 : { 244, 184, 198, 251, 205, 255, 247, 254 },
551 : { 244, 184, 198, 251, 205, 255, 247, 254 },
552 : { 244, 185, 199, 251, 206, 255, 247, 254 },
553 : { 244, 185, 199, 251, 206, 255, 247, 254 },
554 : { 245, 186, 200, 251, 207, 255, 247, 254 },
555 : { 245, 187, 200, 251, 207, 255, 247, 254 },
556 : { 246, 188, 201, 252, 207, 255, 248, 254 },
557 : { 246, 188, 201, 252, 207, 255, 248, 254 },
558 : { 246, 189, 202, 252, 208, 255, 248, 254 },
559 : { 246, 190, 202, 252, 208, 255, 248, 254 },
560 : { 247, 191, 203, 252, 209, 255, 248, 254 },
561 : { 247, 191, 203, 252, 209, 255, 248, 254 },
562 : { 247, 192, 204, 252, 210, 255, 248, 254 },
563 : { 247, 193, 204, 252, 210, 255, 248, 254 },
564 : { 248, 194, 205, 252, 211, 255, 248, 254 },
565 : { 248, 194, 205, 252, 211, 255, 248, 254 },
566 : { 248, 195, 206, 252, 212, 255, 249, 254 },
567 : { 248, 196, 206, 252, 212, 255, 249, 254 },
568 : { 249, 197, 207, 253, 213, 255, 249, 254 },
569 : { 249, 197, 207, 253, 213, 255, 249, 254 },
570 : { 249, 198, 208, 253, 214, 255, 249, 254 },
571 : { 249, 199, 209, 253, 214, 255, 249, 254 },
572 : { 250, 200, 210, 253, 215, 255, 249, 254 },
573 : { 250, 200, 210, 253, 215, 255, 249, 254 },
574 : { 250, 201, 211, 253, 215, 255, 249, 254 },
575 : { 250, 202, 211, 253, 215, 255, 249, 254 },
576 : { 250, 203, 212, 253, 216, 255, 249, 254 },
577 : { 250, 203, 212, 253, 216, 255, 249, 254 },
578 : { 251, 204, 213, 253, 217, 255, 250, 254 },
579 : { 251, 205, 213, 253, 217, 255, 250, 254 },
580 : { 251, 206, 214, 254, 218, 255, 250, 254 },
581 : { 251, 206, 215, 254, 218, 255, 250, 254 },
582 : { 252, 207, 216, 254, 219, 255, 250, 254 },
583 : { 252, 208, 216, 254, 219, 255, 250, 254 },
584 : { 252, 209, 217, 254, 220, 255, 250, 254 },
585 : { 252, 210, 217, 254, 220, 255, 250, 254 },
586 : { 252, 211, 218, 254, 221, 255, 250, 254 },
587 : { 252, 212, 218, 254, 221, 255, 250, 254 },
588 : { 253, 213, 219, 254, 222, 255, 250, 254 },
589 : { 253, 213, 220, 254, 222, 255, 250, 254 },
590 : { 253, 214, 221, 254, 223, 255, 250, 254 },
591 : { 253, 215, 221, 254, 223, 255, 250, 254 },
592 : { 253, 216, 222, 254, 224, 255, 251, 254 },
593 : { 253, 217, 223, 254, 224, 255, 251, 254 },
594 : { 253, 218, 224, 254, 225, 255, 251, 254 },
595 : { 253, 219, 224, 254, 225, 255, 251, 254 },
596 : { 254, 220, 225, 254, 225, 255, 251, 254 },
597 : { 254, 221, 226, 254, 225, 255, 251, 254 },
598 : { 254, 222, 227, 255, 226, 255, 251, 254 },
599 : { 254, 223, 227, 255, 226, 255, 251, 254 },
600 : { 254, 224, 228, 255, 227, 255, 251, 254 },
601 : { 254, 225, 229, 255, 227, 255, 251, 254 },
602 : { 254, 226, 230, 255, 228, 255, 251, 254 },
603 : { 254, 227, 230, 255, 229, 255, 251, 254 },
604 : { 255, 228, 231, 255, 230, 255, 251, 254 },
605 : { 255, 229, 232, 255, 230, 255, 251, 254 },
606 : { 255, 230, 233, 255, 231, 255, 252, 254 },
607 : { 255, 231, 234, 255, 231, 255, 252, 254 },
608 : { 255, 232, 235, 255, 232, 255, 252, 254 },
609 : { 255, 233, 236, 255, 232, 255, 252, 254 },
610 : { 255, 235, 237, 255, 233, 255, 252, 254 },
611 : { 255, 236, 238, 255, 234, 255, 252, 254 },
612 : { 255, 238, 240, 255, 235, 255, 252, 255 },
613 : { 255, 239, 241, 255, 235, 255, 252, 254 },
614 : { 255, 241, 243, 255, 236, 255, 252, 254 },
615 : { 255, 243, 245, 255, 237, 255, 252, 254 },
616 : { 255, 246, 247, 255, 239, 255, 253, 255 },
617 : };
618 :
619 : // Model obtained from a 2-sided zero-centered distribution derived
620 : // from a Pareto distribution. The cdf of the distribution is:
621 : // cdf(x) = 0.5 + 0.5 * sgn(x) * [1 - {alpha/(alpha + |x|)} ^ beta]
622 : //
623 : // For a given beta and a given probability of the 1-node, the alpha
624 : // is first solved, and then the {alpha, beta} pair is used to generate
625 : // the probabilities for the rest of the nodes.
626 : //
627 : // The full source code of the generating program is available in:
628 : // tools/gen_constrained_tokenset.py
629 : //
630 : // Values for tokens TWO_TOKEN through CATEGORY6_TOKEN included
631 : // in the table here : the ONE_TOKEN probability is
632 : // removed and the probabilities rescaled.
633 : //
634 : // ZERO_TOKEN and ONE_TOKEN are coded as one CDF,
635 : // and EOB_TOKEN is coded as flags outside this coder.
636 : const aom_cdf_prob av1_pareto8_tail_probs[COEFF_PROB_MODELS][TAIL_NODES] = {
637 : { 128, 127, 127, 252, 497, 969, 1839, 3318, 25511 },
638 : { 256, 254, 251, 496, 966, 1834, 3308, 5408, 19995 },
639 : { 383, 378, 373, 732, 1408, 2605, 4470, 6646, 15773 },
640 : { 511, 502, 493, 961, 1824, 3289, 5373, 7298, 12517 },
641 : { 638, 625, 611, 1182, 2215, 3894, 6064, 7548, 9991 },
642 : { 766, 746, 726, 1396, 2582, 4428, 6578, 7529, 8017 },
643 : { 893, 866, 839, 1603, 2927, 4896, 6945, 7332, 6467 },
644 : { 1020, 984, 950, 1803, 3250, 5305, 7191, 7022, 5243 },
645 : { 1147, 1102, 1059, 1996, 3552, 5659, 7338, 6646, 4269 },
646 : { 1274, 1218, 1166, 2183, 3835, 5963, 7403, 6234, 3492 },
647 : { 1400, 1334, 1270, 2363, 4099, 6223, 7401, 5809, 2869 },
648 : { 1527, 1447, 1372, 2537, 4345, 6442, 7346, 5386, 2366 },
649 : { 1654, 1560, 1473, 2704, 4574, 6624, 7247, 4973, 1959 },
650 : { 1780, 1672, 1571, 2866, 4787, 6771, 7114, 4579, 1628 },
651 : { 1906, 1782, 1667, 3022, 4984, 6889, 6954, 4206, 1358 },
652 : { 2032, 1891, 1762, 3172, 5167, 6979, 6773, 3856, 1136 },
653 : { 2158, 2000, 1854, 3316, 5335, 7044, 6577, 3530, 954 },
654 : { 2284, 2106, 1944, 3455, 5490, 7087, 6370, 3229, 803 },
655 : { 2410, 2212, 2032, 3588, 5632, 7109, 6155, 2951, 679 },
656 : { 2535, 2317, 2119, 3717, 5761, 7113, 5936, 2695, 575 },
657 : { 2661, 2420, 2203, 3840, 5880, 7101, 5714, 2461, 488 },
658 : { 2786, 2522, 2286, 3958, 5987, 7074, 5493, 2246, 416 },
659 : { 2911, 2624, 2367, 4072, 6083, 7033, 5273, 2050, 355 },
660 : { 3037, 2724, 2446, 4180, 6170, 6981, 5055, 1871, 304 },
661 : { 3162, 2822, 2523, 4284, 6247, 6919, 4842, 1708, 261 },
662 : { 3286, 2920, 2599, 4384, 6315, 6848, 4633, 1559, 224 },
663 : { 3411, 3017, 2672, 4478, 6374, 6768, 4430, 1424, 194 },
664 : { 3536, 3112, 2745, 4569, 6426, 6681, 4232, 1300, 167 },
665 : { 3660, 3207, 2815, 4656, 6469, 6588, 4040, 1188, 145 },
666 : { 3785, 3300, 2883, 4738, 6505, 6490, 3855, 1086, 126 },
667 : { 3909, 3392, 2950, 4817, 6534, 6387, 3677, 993, 109 },
668 : { 4033, 3483, 3015, 4891, 6557, 6281, 3505, 908, 95 },
669 : { 4157, 3573, 3079, 4962, 6573, 6170, 3340, 831, 83 },
670 : { 4281, 3662, 3141, 5029, 6584, 6058, 3181, 760, 72 },
671 : { 4405, 3750, 3201, 5093, 6588, 5943, 3029, 696, 63 },
672 : { 4529, 3837, 3260, 5152, 6587, 5826, 2883, 638, 56 },
673 : { 4652, 3922, 3317, 5209, 6582, 5709, 2744, 584, 49 },
674 : { 4775, 4007, 3373, 5262, 6572, 5590, 2610, 536, 43 },
675 : { 4899, 4090, 3427, 5312, 6557, 5470, 2483, 492, 38 },
676 : { 5022, 4173, 3480, 5359, 6538, 5351, 2361, 451, 33 },
677 : { 5145, 4254, 3531, 5403, 6515, 5231, 2246, 414, 29 },
678 : { 5268, 4334, 3581, 5443, 6489, 5112, 2135, 380, 26 },
679 : { 5391, 4414, 3629, 5481, 6458, 4993, 2029, 350, 23 },
680 : { 5514, 4492, 3676, 5515, 6425, 4875, 1929, 321, 21 },
681 : { 5637, 4569, 3721, 5548, 6388, 4758, 1833, 296, 18 },
682 : { 5759, 4645, 3766, 5577, 6349, 4642, 1742, 272, 16 },
683 : { 5881, 4720, 3808, 5604, 6307, 4528, 1656, 250, 14 },
684 : { 6004, 4794, 3849, 5628, 6262, 4414, 1573, 231, 13 },
685 : { 6126, 4867, 3890, 5649, 6215, 4302, 1495, 213, 11 },
686 : { 6248, 4939, 3928, 5669, 6166, 4192, 1420, 196, 10 },
687 : { 6370, 5010, 3966, 5686, 6114, 4083, 1349, 181, 9 },
688 : { 6492, 5080, 4002, 5700, 6061, 3976, 1282, 167, 8 },
689 : { 6614, 5149, 4037, 5712, 6006, 3871, 1218, 154, 7 },
690 : { 6735, 5217, 4070, 5723, 5950, 3767, 1157, 142, 7 },
691 : { 6857, 5284, 4103, 5731, 5891, 3666, 1099, 131, 6 },
692 : { 6978, 5351, 4134, 5737, 5832, 3566, 1044, 121, 5 },
693 : { 7099, 5415, 4164, 5741, 5771, 3469, 992, 112, 5 },
694 : { 7221, 5479, 4192, 5743, 5709, 3373, 943, 104, 4 },
695 : { 7342, 5542, 4220, 5743, 5646, 3279, 896, 96, 4 },
696 : { 7462, 5604, 4246, 5742, 5583, 3187, 851, 89, 4 },
697 : { 7584, 5665, 4272, 5739, 5518, 3097, 808, 82, 3 },
698 : { 7704, 5725, 4296, 5734, 5453, 3009, 768, 76, 3 },
699 : { 7825, 5784, 4318, 5727, 5386, 2924, 730, 71, 3 },
700 : { 7945, 5843, 4341, 5719, 5320, 2840, 693, 65, 2 },
701 : { 8066, 5900, 4361, 5709, 5252, 2758, 659, 61, 2 },
702 : { 8186, 5956, 4381, 5698, 5185, 2678, 626, 56, 2 },
703 : { 8306, 6011, 4400, 5685, 5117, 2600, 595, 52, 2 },
704 : { 8426, 6066, 4418, 5671, 5049, 2523, 565, 48, 2 },
705 : { 8547, 6119, 4434, 5655, 4981, 2449, 537, 45, 1 },
706 : { 8666, 6171, 4450, 5638, 4912, 2377, 511, 42, 1 },
707 : { 8786, 6223, 4465, 5620, 4843, 2306, 485, 39, 1 },
708 : { 8906, 6274, 4478, 5600, 4775, 2237, 461, 36, 1 },
709 : { 9025, 6323, 4491, 5580, 4706, 2170, 438, 34, 1 },
710 : { 9144, 6372, 4503, 5558, 4637, 2105, 417, 31, 1 },
711 : { 9264, 6420, 4514, 5535, 4568, 2041, 396, 29, 1 },
712 : { 9383, 6467, 4524, 5511, 4500, 1979, 376, 27, 1 },
713 : { 9502, 6513, 4532, 5486, 4432, 1919, 358, 25, 1 },
714 : { 9621, 6558, 4541, 5460, 4364, 1860, 340, 23, 1 },
715 : { 9740, 6602, 4548, 5433, 4296, 1803, 323, 22, 1 },
716 : { 9859, 6645, 4554, 5405, 4229, 1748, 307, 20, 1 },
717 : { 9978, 6688, 4559, 5376, 4161, 1694, 292, 19, 1 },
718 : { 10096, 6729, 4564, 5347, 4094, 1641, 278, 18, 1 },
719 : { 10215, 6770, 4568, 5316, 4028, 1590, 264, 16, 1 },
720 : { 10333, 6809, 4571, 5285, 3962, 1541, 251, 15, 1 },
721 : { 10452, 6848, 4573, 5253, 3896, 1492, 239, 14, 1 },
722 : { 10570, 6886, 4574, 5220, 3831, 1446, 227, 13, 1 },
723 : { 10688, 6923, 4575, 5186, 3767, 1400, 216, 12, 1 },
724 : { 10806, 6959, 4575, 5152, 3702, 1356, 205, 12, 1 },
725 : { 10924, 6994, 4574, 5117, 3639, 1313, 195, 11, 1 },
726 : { 11041, 7029, 4572, 5082, 3576, 1271, 186, 10, 1 },
727 : { 11159, 7062, 4570, 5046, 3513, 1231, 177, 9, 1 },
728 : { 11277, 7095, 4566, 5009, 3451, 1192, 168, 9, 1 },
729 : { 11394, 7127, 4563, 4972, 3390, 1153, 160, 8, 1 },
730 : { 11512, 7158, 4558, 4934, 3329, 1116, 152, 8, 1 },
731 : { 11629, 7188, 4553, 4896, 3269, 1080, 145, 7, 1 },
732 : { 11746, 7217, 4547, 4857, 3210, 1045, 138, 7, 1 },
733 : { 11864, 7245, 4540, 4818, 3151, 1012, 131, 6, 1 },
734 : { 11980, 7273, 4533, 4779, 3093, 979, 124, 6, 1 },
735 : { 12097, 7300, 4525, 4739, 3035, 947, 118, 6, 1 },
736 : { 12215, 7326, 4516, 4698, 2978, 916, 113, 5, 1 },
737 : { 12331, 7351, 4507, 4658, 2922, 886, 107, 5, 1 },
738 : { 12448, 7375, 4497, 4617, 2866, 857, 102, 5, 1 },
739 : { 12564, 7398, 4487, 4576, 2812, 829, 97, 4, 1 },
740 : { 12681, 7421, 4476, 4534, 2757, 802, 92, 4, 1 },
741 : { 12797, 7443, 4464, 4492, 2704, 775, 88, 4, 1 },
742 : { 12914, 7464, 4452, 4450, 2651, 749, 84, 3, 1 },
743 : { 13030, 7484, 4439, 4408, 2599, 725, 79, 3, 1 },
744 : { 13147, 7503, 4426, 4365, 2547, 700, 76, 3, 1 },
745 : { 13262, 7522, 4412, 4322, 2497, 677, 72, 3, 1 },
746 : { 13378, 7539, 4398, 4280, 2447, 654, 68, 3, 1 },
747 : { 13494, 7556, 4383, 4237, 2397, 632, 65, 3, 1 },
748 : { 13610, 7573, 4368, 4193, 2348, 611, 62, 2, 1 },
749 : { 13726, 7588, 4352, 4150, 2300, 590, 59, 2, 1 },
750 : { 13841, 7602, 4335, 4107, 2253, 571, 56, 2, 1 },
751 : { 13957, 7616, 4318, 4063, 2207, 551, 53, 2, 1 },
752 : { 14072, 7629, 4301, 4019, 2161, 532, 51, 2, 1 },
753 : { 14188, 7641, 4283, 3976, 2115, 514, 48, 2, 1 },
754 : { 14302, 7652, 4265, 3932, 2071, 497, 46, 2, 1 },
755 : { 14418, 7663, 4246, 3888, 2027, 480, 44, 1, 1 },
756 : { 14533, 7673, 4227, 3844, 1984, 463, 42, 1, 1 },
757 : { 14649, 7682, 4207, 3800, 1941, 447, 40, 1, 1 },
758 : { 14763, 7690, 4187, 3757, 1899, 432, 38, 1, 1 },
759 : { 14878, 7698, 4166, 3713, 1858, 417, 36, 1, 1 },
760 : { 14993, 7705, 4146, 3669, 1817, 402, 34, 1, 1 },
761 : { 15109, 7711, 4124, 3625, 1777, 388, 32, 1, 1 },
762 : { 15223, 7715, 4103, 3581, 1738, 375, 31, 1, 1 },
763 : { 15337, 7720, 4081, 3538, 1699, 362, 29, 1, 1 },
764 : { 15452, 7724, 4058, 3494, 1661, 349, 28, 1, 1 },
765 : { 15567, 7727, 4035, 3450, 1624, 337, 26, 1, 1 },
766 : { 15681, 7729, 4012, 3407, 1587, 325, 25, 1, 1 },
767 : { 15795, 7730, 3989, 3364, 1551, 313, 24, 1, 1 },
768 : { 15909, 7731, 3965, 3320, 1516, 302, 23, 1, 1 },
769 : { 16024, 7731, 3940, 3277, 1481, 291, 22, 1, 1 },
770 : { 16138, 7730, 3916, 3234, 1446, 281, 21, 1, 1 },
771 : { 16252, 7728, 3891, 3191, 1413, 271, 20, 1, 1 },
772 : { 16366, 7726, 3866, 3148, 1380, 261, 19, 1, 1 },
773 : { 16480, 7723, 3840, 3106, 1347, 252, 18, 1, 1 },
774 : { 16594, 7720, 3814, 3063, 1315, 243, 17, 1, 1 },
775 : { 16708, 7715, 3788, 3021, 1284, 234, 16, 1, 1 },
776 : { 16822, 7710, 3762, 2979, 1253, 225, 15, 1, 1 },
777 : { 16936, 7704, 3735, 2937, 1223, 217, 14, 1, 1 },
778 : { 17050, 7697, 3708, 2895, 1193, 209, 14, 1, 1 },
779 : { 17162, 7690, 3681, 2854, 1164, 202, 13, 1, 1 },
780 : { 17276, 7682, 3654, 2812, 1136, 194, 12, 1, 1 },
781 : { 17389, 7673, 3626, 2771, 1108, 187, 12, 1, 1 },
782 : { 17504, 7663, 3598, 2730, 1080, 180, 11, 1, 1 },
783 : { 17617, 7653, 3570, 2689, 1053, 173, 11, 1, 1 },
784 : { 17730, 7642, 3541, 2649, 1027, 167, 10, 1, 1 },
785 : { 17843, 7630, 3513, 2608, 1001, 161, 10, 1, 1 },
786 : { 17957, 7618, 3484, 2569, 975, 154, 9, 1, 1 },
787 : { 18069, 7605, 3455, 2529, 950, 149, 9, 1, 1 },
788 : { 18183, 7591, 3426, 2489, 926, 143, 8, 1, 1 },
789 : { 18296, 7576, 3396, 2450, 902, 138, 8, 1, 1 },
790 : { 18410, 7562, 3366, 2411, 878, 132, 7, 1, 1 },
791 : { 18523, 7545, 3337, 2372, 855, 127, 7, 1, 1 },
792 : { 18636, 7529, 3306, 2333, 833, 122, 7, 1, 1 },
793 : { 18749, 7511, 3276, 2295, 811, 118, 6, 1, 1 },
794 : { 18862, 7493, 3246, 2257, 789, 113, 6, 1, 1 },
795 : { 18975, 7474, 3215, 2219, 768, 109, 6, 1, 1 },
796 : { 19088, 7455, 3185, 2182, 747, 104, 5, 1, 1 },
797 : { 19201, 7435, 3154, 2144, 727, 100, 5, 1, 1 },
798 : { 19314, 7414, 3123, 2107, 707, 96, 5, 1, 1 },
799 : { 19427, 7392, 3092, 2071, 687, 92, 5, 1, 1 },
800 : { 19541, 7370, 3060, 2034, 668, 89, 4, 1, 1 },
801 : { 19654, 7347, 3029, 1998, 649, 85, 4, 1, 1 },
802 : { 19766, 7323, 2997, 1963, 631, 82, 4, 1, 1 },
803 : { 19878, 7299, 2966, 1927, 613, 79, 4, 1, 1 },
804 : { 19991, 7274, 2934, 1892, 596, 75, 4, 1, 1 },
805 : { 20105, 7248, 2902, 1857, 579, 72, 3, 1, 1 },
806 : { 20218, 7222, 2870, 1822, 562, 69, 3, 1, 1 },
807 : { 20331, 7195, 2838, 1788, 545, 66, 3, 1, 1 },
808 : { 20443, 7167, 2806, 1754, 529, 64, 3, 1, 1 },
809 : { 20556, 7138, 2774, 1720, 514, 61, 3, 1, 1 },
810 : { 20670, 7109, 2741, 1687, 498, 58, 3, 1, 1 },
811 : { 20783, 7079, 2709, 1654, 483, 56, 2, 1, 1 },
812 : { 20895, 7049, 2676, 1621, 469, 54, 2, 1, 1 },
813 : { 21008, 7017, 2644, 1589, 455, 51, 2, 1, 1 },
814 : { 21121, 6985, 2611, 1557, 441, 49, 2, 1, 1 },
815 : { 21234, 6953, 2578, 1525, 427, 47, 2, 1, 1 },
816 : { 21347, 6919, 2545, 1494, 414, 45, 2, 1, 1 },
817 : { 21460, 6885, 2513, 1462, 401, 43, 2, 1, 1 },
818 : { 21573, 6850, 2480, 1432, 388, 41, 2, 1, 1 },
819 : { 21687, 6815, 2447, 1401, 375, 39, 2, 1, 1 },
820 : { 21801, 6778, 2414, 1371, 363, 38, 1, 1, 1 },
821 : { 21914, 6741, 2381, 1341, 352, 36, 1, 1, 1 },
822 : { 22028, 6704, 2348, 1311, 340, 34, 1, 1, 1 },
823 : { 22141, 6665, 2315, 1282, 329, 33, 1, 1, 1 },
824 : { 22255, 6626, 2282, 1253, 318, 31, 1, 1, 1 },
825 : { 22368, 6586, 2249, 1225, 307, 30, 1, 1, 1 },
826 : { 22482, 6546, 2216, 1196, 297, 28, 1, 1, 1 },
827 : { 22595, 6505, 2183, 1169, 286, 27, 1, 1, 1 },
828 : { 22709, 6463, 2149, 1141, 277, 26, 1, 1, 1 },
829 : { 22823, 6420, 2116, 1114, 267, 25, 1, 1, 1 },
830 : { 22938, 6377, 2083, 1087, 257, 23, 1, 1, 1 },
831 : { 23053, 6332, 2050, 1060, 248, 22, 1, 1, 1 },
832 : { 23167, 6287, 2017, 1034, 239, 21, 1, 1, 1 },
833 : { 23280, 6242, 1984, 1008, 231, 20, 1, 1, 1 },
834 : { 23396, 6195, 1951, 982, 222, 19, 1, 1, 1 },
835 : { 23510, 6148, 1918, 957, 214, 18, 1, 1, 1 },
836 : { 23625, 6100, 1885, 932, 206, 17, 1, 1, 1 },
837 : { 23741, 6051, 1852, 907, 198, 16, 1, 1, 1 },
838 : { 23855, 6002, 1819, 883, 190, 16, 1, 1, 1 },
839 : { 23971, 5951, 1786, 859, 183, 15, 1, 1, 1 },
840 : { 24087, 5900, 1753, 835, 176, 14, 1, 1, 1 },
841 : { 24203, 5848, 1720, 812, 169, 13, 1, 1, 1 },
842 : { 24318, 5796, 1687, 789, 162, 13, 1, 1, 1 },
843 : { 24435, 5742, 1655, 766, 155, 12, 1, 1, 1 },
844 : { 24552, 5688, 1622, 743, 149, 11, 1, 1, 1 },
845 : { 24669, 5632, 1589, 721, 143, 11, 1, 1, 1 },
846 : { 24786, 5576, 1557, 699, 137, 10, 1, 1, 1 },
847 : { 24903, 5519, 1524, 678, 131, 10, 1, 1, 1 },
848 : { 25021, 5462, 1491, 657, 125, 9, 1, 1, 1 },
849 : { 25139, 5403, 1459, 636, 120, 8, 1, 1, 1 },
850 : { 25258, 5343, 1427, 615, 114, 8, 1, 1, 1 },
851 : { 25376, 5283, 1394, 595, 109, 8, 1, 1, 1 },
852 : { 25496, 5221, 1362, 575, 104, 7, 1, 1, 1 },
853 : { 25614, 5159, 1330, 556, 99, 7, 1, 1, 1 },
854 : { 25735, 5096, 1298, 536, 94, 6, 1, 1, 1 },
855 : { 25856, 5031, 1265, 517, 90, 6, 1, 1, 1 },
856 : { 25977, 4966, 1233, 499, 85, 5, 1, 1, 1 },
857 : { 26098, 4899, 1202, 480, 81, 5, 1, 1, 1 },
858 : { 26220, 4831, 1170, 462, 77, 5, 1, 1, 1 },
859 : { 26343, 4763, 1138, 444, 73, 4, 1, 1, 1 },
860 : { 26466, 4693, 1106, 427, 69, 4, 1, 1, 1 },
861 : { 26589, 4622, 1075, 410, 65, 4, 1, 1, 1 },
862 : { 26713, 4550, 1043, 393, 62, 4, 1, 1, 1 },
863 : { 26840, 4476, 1012, 376, 58, 3, 1, 1, 1 },
864 : { 26966, 4401, 980, 360, 55, 3, 1, 1, 1 },
865 : { 27092, 4325, 949, 344, 52, 3, 1, 1, 1 },
866 : { 27220, 4248, 918, 328, 48, 3, 1, 1, 1 },
867 : { 27350, 4169, 886, 313, 45, 2, 1, 1, 1 },
868 : { 27480, 4088, 855, 298, 42, 2, 1, 1, 1 },
869 : { 27610, 4006, 824, 283, 40, 2, 1, 1, 1 },
870 : { 27743, 3922, 793, 268, 37, 2, 1, 1, 1 },
871 : { 27876, 3837, 762, 254, 34, 2, 1, 1, 1 },
872 : { 28011, 3749, 731, 240, 32, 2, 1, 1, 1 },
873 : { 28147, 3659, 701, 227, 30, 1, 1, 1, 1 },
874 : { 28286, 3568, 670, 213, 27, 1, 1, 1, 1 },
875 : { 28426, 3474, 639, 200, 25, 1, 1, 1, 1 },
876 : { 28569, 3377, 608, 187, 23, 1, 1, 1, 1 },
877 : { 28714, 3278, 577, 174, 21, 1, 1, 1, 1 },
878 : { 28860, 3176, 547, 162, 19, 1, 1, 1, 1 },
879 : { 29010, 3071, 516, 150, 17, 1, 1, 1, 1 },
880 : { 29163, 2962, 485, 138, 16, 1, 1, 1, 1 },
881 : { 29320, 2849, 454, 127, 14, 1, 1, 1, 1 },
882 : { 29483, 2731, 423, 115, 12, 1, 1, 1, 1 },
883 : { 29650, 2608, 391, 104, 11, 1, 1, 1, 1 },
884 : { 29823, 2479, 360, 93, 9, 1, 1, 1, 1 },
885 : { 30002, 2343, 328, 83, 8, 1, 1, 1, 1 },
886 : { 30192, 2198, 295, 72, 7, 1, 1, 1, 1 },
887 : { 30393, 2041, 262, 62, 6, 1, 1, 1, 1 },
888 : { 30612, 1869, 227, 52, 4, 1, 1, 1, 1 },
889 : { 30853, 1676, 191, 41, 3, 1, 1, 1, 1 },
890 : { 31131, 1448, 152, 31, 2, 1, 1, 1, 1 },
891 : { 31486, 1150, 107, 20, 1, 1, 1, 1, 1 },
892 : };
893 :
894 : /* clang-format off */
895 : #if CONFIG_Q_ADAPT_PROBS
896 : const av1_coeff_probs_model
897 : default_qctx_coef_probs[QCTX_BINS][TX_SIZES][PLANE_TYPES] = {
898 : { // Q_Index 0
899 : #if CONFIG_CHROMA_2X2
900 : { // TX_SIZE 0
901 : { // Y plane
902 : { // Intra
903 : { // band 0
904 : {182, 34, 137}, { 79, 39, 103}, { 10, 28, 51},
905 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
906 : },
907 : { // band 1
908 : { 45, 88, 147}, { 46, 80, 140}, { 25, 69, 119},
909 : { 12, 57, 96}, { 4, 41, 65}, { 1, 20, 31},
910 : },
911 : { // band 2
912 : { 58, 124, 190}, { 39, 106, 178}, { 16, 86, 147},
913 : { 7, 69, 114}, { 3, 50, 80}, { 1, 25, 42},
914 : },
915 : { // band 3
916 : { 90, 138, 215}, { 54, 116, 198}, { 18, 86, 155},
917 : { 5, 62, 112}, { 1, 38, 68}, { 1, 17, 30},
918 : },
919 : { // band 4
920 : {126, 149, 231}, { 82, 114, 211}, { 21, 80, 157},
921 : { 6, 56, 105}, { 1, 36, 64}, { 1, 17, 31},
922 : },
923 : { // band 5
924 : {171, 56, 236}, {140, 54, 219}, { 57, 45, 167},
925 : { 26, 36, 113}, { 11, 29, 72}, { 3, 18, 39},
926 : },
927 : },
928 : { // Intra
929 : { // band 0
930 : {153, 122, 186}, {106, 109, 171}, { 36, 84, 128},
931 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
932 : },
933 : { // band 1
934 : { 27, 151, 201}, { 34, 131, 199}, { 23, 102, 161},
935 : { 10, 80, 120}, { 4, 52, 78}, { 1, 24, 37},
936 : },
937 : { // band 2
938 : { 43, 158, 213}, { 35, 133, 203}, { 8, 92, 151},
939 : { 2, 64, 106}, { 1, 36, 60}, { 1, 13, 24},
940 : },
941 : { // band 3
942 : { 68, 167, 223}, { 36, 135, 211}, { 9, 94, 157},
943 : { 2, 67, 112}, { 1, 40, 68}, { 1, 17, 31},
944 : },
945 : { // band 4
946 : {131, 146, 237}, { 72, 119, 223}, { 17, 82, 164},
947 : { 4, 55, 107}, { 1, 34, 63}, { 1, 16, 29},
948 : },
949 : { // band 5
950 : {184, 68, 244}, {153, 59, 232}, { 68, 51, 179},
951 : { 31, 40, 123}, { 13, 29, 77}, { 4, 17, 37},
952 : },
953 : },
954 : },
955 : { // UV plane
956 : { // Inter
957 : { // band 0
958 : {203, 41, 203}, {127, 56, 174}, { 49, 56, 127},
959 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
960 : },
961 : { // band 1
962 : {110, 121, 217}, {119, 113, 213}, { 64, 95, 185},
963 : { 30, 72, 144}, { 8, 42, 76}, { 2, 17, 25},
964 : },
965 : { // band 2
966 : {127, 159, 229}, {115, 134, 223}, { 36, 100, 189},
967 : { 11, 75, 142}, { 3, 48, 83}, { 1, 19, 33},
968 : },
969 : { // band 3
970 : {150, 172, 241}, { 90, 133, 231}, { 28, 102, 192},
971 : { 7, 81, 147}, { 1, 53, 91}, { 1, 25, 42},
972 : },
973 : { // band 4
974 : {184, 144, 248}, {114, 117, 237}, { 37, 89, 192},
975 : { 10, 63, 130}, { 4, 42, 76}, { 1, 19, 38},
976 : },
977 : { // band 5
978 : {207, 79, 250}, {179, 74, 241}, { 83, 67, 199},
979 : { 38, 51, 142}, { 17, 37, 97}, { 10, 14, 55},
980 : },
981 : },
982 : { // Inter
983 : { // band 0
984 : {220, 82, 232}, {150, 93, 214}, { 66, 95, 177},
985 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
986 : },
987 : { // band 1
988 : {116, 160, 227}, {136, 141, 227}, { 67, 114, 190},
989 : { 40, 94, 148}, { 21, 70, 107}, { 10, 43, 63},
990 : },
991 : { // band 2
992 : {124, 173, 235}, {105, 147, 226}, { 27, 107, 184},
993 : { 10, 80, 142}, { 3, 50, 86}, { 1, 16, 32},
994 : },
995 : { // band 3
996 : {149, 179, 243}, { 89, 147, 234}, { 29, 112, 193},
997 : { 9, 94, 157}, { 1, 64, 111}, { 1, 25, 43},
998 : },
999 : { // band 4
1000 : {187, 153, 248}, {127, 130, 241}, { 52, 99, 202},
1001 : { 20, 79, 152}, { 4, 50, 93}, { 1, 19, 32},
1002 : },
1003 : { // band 5
1004 : {215, 82, 251}, {195, 80, 246}, { 93, 70, 204},
1005 : { 39, 54, 147}, { 14, 33, 88}, { 6, 14, 39},
1006 : },
1007 : },
1008 : },
1009 : },
1010 : #endif
1011 : { // TX_SIZE 0
1012 : { // Y plane
1013 : { // Intra
1014 : { // band 0
1015 : {182, 34, 137}, { 79, 39, 103}, { 10, 28, 51},
1016 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1017 : },
1018 : { // band 1
1019 : { 45, 88, 147}, { 46, 80, 140}, { 25, 69, 119},
1020 : { 12, 57, 96}, { 4, 41, 65}, { 1, 20, 31},
1021 : },
1022 : { // band 2
1023 : { 58, 124, 190}, { 39, 106, 178}, { 16, 86, 147},
1024 : { 7, 69, 114}, { 3, 50, 80}, { 1, 25, 42},
1025 : },
1026 : { // band 3
1027 : { 90, 138, 215}, { 54, 116, 198}, { 18, 86, 155},
1028 : { 5, 62, 112}, { 1, 38, 68}, { 1, 17, 30},
1029 : },
1030 : { // band 4
1031 : {126, 149, 231}, { 82, 114, 211}, { 21, 80, 157},
1032 : { 6, 56, 105}, { 1, 36, 64}, { 1, 17, 31},
1033 : },
1034 : { // band 5
1035 : {171, 56, 236}, {140, 54, 219}, { 57, 45, 167},
1036 : { 26, 36, 113}, { 11, 29, 72}, { 3, 18, 39},
1037 : },
1038 : },
1039 : { // Intra
1040 : { // band 0
1041 : {153, 122, 186}, {106, 109, 171}, { 36, 84, 128},
1042 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1043 : },
1044 : { // band 1
1045 : { 27, 151, 201}, { 34, 131, 199}, { 23, 102, 161},
1046 : { 10, 80, 120}, { 4, 52, 78}, { 1, 24, 37},
1047 : },
1048 : { // band 2
1049 : { 43, 158, 213}, { 35, 133, 203}, { 8, 92, 151},
1050 : { 2, 64, 106}, { 1, 36, 60}, { 1, 13, 24},
1051 : },
1052 : { // band 3
1053 : { 68, 167, 223}, { 36, 135, 211}, { 9, 94, 157},
1054 : { 2, 67, 112}, { 1, 40, 68}, { 1, 17, 31},
1055 : },
1056 : { // band 4
1057 : {131, 146, 237}, { 72, 119, 223}, { 17, 82, 164},
1058 : { 4, 55, 107}, { 1, 34, 63}, { 1, 16, 29},
1059 : },
1060 : { // band 5
1061 : {184, 68, 244}, {153, 59, 232}, { 68, 51, 179},
1062 : { 31, 40, 123}, { 13, 29, 77}, { 4, 17, 37},
1063 : },
1064 : },
1065 : },
1066 : { // UV plane
1067 : { // Inter
1068 : { // band 0
1069 : {203, 41, 203}, {127, 56, 174}, { 49, 56, 127},
1070 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1071 : },
1072 : { // band 1
1073 : {110, 121, 217}, {119, 113, 213}, { 64, 95, 185},
1074 : { 30, 72, 144}, { 8, 42, 76}, { 2, 17, 25},
1075 : },
1076 : { // band 2
1077 : {127, 159, 229}, {115, 134, 223}, { 36, 100, 189},
1078 : { 11, 75, 142}, { 3, 48, 83}, { 1, 19, 33},
1079 : },
1080 : { // band 3
1081 : {150, 172, 241}, { 90, 133, 231}, { 28, 102, 192},
1082 : { 7, 81, 147}, { 1, 53, 91}, { 1, 25, 42},
1083 : },
1084 : { // band 4
1085 : {184, 144, 248}, {114, 117, 237}, { 37, 89, 192},
1086 : { 10, 63, 130}, { 4, 42, 76}, { 1, 19, 38},
1087 : },
1088 : { // band 5
1089 : {207, 79, 250}, {179, 74, 241}, { 83, 67, 199},
1090 : { 38, 51, 142}, { 17, 37, 97}, { 10, 14, 55},
1091 : },
1092 : },
1093 : { // Inter
1094 : { // band 0
1095 : {220, 82, 232}, {150, 93, 214}, { 66, 95, 177},
1096 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1097 : },
1098 : { // band 1
1099 : {116, 160, 227}, {136, 141, 227}, { 67, 114, 190},
1100 : { 40, 94, 148}, { 21, 70, 107}, { 10, 43, 63},
1101 : },
1102 : { // band 2
1103 : {124, 173, 235}, {105, 147, 226}, { 27, 107, 184},
1104 : { 10, 80, 142}, { 3, 50, 86}, { 1, 16, 32},
1105 : },
1106 : { // band 3
1107 : {149, 179, 243}, { 89, 147, 234}, { 29, 112, 193},
1108 : { 9, 94, 157}, { 1, 64, 111}, { 1, 25, 43},
1109 : },
1110 : { // band 4
1111 : {187, 153, 248}, {127, 130, 241}, { 52, 99, 202},
1112 : { 20, 79, 152}, { 4, 50, 93}, { 1, 19, 32},
1113 : },
1114 : { // band 5
1115 : {215, 82, 251}, {195, 80, 246}, { 93, 70, 204},
1116 : { 39, 54, 147}, { 14, 33, 88}, { 6, 14, 39},
1117 : },
1118 : },
1119 : },
1120 : },
1121 : { // TX_SIZE 1
1122 : { // Y plane
1123 : { // Intra
1124 : { // band 0
1125 : {116, 43, 131}, { 39, 41, 94}, { 4, 28, 47},
1126 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1127 : },
1128 : { // band 1
1129 : { 28, 101, 141}, { 27, 95, 140}, { 18, 80, 121},
1130 : { 10, 61, 95}, { 4, 39, 60}, { 1, 19, 26},
1131 : },
1132 : { // band 2
1133 : { 29, 150, 183}, { 19, 127, 175}, { 8, 98, 147},
1134 : { 3, 76, 115}, { 1, 55, 84}, { 1, 29, 43},
1135 : },
1136 : { // band 3
1137 : { 26, 168, 202}, { 12, 138, 188}, { 2, 98, 149},
1138 : { 1, 69, 110}, { 1, 40, 65}, { 1, 17, 25},
1139 : },
1140 : { // band 4
1141 : { 33, 188, 225}, { 12, 155, 207}, { 2, 101, 155},
1142 : { 1, 65, 106}, { 1, 36, 60}, { 1, 18, 26},
1143 : },
1144 : { // band 5
1145 : { 79, 205, 242}, { 30, 168, 224}, { 5, 106, 164},
1146 : { 1, 68, 110}, { 1, 39, 65}, { 1, 18, 28},
1147 : },
1148 : },
1149 : { // Intra
1150 : { // band 0
1151 : { 96, 80, 201}, { 51, 88, 168}, { 14, 78, 116},
1152 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1153 : },
1154 : { // band 1
1155 : { 6, 167, 216}, { 32, 152, 211}, { 24, 121, 182},
1156 : { 13, 98, 149}, { 12, 76, 108}, { 8, 48, 62},
1157 : },
1158 : { // band 2
1159 : { 17, 176, 225}, { 13, 147, 209}, { 3, 96, 155},
1160 : { 1, 65, 108}, { 2, 43, 63}, { 2, 23, 25},
1161 : },
1162 : { // band 3
1163 : { 18, 183, 232}, { 10, 153, 214}, { 1, 96, 154},
1164 : { 1, 63, 105}, { 1, 39, 59}, { 1, 21, 24},
1165 : },
1166 : { // band 4
1167 : { 23, 191, 239}, { 8, 159, 221}, { 1, 97, 158},
1168 : { 1, 61, 105}, { 1, 37, 60}, { 1, 20, 26},
1169 : },
1170 : { // band 5
1171 : { 70, 201, 243}, { 29, 163, 228}, { 4, 102, 169},
1172 : { 1, 67, 114}, { 1, 39, 66}, { 1, 17, 29},
1173 : },
1174 : },
1175 : },
1176 : { // UV plane
1177 : { // Inter
1178 : { // band 0
1179 : {181, 38, 192}, { 95, 47, 151}, { 29, 49, 102},
1180 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1181 : },
1182 : { // band 1
1183 : { 72, 131, 202}, { 93, 120, 205}, { 50, 103, 179},
1184 : { 24, 79, 143}, { 11, 47, 78}, { 7, 19, 25},
1185 : },
1186 : { // band 2
1187 : { 84, 176, 221}, { 56, 144, 214}, { 21, 108, 182},
1188 : { 8, 83, 139}, { 3, 55, 90}, { 2, 27, 41},
1189 : },
1190 : { // band 3
1191 : { 84, 195, 234}, { 42, 156, 222}, { 10, 109, 180},
1192 : { 4, 77, 133}, { 1, 48, 80}, { 1, 23, 35},
1193 : },
1194 : { // band 4
1195 : { 89, 210, 238}, { 35, 165, 221}, { 6, 106, 172},
1196 : { 2, 70, 123}, { 1, 44, 74}, { 1, 21, 30},
1197 : },
1198 : { // band 5
1199 : {114, 221, 247}, { 49, 170, 234}, { 7, 113, 184},
1200 : { 2, 77, 132}, { 1, 48, 79}, { 1, 25, 33},
1201 : },
1202 : },
1203 : { // Inter
1204 : { // band 0
1205 : {192, 66, 237}, {113, 84, 211}, { 35, 84, 154},
1206 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1207 : },
1208 : { // band 1
1209 : { 81, 180, 234}, {127, 165, 229}, { 58, 137, 204},
1210 : { 41, 114, 174}, { 44, 94, 136}, { 29, 66, 86},
1211 : },
1212 : { // band 2
1213 : { 82, 193, 240}, { 39, 162, 223}, { 8, 113, 179},
1214 : { 3, 83, 136}, { 6, 62, 84}, { 5, 45, 45},
1215 : },
1216 : { // band 3
1217 : { 78, 203, 242}, { 31, 170, 227}, { 4, 115, 181},
1218 : { 1, 82, 135}, { 2, 59, 82}, { 1, 45, 47},
1219 : },
1220 : { // band 4
1221 : { 76, 210, 239}, { 25, 170, 213}, { 2, 99, 152},
1222 : { 1, 69, 115}, { 1, 49, 80}, { 1, 47, 57},
1223 : },
1224 : { // band 5
1225 : {103, 217, 250}, { 42, 180, 237}, { 3, 124, 191},
1226 : { 1, 90, 150}, { 1, 69, 116}, { 1, 52, 46},
1227 : },
1228 : },
1229 : },
1230 : },
1231 : { // TX_SIZE 2
1232 : { // Y plane
1233 : { // Intra
1234 : { // band 0
1235 : { 58, 38, 99}, { 9, 26, 51}, { 1, 14, 22},
1236 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1237 : },
1238 : { // band 1
1239 : { 14, 78, 109}, { 16, 73, 105}, { 11, 62, 92},
1240 : { 6, 47, 72}, { 2, 29, 45}, { 1, 12, 18},
1241 : },
1242 : { // band 2
1243 : { 17, 131, 148}, { 11, 112, 140}, { 5, 87, 118},
1244 : { 2, 63, 90}, { 1, 42, 63}, { 1, 19, 31},
1245 : },
1246 : { // band 3
1247 : { 12, 151, 168}, { 6, 116, 152}, { 1, 76, 115},
1248 : { 1, 50, 81}, { 1, 32, 52}, { 1, 14, 23},
1249 : },
1250 : { // band 4
1251 : { 10, 174, 191}, { 3, 130, 172}, { 1, 80, 126},
1252 : { 1, 53, 88}, { 1, 32, 55}, { 1, 14, 24},
1253 : },
1254 : { // band 5
1255 : { 19, 219, 237}, { 3, 168, 211}, { 1, 90, 142},
1256 : { 1, 53, 91}, { 1, 29, 51}, { 1, 12, 21},
1257 : },
1258 : },
1259 : { // Intra
1260 : { // band 0
1261 : { 21, 46, 184}, { 10, 53, 130}, { 2, 49, 78},
1262 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1263 : },
1264 : { // band 1
1265 : { 3, 169, 198}, { 37, 165, 196}, { 26, 134, 176},
1266 : { 11, 108, 149}, { 5, 81, 112}, { 3, 47, 64},
1267 : },
1268 : { // band 2
1269 : { 11, 183, 215}, { 8, 142, 192}, { 2, 91, 141},
1270 : { 1, 62, 100}, { 1, 38, 62}, { 1, 17, 28},
1271 : },
1272 : { // band 3
1273 : { 12, 190, 223}, { 6, 149, 199}, { 1, 88, 139},
1274 : { 1, 56, 93}, { 1, 31, 54}, { 1, 13, 21},
1275 : },
1276 : { // band 4
1277 : { 11, 197, 230}, { 3, 154, 204}, { 1, 83, 134},
1278 : { 1, 50, 86}, { 1, 28, 49}, { 1, 12, 21},
1279 : },
1280 : { // band 5
1281 : { 17, 211, 240}, { 2, 167, 217}, { 1, 88, 143},
1282 : { 1, 53, 91}, { 1, 30, 53}, { 1, 14, 24},
1283 : },
1284 : },
1285 : },
1286 : { // UV plane
1287 : { // Inter
1288 : { // band 0
1289 : {151, 30, 151}, { 50, 36, 105}, { 8, 34, 66},
1290 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1291 : },
1292 : { // band 1
1293 : { 39, 111, 160}, { 62, 111, 165}, { 37, 99, 147},
1294 : { 15, 77, 118}, { 3, 47, 73}, { 1, 17, 27},
1295 : },
1296 : { // band 2
1297 : { 48, 170, 190}, { 32, 135, 180}, { 11, 100, 149},
1298 : { 4, 76, 116}, { 1, 51, 80}, { 1, 22, 36},
1299 : },
1300 : { // band 3
1301 : { 39, 191, 208}, { 18, 141, 191}, { 3, 96, 150},
1302 : { 1, 66, 110}, { 1, 41, 69}, { 1, 17, 28},
1303 : },
1304 : { // band 4
1305 : { 32, 209, 219}, { 8, 152, 201}, { 1, 96, 153},
1306 : { 1, 63, 106}, { 1, 38, 66}, { 1, 17, 29},
1307 : },
1308 : { // band 5
1309 : { 33, 230, 237}, { 5, 173, 214}, { 1, 100, 155},
1310 : { 1, 62, 105}, { 1, 38, 66}, { 1, 18, 32},
1311 : },
1312 : },
1313 : { // Inter
1314 : { // band 0
1315 : {149, 38, 231}, { 59, 51, 186}, { 12, 54, 117},
1316 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1317 : },
1318 : { // band 1
1319 : { 53, 179, 226}, {126, 176, 223}, { 58, 147, 202},
1320 : { 28, 118, 174}, { 15, 94, 138}, { 14, 63, 87},
1321 : },
1322 : { // band 2
1323 : { 58, 196, 232}, { 26, 158, 213}, { 5, 106, 166},
1324 : { 1, 75, 124}, { 1, 46, 79}, { 1, 23, 39},
1325 : },
1326 : { // band 3
1327 : { 46, 203, 235}, { 17, 162, 213}, { 2, 104, 165},
1328 : { 1, 72, 120}, { 1, 44, 74}, { 1, 22, 33},
1329 : },
1330 : { // band 4
1331 : { 37, 213, 238}, { 8, 167, 216}, { 1, 104, 168},
1332 : { 1, 68, 119}, { 1, 40, 67}, { 1, 17, 29},
1333 : },
1334 : { // band 5
1335 : { 30, 228, 239}, { 4, 181, 213}, { 1, 103, 153},
1336 : { 1, 65, 110}, { 1, 43, 79}, { 1, 27, 56},
1337 : },
1338 : },
1339 : },
1340 : },
1341 : { // TX_SIZE 3
1342 : { // Y plane
1343 : { // Intra
1344 : { // band 0
1345 : { 76, 25, 53}, { 9, 18, 32}, { 1, 12, 18},
1346 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1347 : },
1348 : { // band 1
1349 : { 29, 55, 91}, { 19, 58, 95}, { 15, 57, 89},
1350 : { 12, 49, 77}, { 3, 29, 44}, { 1, 8, 12},
1351 : },
1352 : { // band 2
1353 : { 32, 160, 148}, { 33, 143, 146}, { 19, 122, 132},
1354 : { 6, 90, 102}, { 1, 58, 70}, { 1, 17, 24},
1355 : },
1356 : { // band 3
1357 : { 16, 181, 181}, { 6, 142, 165}, { 1, 90, 120},
1358 : { 1, 50, 71}, { 1, 25, 38}, { 1, 9, 14},
1359 : },
1360 : { // band 4
1361 : { 13, 203, 203}, { 3, 154, 176}, { 1, 80, 108},
1362 : { 1, 41, 61}, { 1, 24, 37}, { 1, 11, 17},
1363 : },
1364 : { // band 5
1365 : { 6, 234, 240}, { 1, 178, 204}, { 1, 80, 119},
1366 : { 1, 45, 71}, { 1, 26, 42}, { 1, 12, 19},
1367 : },
1368 : },
1369 : { // Intra
1370 : { // band 0
1371 : { 78, 20, 135}, { 25, 18, 101}, { 5, 19, 57},
1372 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1373 : },
1374 : { // band 1
1375 : { 7, 144, 183}, {117, 151, 195}, {109, 151, 187},
1376 : { 39, 130, 168}, { 11, 100, 125}, { 4, 59, 64},
1377 : },
1378 : { // band 2
1379 : { 20, 184, 212}, { 12, 148, 191}, { 2, 98, 141},
1380 : { 1, 65, 100}, { 1, 39, 61}, { 1, 14, 22},
1381 : },
1382 : { // band 3
1383 : { 15, 194, 222}, { 6, 153, 198}, { 1, 92, 138},
1384 : { 1, 58, 91}, { 1, 32, 52}, { 1, 12, 18},
1385 : },
1386 : { // band 4
1387 : { 14, 206, 232}, { 3, 162, 206}, { 1, 89, 134},
1388 : { 1, 52, 83}, { 1, 28, 46}, { 1, 11, 17},
1389 : },
1390 : { // band 5
1391 : { 6, 225, 241}, { 1, 175, 210}, { 1, 81, 125},
1392 : { 1, 48, 78}, { 1, 28, 46}, { 1, 13, 21},
1393 : },
1394 : },
1395 : },
1396 : { // UV plane
1397 : { // Inter
1398 : { // band 0
1399 : {124, 23, 93}, { 31, 24, 63}, { 6, 24, 46},
1400 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1401 : },
1402 : { // band 1
1403 : { 23, 86, 126}, { 45, 90, 145}, { 31, 91, 133},
1404 : { 19, 80, 114}, { 7, 53, 72}, { 1, 20, 27},
1405 : },
1406 : { // band 2
1407 : { 51, 186, 189}, { 48, 159, 182}, { 33, 128, 156},
1408 : { 15, 92, 124}, { 2, 62, 83}, { 1, 29, 43},
1409 : },
1410 : { // band 3
1411 : { 36, 198, 211}, { 15, 156, 187}, { 3, 97, 137},
1412 : { 1, 61, 93}, { 1, 35, 57}, { 1, 15, 23},
1413 : },
1414 : { // band 4
1415 : { 34, 219, 223}, { 9, 162, 193}, { 1, 91, 136},
1416 : { 1, 58, 92}, { 1, 35, 54}, { 1, 14, 23},
1417 : },
1418 : { // band 5
1419 : { 19, 243, 243}, { 3, 191, 208}, { 1, 91, 137},
1420 : { 1, 56, 90}, { 1, 34, 55}, { 1, 16, 24},
1421 : },
1422 : },
1423 : { // Inter
1424 : { // band 0
1425 : {119, 20, 197}, { 19, 29, 156}, { 3, 30, 107},
1426 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1427 : },
1428 : { // band 1
1429 : { 24, 192, 226}, {161, 193, 227}, { 97, 185, 222},
1430 : { 31, 158, 204}, { 16, 122, 165}, { 17, 84, 112},
1431 : },
1432 : { // band 2
1433 : { 26, 202, 229}, { 11, 165, 210}, { 2, 103, 152},
1434 : { 1, 68, 104}, { 1, 42, 70}, { 1, 16, 36},
1435 : },
1436 : { // band 3
1437 : { 24, 209, 237}, { 6, 169, 214}, { 1, 102, 154},
1438 : { 1, 65, 107}, { 1, 45, 68}, { 1, 17, 24},
1439 : },
1440 : { // band 4
1441 : { 19, 219, 243}, { 4, 183, 226}, { 1, 115, 172},
1442 : { 1, 73, 119}, { 1, 43, 77}, { 1, 15, 37},
1443 : },
1444 : { // band 5
1445 : { 11, 237, 241}, { 2, 190, 216}, { 1, 108, 146},
1446 : { 1, 59, 94}, { 1, 40, 67}, { 1, 30, 53},
1447 : },
1448 : },
1449 : },
1450 : },
1451 : #if CONFIG_TX64X64
1452 : { // TX_SIZE 4
1453 : { // Y plane
1454 : { // Intra
1455 : { // band 0
1456 : { 76, 25, 53}, { 9, 18, 32}, { 1, 12, 18},
1457 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1458 : },
1459 : { // band 1
1460 : { 29, 55, 91}, { 19, 58, 95}, { 15, 57, 89},
1461 : { 12, 49, 77}, { 3, 29, 44}, { 1, 8, 12},
1462 : },
1463 : { // band 2
1464 : { 32, 160, 148}, { 33, 143, 146}, { 19, 122, 132},
1465 : { 6, 90, 102}, { 1, 58, 70}, { 1, 17, 24},
1466 : },
1467 : { // band 3
1468 : { 16, 181, 181}, { 6, 142, 165}, { 1, 90, 120},
1469 : { 1, 50, 71}, { 1, 25, 38}, { 1, 9, 14},
1470 : },
1471 : { // band 4
1472 : { 13, 203, 203}, { 3, 154, 176}, { 1, 80, 108},
1473 : { 1, 41, 61}, { 1, 24, 37}, { 1, 11, 17},
1474 : },
1475 : { // band 5
1476 : { 6, 234, 240}, { 1, 178, 204}, { 1, 80, 119},
1477 : { 1, 45, 71}, { 1, 26, 42}, { 1, 12, 19},
1478 : },
1479 : },
1480 : { // Intra
1481 : { // band 0
1482 : { 78, 20, 135}, { 25, 18, 101}, { 5, 19, 57},
1483 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1484 : },
1485 : { // band 1
1486 : { 7, 144, 183}, {117, 151, 195}, {109, 151, 187},
1487 : { 39, 130, 168}, { 11, 100, 125}, { 4, 59, 64},
1488 : },
1489 : { // band 2
1490 : { 20, 184, 212}, { 12, 148, 191}, { 2, 98, 141},
1491 : { 1, 65, 100}, { 1, 39, 61}, { 1, 14, 22},
1492 : },
1493 : { // band 3
1494 : { 15, 194, 222}, { 6, 153, 198}, { 1, 92, 138},
1495 : { 1, 58, 91}, { 1, 32, 52}, { 1, 12, 18},
1496 : },
1497 : { // band 4
1498 : { 14, 206, 232}, { 3, 162, 206}, { 1, 89, 134},
1499 : { 1, 52, 83}, { 1, 28, 46}, { 1, 11, 17},
1500 : },
1501 : { // band 5
1502 : { 6, 225, 241}, { 1, 175, 210}, { 1, 81, 125},
1503 : { 1, 48, 78}, { 1, 28, 46}, { 1, 13, 21},
1504 : },
1505 : },
1506 : },
1507 : { // UV plane
1508 : { // Inter
1509 : { // band 0
1510 : {124, 23, 93}, { 31, 24, 63}, { 6, 24, 46},
1511 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1512 : },
1513 : { // band 1
1514 : { 23, 86, 126}, { 45, 90, 145}, { 31, 91, 133},
1515 : { 19, 80, 114}, { 7, 53, 72}, { 1, 20, 27},
1516 : },
1517 : { // band 2
1518 : { 51, 186, 189}, { 48, 159, 182}, { 33, 128, 156},
1519 : { 15, 92, 124}, { 2, 62, 83}, { 1, 29, 43},
1520 : },
1521 : { // band 3
1522 : { 36, 198, 211}, { 15, 156, 187}, { 3, 97, 137},
1523 : { 1, 61, 93}, { 1, 35, 57}, { 1, 15, 23},
1524 : },
1525 : { // band 4
1526 : { 34, 219, 223}, { 9, 162, 193}, { 1, 91, 136},
1527 : { 1, 58, 92}, { 1, 35, 54}, { 1, 14, 23},
1528 : },
1529 : { // band 5
1530 : { 19, 243, 243}, { 3, 191, 208}, { 1, 91, 137},
1531 : { 1, 56, 90}, { 1, 34, 55}, { 1, 16, 24},
1532 : },
1533 : },
1534 : { // Inter
1535 : { // band 0
1536 : {119, 20, 197}, { 19, 29, 156}, { 3, 30, 107},
1537 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1538 : },
1539 : { // band 1
1540 : { 24, 192, 226}, {161, 193, 227}, { 97, 185, 222},
1541 : { 31, 158, 204}, { 16, 122, 165}, { 17, 84, 112},
1542 : },
1543 : { // band 2
1544 : { 26, 202, 229}, { 11, 165, 210}, { 2, 103, 152},
1545 : { 1, 68, 104}, { 1, 42, 70}, { 1, 16, 36},
1546 : },
1547 : { // band 3
1548 : { 24, 209, 237}, { 6, 169, 214}, { 1, 102, 154},
1549 : { 1, 65, 107}, { 1, 45, 68}, { 1, 17, 24},
1550 : },
1551 : { // band 4
1552 : { 19, 219, 243}, { 4, 183, 226}, { 1, 115, 172},
1553 : { 1, 73, 119}, { 1, 43, 77}, { 1, 15, 37},
1554 : },
1555 : { // band 5
1556 : { 11, 237, 241}, { 2, 190, 216}, { 1, 108, 146},
1557 : { 1, 59, 94}, { 1, 40, 67}, { 1, 30, 53},
1558 : },
1559 : },
1560 : },
1561 : },
1562 : #endif // CONFIG_TX64X64
1563 : },
1564 : { // Q_Index 1
1565 : #if CONFIG_CHROMA_2X2
1566 : { // TX_SIZE 0
1567 : { // Y plane
1568 : { // Intra
1569 : { // band 0
1570 : {174, 30, 159}, { 76, 38, 115}, { 15, 33, 65},
1571 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1572 : },
1573 : { // band 1
1574 : { 60, 80, 153}, { 72, 75, 147}, { 36, 68, 129},
1575 : { 15, 59, 104}, { 4, 45, 74}, { 1, 28, 45},
1576 : },
1577 : { // band 2
1578 : { 70, 122, 186}, { 55, 104, 175}, { 21, 83, 144},
1579 : { 8, 67, 112}, { 2, 51, 82}, { 1, 34, 57},
1580 : },
1581 : { // band 3
1582 : { 97, 144, 207}, { 52, 109, 195}, { 16, 77, 153},
1583 : { 4, 58, 113}, { 1, 43, 77}, { 1, 27, 48},
1584 : },
1585 : { // band 4
1586 : {128, 148, 229}, { 76, 104, 210}, { 18, 77, 159},
1587 : { 4, 65, 110}, { 1, 52, 82}, { 1, 31, 55},
1588 : },
1589 : { // band 5
1590 : {165, 51, 238}, {128, 50, 230}, { 57, 49, 185},
1591 : { 28, 47, 130}, { 12, 44, 96}, { 3, 36, 60},
1592 : },
1593 : },
1594 : { // Intra
1595 : { // band 0
1596 : {169, 103, 203}, {117, 96, 176}, { 56, 81, 137},
1597 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1598 : },
1599 : { // band 1
1600 : { 31, 150, 224}, { 49, 128, 212}, { 19, 92, 165},
1601 : { 6, 67, 116}, { 2, 43, 71}, { 1, 21, 36},
1602 : },
1603 : { // band 2
1604 : { 58, 156, 230}, { 47, 130, 215}, { 7, 87, 158},
1605 : { 2, 63, 114}, { 1, 39, 71}, { 1, 18, 36},
1606 : },
1607 : { // band 3
1608 : { 85, 176, 240}, { 43, 138, 226}, { 8, 93, 172},
1609 : { 2, 70, 127}, { 1, 46, 81}, { 1, 26, 47},
1610 : },
1611 : { // band 4
1612 : {155, 144, 248}, { 93, 116, 235}, { 21, 83, 180},
1613 : { 4, 59, 119}, { 1, 43, 80}, { 1, 25, 50},
1614 : },
1615 : { // band 5
1616 : {203, 61, 250}, {171, 57, 243}, { 71, 57, 199},
1617 : { 31, 49, 144}, { 13, 42, 96}, { 7, 30, 52},
1618 : },
1619 : },
1620 : },
1621 : { // UV plane
1622 : { // Inter
1623 : { // band 0
1624 : {204, 44, 204}, {137, 57, 184}, { 72, 62, 152},
1625 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1626 : },
1627 : { // band 1
1628 : {145, 117, 236}, {151, 112, 231}, { 87, 95, 208},
1629 : { 31, 77, 165}, { 5, 49, 98}, { 1, 24, 39},
1630 : },
1631 : { // band 2
1632 : {146, 152, 241}, {140, 132, 236}, { 41, 103, 209},
1633 : { 10, 86, 165}, { 2, 55, 106}, { 1, 25, 58},
1634 : },
1635 : { // band 3
1636 : {154, 181, 249}, { 84, 143, 240}, { 23, 114, 210},
1637 : { 6, 102, 182}, { 2, 71, 137}, { 1, 35, 90},
1638 : },
1639 : { // band 4
1640 : {184, 150, 251}, {115, 130, 244}, { 34, 105, 215},
1641 : { 15, 89, 173}, { 1, 51, 141}, {128, 128, 128},
1642 : },
1643 : { // band 5
1644 : {211, 71, 253}, {193, 78, 249}, {106, 91, 232},
1645 : { 61, 87, 198}, { 85, 153, 254}, {128, 128, 128},
1646 : },
1647 : },
1648 : { // Inter
1649 : { // band 0
1650 : {232, 104, 242}, {165, 114, 227}, { 96, 120, 206},
1651 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1652 : },
1653 : { // band 1
1654 : {137, 178, 250}, {146, 153, 245}, { 74, 108, 205},
1655 : { 41, 81, 149}, { 24, 55, 104}, { 13, 36, 68},
1656 : },
1657 : { // band 2
1658 : {147, 185, 252}, {127, 161, 246}, { 30, 104, 208},
1659 : { 11, 74, 154}, { 6, 54, 100}, { 2, 29, 63},
1660 : },
1661 : { // band 3
1662 : {163, 191, 254}, {101, 161, 249}, { 22, 114, 215},
1663 : { 6, 89, 173}, { 1, 65, 120}, { 1, 1, 170},
1664 : },
1665 : { // band 4
1666 : {197, 160, 254}, {142, 141, 251}, { 39, 102, 218},
1667 : { 10, 76, 158}, { 1, 56, 122}, {128, 128, 128},
1668 : },
1669 : { // band 5
1670 : {224, 76, 254}, {215, 84, 253}, {107, 85, 232},
1671 : { 43, 71, 177}, { 1, 1, 254}, {128, 128, 128},
1672 : },
1673 : },
1674 : },
1675 : },
1676 : #endif
1677 : { // TX_SIZE 0
1678 : { // Y plane
1679 : { // Intra
1680 : { // band 0
1681 : {174, 30, 159}, { 76, 38, 115}, { 15, 33, 65},
1682 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1683 : },
1684 : { // band 1
1685 : { 60, 80, 153}, { 72, 75, 147}, { 36, 68, 129},
1686 : { 15, 59, 104}, { 4, 45, 74}, { 1, 28, 45},
1687 : },
1688 : { // band 2
1689 : { 70, 122, 186}, { 55, 104, 175}, { 21, 83, 144},
1690 : { 8, 67, 112}, { 2, 51, 82}, { 1, 34, 57},
1691 : },
1692 : { // band 3
1693 : { 97, 144, 207}, { 52, 109, 195}, { 16, 77, 153},
1694 : { 4, 58, 113}, { 1, 43, 77}, { 1, 27, 48},
1695 : },
1696 : { // band 4
1697 : {128, 148, 229}, { 76, 104, 210}, { 18, 77, 159},
1698 : { 4, 65, 110}, { 1, 52, 82}, { 1, 31, 55},
1699 : },
1700 : { // band 5
1701 : {165, 51, 238}, {128, 50, 230}, { 57, 49, 185},
1702 : { 28, 47, 130}, { 12, 44, 96}, { 3, 36, 60},
1703 : },
1704 : },
1705 : { // Intra
1706 : { // band 0
1707 : {169, 103, 203}, {117, 96, 176}, { 56, 81, 137},
1708 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1709 : },
1710 : { // band 1
1711 : { 31, 150, 224}, { 49, 128, 212}, { 19, 92, 165},
1712 : { 6, 67, 116}, { 2, 43, 71}, { 1, 21, 36},
1713 : },
1714 : { // band 2
1715 : { 58, 156, 230}, { 47, 130, 215}, { 7, 87, 158},
1716 : { 2, 63, 114}, { 1, 39, 71}, { 1, 18, 36},
1717 : },
1718 : { // band 3
1719 : { 85, 176, 240}, { 43, 138, 226}, { 8, 93, 172},
1720 : { 2, 70, 127}, { 1, 46, 81}, { 1, 26, 47},
1721 : },
1722 : { // band 4
1723 : {155, 144, 248}, { 93, 116, 235}, { 21, 83, 180},
1724 : { 4, 59, 119}, { 1, 43, 80}, { 1, 25, 50},
1725 : },
1726 : { // band 5
1727 : {203, 61, 250}, {171, 57, 243}, { 71, 57, 199},
1728 : { 31, 49, 144}, { 13, 42, 96}, { 7, 30, 52},
1729 : },
1730 : },
1731 : },
1732 : { // UV plane
1733 : { // Inter
1734 : { // band 0
1735 : {204, 44, 204}, {137, 57, 184}, { 72, 62, 152},
1736 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1737 : },
1738 : { // band 1
1739 : {145, 117, 236}, {151, 112, 231}, { 87, 95, 208},
1740 : { 31, 77, 165}, { 5, 49, 98}, { 1, 24, 39},
1741 : },
1742 : { // band 2
1743 : {146, 152, 241}, {140, 132, 236}, { 41, 103, 209},
1744 : { 10, 86, 165}, { 2, 55, 106}, { 1, 25, 58},
1745 : },
1746 : { // band 3
1747 : {154, 181, 249}, { 84, 143, 240}, { 23, 114, 210},
1748 : { 6, 102, 182}, { 2, 71, 137}, { 1, 35, 90},
1749 : },
1750 : { // band 4
1751 : {184, 150, 251}, {115, 130, 244}, { 34, 105, 215},
1752 : { 15, 89, 173}, { 1, 51, 141}, {128, 128, 128},
1753 : },
1754 : { // band 5
1755 : {211, 71, 253}, {193, 78, 249}, {106, 91, 232},
1756 : { 61, 87, 198}, { 85, 153, 254}, {128, 128, 128},
1757 : },
1758 : },
1759 : { // Inter
1760 : { // band 0
1761 : {232, 104, 242}, {165, 114, 227}, { 96, 120, 206},
1762 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1763 : },
1764 : { // band 1
1765 : {137, 178, 250}, {146, 153, 245}, { 74, 108, 205},
1766 : { 41, 81, 149}, { 24, 55, 104}, { 13, 36, 68},
1767 : },
1768 : { // band 2
1769 : {147, 185, 252}, {127, 161, 246}, { 30, 104, 208},
1770 : { 11, 74, 154}, { 6, 54, 100}, { 2, 29, 63},
1771 : },
1772 : { // band 3
1773 : {163, 191, 254}, {101, 161, 249}, { 22, 114, 215},
1774 : { 6, 89, 173}, { 1, 65, 120}, { 1, 1, 170},
1775 : },
1776 : { // band 4
1777 : {197, 160, 254}, {142, 141, 251}, { 39, 102, 218},
1778 : { 10, 76, 158}, { 1, 56, 122}, {128, 128, 128},
1779 : },
1780 : { // band 5
1781 : {224, 76, 254}, {215, 84, 253}, {107, 85, 232},
1782 : { 43, 71, 177}, { 1, 1, 254}, {128, 128, 128},
1783 : },
1784 : },
1785 : },
1786 : },
1787 : { // TX_SIZE 1
1788 : { // Y plane
1789 : { // Intra
1790 : { // band 0
1791 : { 68, 37, 120}, { 21, 34, 82}, { 5, 26, 49},
1792 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1793 : },
1794 : { // band 1
1795 : { 41, 89, 138}, { 56, 83, 132}, { 31, 73, 115},
1796 : { 16, 62, 92}, { 5, 45, 62}, { 1, 24, 32},
1797 : },
1798 : { // band 2
1799 : { 48, 139, 165}, { 30, 114, 160}, { 13, 92, 132},
1800 : { 6, 72, 103}, { 3, 49, 72}, { 1, 26, 41},
1801 : },
1802 : { // band 3
1803 : { 44, 162, 191}, { 20, 127, 175}, { 5, 90, 137},
1804 : { 1, 62, 100}, { 1, 38, 63}, { 1, 20, 32},
1805 : },
1806 : { // band 4
1807 : { 51, 184, 213}, { 16, 137, 193}, { 2, 89, 143},
1808 : { 1, 60, 102}, { 1, 39, 66}, { 1, 23, 37},
1809 : },
1810 : { // band 5
1811 : { 76, 200, 235}, { 27, 150, 216}, { 3, 99, 164},
1812 : { 1, 70, 119}, { 1, 45, 77}, { 1, 22, 38},
1813 : },
1814 : },
1815 : { // Intra
1816 : { // band 0
1817 : { 81, 112, 199}, { 49, 101, 164}, { 19, 80, 119},
1818 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1819 : },
1820 : { // band 1
1821 : { 12, 181, 217}, { 48, 151, 212}, { 38, 118, 180},
1822 : { 22, 95, 140}, { 11, 67, 92}, { 13, 46, 44},
1823 : },
1824 : { // band 2
1825 : { 29, 188, 226}, { 19, 147, 210}, { 5, 95, 154},
1826 : { 4, 68, 106}, { 3, 44, 60}, { 1, 24, 27},
1827 : },
1828 : { // band 3
1829 : { 30, 195, 234}, { 15, 153, 216}, { 3, 95, 156},
1830 : { 2, 66, 108}, { 2, 44, 62}, { 1, 24, 29},
1831 : },
1832 : { // band 4
1833 : { 36, 203, 243}, { 12, 162, 225}, { 2, 98, 163},
1834 : { 2, 67, 113}, { 2, 45, 68}, { 1, 24, 34},
1835 : },
1836 : { // band 5
1837 : { 86, 207, 248}, { 35, 165, 236}, { 3, 107, 180},
1838 : { 1, 73, 128}, { 1, 45, 78}, { 1, 20, 34},
1839 : },
1840 : },
1841 : },
1842 : { // UV plane
1843 : { // Inter
1844 : { // band 0
1845 : {188, 37, 205}, {118, 51, 172}, { 56, 57, 135},
1846 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1847 : },
1848 : { // band 1
1849 : {116, 135, 225}, {144, 123, 221}, { 72, 103, 197},
1850 : { 35, 77, 153}, { 15, 47, 82}, { 6, 25, 34},
1851 : },
1852 : { // band 2
1853 : {128, 171, 233}, { 82, 142, 226}, { 31, 106, 191},
1854 : { 16, 82, 146}, { 9, 59, 98}, { 4, 33, 54},
1855 : },
1856 : { // band 3
1857 : {126, 197, 241}, { 66, 155, 230}, { 18, 108, 190},
1858 : { 7, 82, 148}, { 3, 58, 98}, { 1, 25, 50},
1859 : },
1860 : { // band 4
1861 : {117, 207, 244}, { 44, 163, 233}, { 9, 112, 191},
1862 : { 5, 84, 148}, { 3, 61, 87}, { 1, 28, 38},
1863 : },
1864 : { // band 5
1865 : {112, 214, 249}, { 39, 174, 240}, { 6, 125, 205},
1866 : { 4, 96, 163}, { 5, 66, 100}, { 1, 128, 254},
1867 : },
1868 : },
1869 : { // Inter
1870 : { // band 0
1871 : {227, 70, 234}, {145, 91, 213}, { 61, 100, 173},
1872 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1873 : },
1874 : { // band 1
1875 : {108, 198, 243}, {171, 172, 240}, {118, 130, 210},
1876 : {104, 107, 165}, { 64, 85, 114}, { 55, 64, 60},
1877 : },
1878 : { // band 2
1879 : {110, 208, 247}, { 64, 175, 237}, { 24, 112, 187},
1880 : { 24, 81, 133}, { 24, 63, 83}, { 21, 47, 53},
1881 : },
1882 : { // band 3
1883 : { 91, 218, 249}, { 46, 188, 238}, { 8, 113, 184},
1884 : { 5, 83, 137}, { 6, 62, 95}, { 17, 44, 94},
1885 : },
1886 : { // band 4
1887 : { 84, 216, 248}, { 30, 187, 237}, { 2, 117, 188},
1888 : { 1, 88, 141}, { 3, 63, 98}, { 1, 1, 1},
1889 : },
1890 : { // band 5
1891 : {116, 218, 252}, { 47, 186, 242}, { 2, 132, 204},
1892 : { 1, 106, 175}, { 1, 88, 104}, { 1, 254, 128},
1893 : },
1894 : },
1895 : },
1896 : },
1897 : { // TX_SIZE 2
1898 : { // Y plane
1899 : { // Intra
1900 : { // band 0
1901 : { 35, 41, 129}, { 12, 30, 70}, { 2, 19, 32},
1902 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1903 : },
1904 : { // band 1
1905 : { 30, 77, 116}, { 39, 70, 110}, { 20, 58, 96},
1906 : { 8, 47, 77}, { 2, 33, 52}, { 1, 17, 26},
1907 : },
1908 : { // band 2
1909 : { 31, 123, 146}, { 18, 103, 140}, { 7, 81, 119},
1910 : { 2, 62, 95}, { 1, 44, 70}, { 1, 26, 42},
1911 : },
1912 : { // band 3
1913 : { 21, 149, 170}, { 9, 114, 158}, { 2, 80, 126},
1914 : { 1, 57, 94}, { 1, 36, 61}, { 1, 18, 31},
1915 : },
1916 : { // band 4
1917 : { 20, 178, 199}, { 6, 134, 183}, { 1, 87, 139},
1918 : { 1, 60, 100}, { 1, 37, 64}, { 1, 18, 31},
1919 : },
1920 : { // band 5
1921 : { 36, 218, 233}, { 6, 160, 207}, { 1, 92, 147},
1922 : { 1, 59, 101}, { 1, 35, 62}, { 1, 18, 31},
1923 : },
1924 : },
1925 : { // Intra
1926 : { // band 0
1927 : { 17, 62, 211}, { 14, 62, 153}, { 5, 50, 84},
1928 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1929 : },
1930 : { // band 1
1931 : { 11, 180, 205}, { 87, 160, 205}, { 53, 128, 184},
1932 : { 27, 106, 156}, { 13, 79, 115}, { 6, 46, 67},
1933 : },
1934 : { // band 2
1935 : { 32, 194, 220}, { 20, 145, 202}, { 4, 96, 152},
1936 : { 1, 67, 111}, { 1, 42, 70}, { 1, 21, 37},
1937 : },
1938 : { // band 3
1939 : { 30, 204, 228}, { 14, 152, 207}, { 1, 92, 149},
1940 : { 1, 61, 103}, { 1, 34, 59}, { 1, 16, 28},
1941 : },
1942 : { // band 4
1943 : { 27, 213, 235}, { 7, 159, 210}, { 1, 88, 143},
1944 : { 1, 55, 94}, { 1, 31, 53}, { 1, 16, 27},
1945 : },
1946 : { // band 5
1947 : { 28, 223, 243}, { 4, 173, 217}, { 1, 91, 146},
1948 : { 1, 58, 98}, { 1, 35, 60}, { 1, 19, 33},
1949 : },
1950 : },
1951 : },
1952 : { // UV plane
1953 : { // Inter
1954 : { // band 0
1955 : {172, 37, 202}, { 83, 51, 156}, { 24, 53, 110},
1956 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1957 : },
1958 : { // band 1
1959 : { 76, 134, 206}, {110, 124, 200}, { 47, 106, 180},
1960 : { 15, 82, 145}, { 3, 48, 83}, { 1, 19, 32},
1961 : },
1962 : { // band 2
1963 : { 80, 176, 220}, { 49, 145, 212}, { 17, 112, 180},
1964 : { 7, 84, 140}, { 1, 53, 89}, { 1, 27, 43},
1965 : },
1966 : { // band 3
1967 : { 74, 201, 232}, { 38, 158, 221}, { 8, 112, 179},
1968 : { 2, 79, 132}, { 1, 47, 82}, { 1, 26, 42},
1969 : },
1970 : { // band 4
1971 : { 73, 215, 239}, { 28, 169, 227}, { 3, 112, 176},
1972 : { 1, 74, 126}, { 1, 48, 79}, { 1, 27, 44},
1973 : },
1974 : { // band 5
1975 : { 71, 233, 244}, { 18, 180, 230}, { 1, 114, 180},
1976 : { 1, 80, 134}, { 1, 51, 85}, { 1, 26, 36},
1977 : },
1978 : },
1979 : { // Inter
1980 : { // band 0
1981 : {213, 34, 244}, {126, 57, 212}, { 46, 67, 151},
1982 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
1983 : },
1984 : { // band 1
1985 : {120, 202, 245}, {198, 173, 241}, {119, 146, 224},
1986 : { 76, 126, 195}, { 44, 102, 159}, { 40, 76, 115},
1987 : },
1988 : { // band 2
1989 : {120, 215, 248}, { 69, 171, 237}, { 23, 119, 194},
1990 : { 10, 86, 147}, { 2, 56, 94}, { 1, 25, 44},
1991 : },
1992 : { // band 3
1993 : {102, 226, 250}, { 53, 183, 239}, { 9, 118, 188},
1994 : { 2, 78, 131}, { 1, 48, 89}, { 1, 17, 36},
1995 : },
1996 : { // band 4
1997 : { 86, 235, 252}, { 34, 194, 240}, { 2, 109, 173},
1998 : { 1, 68, 118}, { 1, 44, 79}, { 1, 1, 38},
1999 : },
2000 : { // band 5
2001 : { 59, 236, 243}, { 11, 189, 228}, { 1, 112, 187},
2002 : { 1, 88, 145}, { 1, 55, 92}, { 1, 1, 128},
2003 : },
2004 : },
2005 : },
2006 : },
2007 : { // TX_SIZE 3
2008 : { // Y plane
2009 : { // Intra
2010 : { // band 0
2011 : { 41, 40, 104}, { 12, 31, 64}, { 2, 16, 28},
2012 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2013 : },
2014 : { // band 1
2015 : { 65, 58, 132}, { 50, 61, 130}, { 40, 57, 116},
2016 : { 22, 46, 87}, { 2, 28, 44}, { 1, 11, 17},
2017 : },
2018 : { // band 2
2019 : { 55, 139, 135}, { 46, 122, 132}, { 21, 89, 110},
2020 : { 6, 60, 78}, { 1, 38, 54}, { 1, 17, 27},
2021 : },
2022 : { // band 3
2023 : { 29, 167, 161}, { 10, 120, 141}, { 1, 69, 98},
2024 : { 1, 42, 66}, { 1, 28, 44}, { 1, 15, 24},
2025 : },
2026 : { // band 4
2027 : { 19, 191, 180}, { 4, 125, 154}, { 1, 70, 107},
2028 : { 1, 48, 77}, { 1, 33, 53}, { 1, 17, 28},
2029 : },
2030 : { // band 5
2031 : { 16, 238, 231}, { 2, 163, 198}, { 1, 85, 134},
2032 : { 1, 54, 90}, { 1, 34, 57}, { 1, 17, 29},
2033 : },
2034 : },
2035 : { // Intra
2036 : { // band 0
2037 : { 70, 15, 216}, { 40, 18, 164}, { 14, 17, 83},
2038 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2039 : },
2040 : { // band 1
2041 : { 25, 150, 200}, {185, 154, 211}, {123, 137, 199},
2042 : { 67, 119, 177}, { 31, 96, 137}, { 18, 63, 86},
2043 : },
2044 : { // band 2
2045 : { 57, 187, 223}, { 35, 148, 207}, { 7, 104, 159},
2046 : { 2, 72, 113}, { 1, 44, 71}, { 1, 20, 34},
2047 : },
2048 : { // band 3
2049 : { 44, 203, 233}, { 18, 157, 212}, { 1, 98, 150},
2050 : { 1, 61, 102}, { 1, 38, 62}, { 1, 19, 31},
2051 : },
2052 : { // band 4
2053 : { 41, 215, 238}, { 11, 166, 215}, { 1, 94, 146},
2054 : { 1, 60, 101}, { 1, 37, 63}, { 1, 17, 28},
2055 : },
2056 : { // band 5
2057 : { 19, 236, 246}, { 3, 188, 223}, { 1, 95, 146},
2058 : { 1, 58, 95}, { 1, 34, 56}, { 1, 17, 27},
2059 : },
2060 : },
2061 : },
2062 : { // UV plane
2063 : { // Inter
2064 : { // band 0
2065 : {146, 27, 156}, { 49, 32, 116}, { 10, 39, 77},
2066 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2067 : },
2068 : { // band 1
2069 : { 47, 101, 172}, { 93, 100, 178}, { 58, 91, 165},
2070 : { 26, 75, 134}, { 4, 49, 82}, { 2, 22, 33},
2071 : },
2072 : { // band 2
2073 : { 60, 158, 196}, { 44, 135, 186}, { 25, 106, 157},
2074 : { 8, 81, 124}, { 2, 56, 86}, { 1, 28, 45},
2075 : },
2076 : { // band 3
2077 : { 44, 169, 212}, { 15, 138, 196}, { 2, 100, 157},
2078 : { 1, 74, 119}, { 1, 49, 76}, { 1, 20, 34},
2079 : },
2080 : { // band 4
2081 : { 38, 199, 231}, { 11, 158, 214}, { 1, 111, 167},
2082 : { 1, 76, 122}, { 1, 44, 76}, { 1, 17, 39},
2083 : },
2084 : { // band 5
2085 : { 40, 236, 246}, { 10, 187, 230}, { 1, 115, 175},
2086 : { 1, 74, 122}, { 1, 42, 71}, { 1, 14, 59},
2087 : },
2088 : },
2089 : { // Inter
2090 : { // band 0
2091 : {161, 26, 237}, { 65, 46, 209}, { 21, 46, 161},
2092 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2093 : },
2094 : { // band 1
2095 : { 87, 229, 245}, {206, 214, 244}, {148, 186, 236},
2096 : { 89, 165, 221}, { 41, 132, 186}, { 37, 93, 141},
2097 : },
2098 : { // band 2
2099 : { 93, 231, 246}, { 47, 181, 231}, { 8, 117, 188},
2100 : { 2, 84, 138}, { 1, 43, 87}, { 1, 27, 41},
2101 : },
2102 : { // band 3
2103 : { 80, 239, 250}, { 28, 190, 236}, { 1, 119, 183},
2104 : { 1, 84, 135}, { 1, 81, 69}, { 1, 102, 1},
2105 : },
2106 : { // band 4
2107 : { 67, 245, 252}, { 22, 206, 242}, { 1, 130, 195},
2108 : { 1, 77, 136}, { 1, 35, 88}, {128, 128, 128},
2109 : },
2110 : { // band 5
2111 : { 43, 250, 228}, { 31, 185, 204}, { 6, 101, 183},
2112 : { 1, 92, 151}, { 1, 84, 137}, {128, 128, 128},
2113 : },
2114 : },
2115 : },
2116 : },
2117 : #if CONFIG_TX64X64
2118 : { // TX_SIZE 4
2119 : { // Y plane
2120 : { // Intra
2121 : { // band 0
2122 : { 41, 40, 104}, { 12, 31, 64}, { 2, 16, 28},
2123 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2124 : },
2125 : { // band 1
2126 : { 65, 58, 132}, { 50, 61, 130}, { 40, 57, 116},
2127 : { 22, 46, 87}, { 2, 28, 44}, { 1, 11, 17},
2128 : },
2129 : { // band 2
2130 : { 55, 139, 135}, { 46, 122, 132}, { 21, 89, 110},
2131 : { 6, 60, 78}, { 1, 38, 54}, { 1, 17, 27},
2132 : },
2133 : { // band 3
2134 : { 29, 167, 161}, { 10, 120, 141}, { 1, 69, 98},
2135 : { 1, 42, 66}, { 1, 28, 44}, { 1, 15, 24},
2136 : },
2137 : { // band 4
2138 : { 19, 191, 180}, { 4, 125, 154}, { 1, 70, 107},
2139 : { 1, 48, 77}, { 1, 33, 53}, { 1, 17, 28},
2140 : },
2141 : { // band 5
2142 : { 16, 238, 231}, { 2, 163, 198}, { 1, 85, 134},
2143 : { 1, 54, 90}, { 1, 34, 57}, { 1, 17, 29},
2144 : },
2145 : },
2146 : { // Intra
2147 : { // band 0
2148 : { 70, 15, 216}, { 40, 18, 164}, { 14, 17, 83},
2149 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2150 : },
2151 : { // band 1
2152 : { 25, 150, 200}, {185, 154, 211}, {123, 137, 199},
2153 : { 67, 119, 177}, { 31, 96, 137}, { 18, 63, 86},
2154 : },
2155 : { // band 2
2156 : { 57, 187, 223}, { 35, 148, 207}, { 7, 104, 159},
2157 : { 2, 72, 113}, { 1, 44, 71}, { 1, 20, 34},
2158 : },
2159 : { // band 3
2160 : { 44, 203, 233}, { 18, 157, 212}, { 1, 98, 150},
2161 : { 1, 61, 102}, { 1, 38, 62}, { 1, 19, 31},
2162 : },
2163 : { // band 4
2164 : { 41, 215, 238}, { 11, 166, 215}, { 1, 94, 146},
2165 : { 1, 60, 101}, { 1, 37, 63}, { 1, 17, 28},
2166 : },
2167 : { // band 5
2168 : { 19, 236, 246}, { 3, 188, 223}, { 1, 95, 146},
2169 : { 1, 58, 95}, { 1, 34, 56}, { 1, 17, 27},
2170 : },
2171 : },
2172 : },
2173 : { // UV plane
2174 : { // Inter
2175 : { // band 0
2176 : {146, 27, 156}, { 49, 32, 116}, { 10, 39, 77},
2177 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2178 : },
2179 : { // band 1
2180 : { 47, 101, 172}, { 93, 100, 178}, { 58, 91, 165},
2181 : { 26, 75, 134}, { 4, 49, 82}, { 2, 22, 33},
2182 : },
2183 : { // band 2
2184 : { 60, 158, 196}, { 44, 135, 186}, { 25, 106, 157},
2185 : { 8, 81, 124}, { 2, 56, 86}, { 1, 28, 45},
2186 : },
2187 : { // band 3
2188 : { 44, 169, 212}, { 15, 138, 196}, { 2, 100, 157},
2189 : { 1, 74, 119}, { 1, 49, 76}, { 1, 20, 34},
2190 : },
2191 : { // band 4
2192 : { 38, 199, 231}, { 11, 158, 214}, { 1, 111, 167},
2193 : { 1, 76, 122}, { 1, 44, 76}, { 1, 17, 39},
2194 : },
2195 : { // band 5
2196 : { 40, 236, 246}, { 10, 187, 230}, { 1, 115, 175},
2197 : { 1, 74, 122}, { 1, 42, 71}, { 1, 14, 59},
2198 : },
2199 : },
2200 : { // Inter
2201 : { // band 0
2202 : {161, 26, 237}, { 65, 46, 209}, { 21, 46, 161},
2203 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2204 : },
2205 : { // band 1
2206 : { 87, 229, 245}, {206, 214, 244}, {148, 186, 236},
2207 : { 89, 165, 221}, { 41, 132, 186}, { 37, 93, 141},
2208 : },
2209 : { // band 2
2210 : { 93, 231, 246}, { 47, 181, 231}, { 8, 117, 188},
2211 : { 2, 84, 138}, { 1, 43, 87}, { 1, 27, 41},
2212 : },
2213 : { // band 3
2214 : { 80, 239, 250}, { 28, 190, 236}, { 1, 119, 183},
2215 : { 1, 84, 135}, { 1, 81, 69}, { 1, 102, 1},
2216 : },
2217 : { // band 4
2218 : { 67, 245, 252}, { 22, 206, 242}, { 1, 130, 195},
2219 : { 1, 77, 136}, { 1, 35, 88}, {128, 128, 128},
2220 : },
2221 : { // band 5
2222 : { 43, 250, 228}, { 31, 185, 204}, { 6, 101, 183},
2223 : { 1, 92, 151}, { 1, 84, 137}, {128, 128, 128},
2224 : },
2225 : },
2226 : },
2227 : },
2228 : #endif // CONFIG_TX64X64
2229 : },
2230 : { // Q_Index 2
2231 : #if CONFIG_CHROMA_2X2
2232 : { // TX_SIZE 0
2233 : { // Y plane
2234 : { // Intra
2235 : { // band 0
2236 : {181, 22, 175}, { 96, 37, 147}, { 35, 41, 105},
2237 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2238 : },
2239 : { // band 1
2240 : { 80, 95, 197}, {111, 92, 193}, { 59, 87, 175},
2241 : { 29, 79, 150}, { 10, 65, 118}, { 2, 47, 82},
2242 : },
2243 : { // band 2
2244 : { 90, 141, 216}, { 77, 120, 210}, { 23, 95, 184},
2245 : { 11, 81, 151}, { 6, 75, 130}, { 2, 58, 113},
2246 : },
2247 : { // band 3
2248 : {122, 167, 231}, { 66, 119, 225}, { 26, 87, 189},
2249 : { 7, 76, 151}, { 2, 63, 125}, { 1, 59, 77},
2250 : },
2251 : { // band 4
2252 : {162, 147, 244}, {110, 97, 236}, { 32, 88, 204},
2253 : { 11, 89, 174}, { 5, 78, 151}, {128, 128, 128},
2254 : },
2255 : { // band 5
2256 : {205, 59, 251}, {176, 68, 248}, { 90, 71, 223},
2257 : { 49, 72, 188}, { 17, 74, 203}, {128, 128, 128},
2258 : },
2259 : },
2260 : { // Intra
2261 : { // band 0
2262 : {188, 70, 207}, {140, 73, 189}, { 85, 73, 163},
2263 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2264 : },
2265 : { // band 1
2266 : { 59, 144, 239}, { 79, 126, 237}, { 31, 102, 202},
2267 : { 10, 81, 153}, { 3, 56, 102}, { 2, 33, 59},
2268 : },
2269 : { // band 2
2270 : {100, 152, 243}, { 80, 129, 236}, { 14, 94, 194},
2271 : { 4, 72, 150}, { 1, 50, 103}, { 1, 35, 60},
2272 : },
2273 : { // band 3
2274 : {130, 183, 247}, { 70, 139, 242}, { 19, 100, 203},
2275 : { 4, 83, 159}, { 1, 59, 119}, { 1, 44, 72},
2276 : },
2277 : { // band 4
2278 : {197, 138, 252}, {135, 107, 247}, { 31, 86, 210},
2279 : { 7, 74, 160}, { 1, 53, 107}, {128, 128, 128},
2280 : },
2281 : { // band 5
2282 : {229, 54, 254}, {200, 51, 251}, { 83, 61, 226},
2283 : { 33, 55, 177}, { 12, 74, 145}, {128, 128, 128},
2284 : },
2285 : },
2286 : },
2287 : { // UV plane
2288 : { // Inter
2289 : { // band 0
2290 : {229, 20, 235}, {183, 37, 221}, {127, 47, 198},
2291 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2292 : },
2293 : { // band 1
2294 : {188, 115, 251}, {208, 110, 250}, {101, 99, 235},
2295 : { 38, 81, 197}, { 9, 56, 132}, { 9, 52, 63},
2296 : },
2297 : { // band 2
2298 : {189, 150, 252}, {186, 137, 251}, { 54, 107, 236},
2299 : { 14, 90, 195}, { 1, 89, 104}, {128, 128, 128},
2300 : },
2301 : { // band 3
2302 : {209, 180, 254}, {142, 145, 253}, { 51, 130, 236},
2303 : { 6, 128, 214}, { 1, 128, 254}, {128, 128, 128},
2304 : },
2305 : { // band 4
2306 : {231, 140, 254}, {194, 128, 254}, { 75, 119, 233},
2307 : {128, 23, 230}, {128, 128, 128}, {128, 128, 128},
2308 : },
2309 : { // band 5
2310 : {244, 59, 254}, {239, 81, 254}, {128, 85, 254},
2311 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2312 : },
2313 : },
2314 : { // Inter
2315 : { // band 0
2316 : {246, 55, 247}, {197, 64, 235}, {141, 74, 218},
2317 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2318 : },
2319 : { // band 1
2320 : {178, 163, 254}, {192, 138, 252}, { 85, 103, 231},
2321 : { 49, 81, 179}, { 32, 54, 133}, { 12, 26, 98},
2322 : },
2323 : { // band 2
2324 : {189, 173, 254}, {179, 150, 253}, { 60, 94, 237},
2325 : { 34, 81, 198}, { 20, 53, 187}, {128, 128, 128},
2326 : },
2327 : { // band 3
2328 : {202, 191, 254}, {157, 160, 254}, { 57, 117, 240},
2329 : { 28, 105, 211}, { 1, 128, 1}, {128, 128, 128},
2330 : },
2331 : { // band 4
2332 : {231, 146, 254}, {208, 133, 254}, { 66, 78, 233},
2333 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2334 : },
2335 : { // band 5
2336 : {246, 49, 254}, {246, 63, 254}, { 85, 142, 254},
2337 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2338 : },
2339 : },
2340 : },
2341 : },
2342 : #endif
2343 : { // TX_SIZE 0
2344 : { // Y plane
2345 : { // Intra
2346 : { // band 0
2347 : {181, 22, 175}, { 96, 37, 147}, { 35, 41, 105},
2348 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2349 : },
2350 : { // band 1
2351 : { 80, 95, 197}, {111, 92, 193}, { 59, 87, 175},
2352 : { 29, 79, 150}, { 10, 65, 118}, { 2, 47, 82},
2353 : },
2354 : { // band 2
2355 : { 90, 141, 216}, { 77, 120, 210}, { 23, 95, 184},
2356 : { 11, 81, 151}, { 6, 75, 130}, { 2, 58, 113},
2357 : },
2358 : { // band 3
2359 : {122, 167, 231}, { 66, 119, 225}, { 26, 87, 189},
2360 : { 7, 76, 151}, { 2, 63, 125}, { 1, 59, 77},
2361 : },
2362 : { // band 4
2363 : {162, 147, 244}, {110, 97, 236}, { 32, 88, 204},
2364 : { 11, 89, 174}, { 5, 78, 151}, {128, 128, 128},
2365 : },
2366 : { // band 5
2367 : {205, 59, 251}, {176, 68, 248}, { 90, 71, 223},
2368 : { 49, 72, 188}, { 17, 74, 203}, {128, 128, 128},
2369 : },
2370 : },
2371 : { // Intra
2372 : { // band 0
2373 : {188, 70, 207}, {140, 73, 189}, { 85, 73, 163},
2374 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2375 : },
2376 : { // band 1
2377 : { 59, 144, 239}, { 79, 126, 237}, { 31, 102, 202},
2378 : { 10, 81, 153}, { 3, 56, 102}, { 2, 33, 59},
2379 : },
2380 : { // band 2
2381 : {100, 152, 243}, { 80, 129, 236}, { 14, 94, 194},
2382 : { 4, 72, 150}, { 1, 50, 103}, { 1, 35, 60},
2383 : },
2384 : { // band 3
2385 : {130, 183, 247}, { 70, 139, 242}, { 19, 100, 203},
2386 : { 4, 83, 159}, { 1, 59, 119}, { 1, 44, 72},
2387 : },
2388 : { // band 4
2389 : {197, 138, 252}, {135, 107, 247}, { 31, 86, 210},
2390 : { 7, 74, 160}, { 1, 53, 107}, {128, 128, 128},
2391 : },
2392 : { // band 5
2393 : {229, 54, 254}, {200, 51, 251}, { 83, 61, 226},
2394 : { 33, 55, 177}, { 12, 74, 145}, {128, 128, 128},
2395 : },
2396 : },
2397 : },
2398 : { // UV plane
2399 : { // Inter
2400 : { // band 0
2401 : {229, 20, 235}, {183, 37, 221}, {127, 47, 198},
2402 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2403 : },
2404 : { // band 1
2405 : {188, 115, 251}, {208, 110, 250}, {101, 99, 235},
2406 : { 38, 81, 197}, { 9, 56, 132}, { 9, 52, 63},
2407 : },
2408 : { // band 2
2409 : {189, 150, 252}, {186, 137, 251}, { 54, 107, 236},
2410 : { 14, 90, 195}, { 1, 89, 104}, {128, 128, 128},
2411 : },
2412 : { // band 3
2413 : {209, 180, 254}, {142, 145, 253}, { 51, 130, 236},
2414 : { 6, 128, 214}, { 1, 128, 254}, {128, 128, 128},
2415 : },
2416 : { // band 4
2417 : {231, 140, 254}, {194, 128, 254}, { 75, 119, 233},
2418 : {128, 23, 230}, {128, 128, 128}, {128, 128, 128},
2419 : },
2420 : { // band 5
2421 : {244, 59, 254}, {239, 81, 254}, {128, 85, 254},
2422 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2423 : },
2424 : },
2425 : { // Inter
2426 : { // band 0
2427 : {246, 55, 247}, {197, 64, 235}, {141, 74, 218},
2428 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2429 : },
2430 : { // band 1
2431 : {178, 163, 254}, {192, 138, 252}, { 85, 103, 231},
2432 : { 49, 81, 179}, { 32, 54, 133}, { 12, 26, 98},
2433 : },
2434 : { // band 2
2435 : {189, 173, 254}, {179, 150, 253}, { 60, 94, 237},
2436 : { 34, 81, 198}, { 20, 53, 187}, {128, 128, 128},
2437 : },
2438 : { // band 3
2439 : {202, 191, 254}, {157, 160, 254}, { 57, 117, 240},
2440 : { 28, 105, 211}, { 1, 128, 1}, {128, 128, 128},
2441 : },
2442 : { // band 4
2443 : {231, 146, 254}, {208, 133, 254}, { 66, 78, 233},
2444 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2445 : },
2446 : { // band 5
2447 : {246, 49, 254}, {246, 63, 254}, { 85, 142, 254},
2448 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2449 : },
2450 : },
2451 : },
2452 : },
2453 : { // TX_SIZE 1
2454 : { // Y plane
2455 : { // Intra
2456 : { // band 0
2457 : { 45, 28, 124}, { 23, 35, 107}, { 10, 34, 78},
2458 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2459 : },
2460 : { // band 1
2461 : { 53, 99, 177}, { 82, 96, 174}, { 46, 89, 158},
2462 : { 21, 76, 133}, { 6, 56, 94}, { 1, 33, 54},
2463 : },
2464 : { // band 2
2465 : { 68, 147, 201}, { 42, 124, 195}, { 17, 98, 166},
2466 : { 7, 75, 131}, { 2, 53, 93}, { 1, 33, 59},
2467 : },
2468 : { // band 3
2469 : { 65, 176, 217}, { 30, 137, 206}, { 6, 97, 167},
2470 : { 2, 70, 128}, { 1, 47, 88}, { 1, 29, 46},
2471 : },
2472 : { // band 4
2473 : { 69, 195, 232}, { 24, 146, 218}, { 4, 100, 175},
2474 : { 2, 72, 134}, { 1, 51, 93}, { 1, 29, 52},
2475 : },
2476 : { // band 5
2477 : { 96, 212, 246}, { 39, 158, 234}, { 6, 109, 192},
2478 : { 2, 77, 144}, { 1, 50, 95}, { 1, 20, 45},
2479 : },
2480 : },
2481 : { // Intra
2482 : { // band 0
2483 : { 71, 80, 213}, { 53, 73, 181}, { 25, 66, 141},
2484 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2485 : },
2486 : { // band 1
2487 : { 35, 168, 231}, { 91, 150, 229}, { 49, 122, 202},
2488 : { 22, 97, 162}, { 10, 68, 108}, { 9, 48, 57},
2489 : },
2490 : { // band 2
2491 : { 56, 178, 236}, { 32, 148, 225}, { 9, 99, 176},
2492 : { 4, 69, 127}, { 2, 44, 78}, { 1, 25, 41},
2493 : },
2494 : { // band 3
2495 : { 57, 191, 242}, { 27, 155, 230}, { 5, 102, 180},
2496 : { 2, 71, 133}, { 1, 44, 78}, { 1, 27, 41},
2497 : },
2498 : { // band 4
2499 : { 67, 201, 247}, { 24, 162, 237}, { 3, 106, 188},
2500 : { 3, 74, 137}, { 1, 46, 85}, { 1, 34, 48},
2501 : },
2502 : { // band 5
2503 : {111, 210, 251}, { 47, 166, 244}, { 3, 113, 199},
2504 : { 2, 77, 146}, { 1, 48, 93}, { 1, 38, 22},
2505 : },
2506 : },
2507 : },
2508 : { // UV plane
2509 : { // Inter
2510 : { // band 0
2511 : {206, 21, 221}, {150, 36, 195}, { 94, 44, 164},
2512 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2513 : },
2514 : { // band 1
2515 : {147, 128, 239}, {194, 122, 238}, { 95, 104, 220},
2516 : { 39, 81, 183}, { 13, 53, 111}, { 3, 24, 49},
2517 : },
2518 : { // band 2
2519 : {164, 163, 244}, {106, 142, 239}, { 50, 112, 215},
2520 : { 26, 90, 177}, { 12, 67, 130}, { 1, 1, 64},
2521 : },
2522 : { // band 3
2523 : {155, 193, 249}, { 88, 158, 244}, { 26, 124, 220},
2524 : { 10, 98, 173}, { 1, 77, 126}, {128, 128, 128},
2525 : },
2526 : { // band 4
2527 : {141, 205, 252}, { 64, 174, 248}, { 17, 124, 221},
2528 : { 12, 92, 176}, { 1, 29, 148}, {128, 128, 128},
2529 : },
2530 : { // band 5
2531 : {150, 217, 254}, { 74, 191, 252}, { 30, 144, 215},
2532 : { 1, 106, 137}, {128, 1, 128}, {128, 128, 128},
2533 : },
2534 : },
2535 : { // Inter
2536 : { // band 0
2537 : {241, 37, 242}, {175, 48, 223}, { 99, 53, 189},
2538 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2539 : },
2540 : { // band 1
2541 : {153, 183, 248}, {212, 156, 247}, {134, 124, 221},
2542 : { 88, 103, 184}, { 59, 86, 132}, { 29, 61, 67},
2543 : },
2544 : { // band 2
2545 : {162, 199, 250}, {106, 167, 247}, { 56, 110, 207},
2546 : { 32, 85, 165}, { 16, 71, 130}, { 1, 93, 254},
2547 : },
2548 : { // band 3
2549 : {143, 213, 252}, { 86, 187, 250}, { 23, 124, 220},
2550 : { 7, 95, 176}, { 1, 109, 102}, {128, 128, 128},
2551 : },
2552 : { // band 4
2553 : {130, 219, 254}, { 70, 201, 253}, { 15, 128, 215},
2554 : { 1, 101, 201}, { 1, 64, 170}, {128, 128, 128},
2555 : },
2556 : { // band 5
2557 : {155, 219, 254}, {105, 207, 254}, { 28, 155, 229},
2558 : { 1, 153, 191}, {128, 128, 128}, {128, 128, 128},
2559 : },
2560 : },
2561 : },
2562 : },
2563 : { // TX_SIZE 2
2564 : { // Y plane
2565 : { // Intra
2566 : { // band 0
2567 : { 18, 26, 117}, { 10, 29, 82}, { 3, 25, 52},
2568 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2569 : },
2570 : { // band 1
2571 : { 35, 88, 152}, { 62, 85, 150}, { 36, 77, 137},
2572 : { 16, 66, 116}, { 4, 47, 81}, { 1, 26, 44},
2573 : },
2574 : { // band 2
2575 : { 55, 141, 182}, { 32, 119, 177}, { 12, 93, 154},
2576 : { 4, 71, 123}, { 1, 51, 89}, { 1, 32, 56},
2577 : },
2578 : { // band 3
2579 : { 46, 171, 202}, { 21, 130, 191}, { 5, 91, 154},
2580 : { 1, 64, 115}, { 1, 42, 77}, { 1, 25, 41},
2581 : },
2582 : { // band 4
2583 : { 43, 195, 219}, { 12, 142, 203}, { 1, 91, 156},
2584 : { 1, 63, 115}, { 1, 41, 77}, { 1, 22, 43},
2585 : },
2586 : { // band 5
2587 : { 42, 221, 238}, { 8, 162, 219}, { 1, 98, 167},
2588 : { 1, 67, 123}, { 1, 43, 83}, { 1, 25, 38},
2589 : },
2590 : },
2591 : { // Intra
2592 : { // band 0
2593 : { 16, 51, 216}, { 20, 48, 168}, { 9, 44, 109},
2594 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2595 : },
2596 : { // band 1
2597 : { 34, 164, 226}, {124, 148, 226}, { 72, 127, 207},
2598 : { 36, 107, 175}, { 15, 81, 129}, { 6, 51, 79},
2599 : },
2600 : { // band 2
2601 : { 61, 182, 234}, { 35, 148, 220}, { 9, 101, 178},
2602 : { 4, 71, 134}, { 1, 46, 90}, { 1, 24, 51},
2603 : },
2604 : { // band 3
2605 : { 54, 198, 239}, { 25, 156, 224}, { 3, 98, 173},
2606 : { 1, 66, 124}, { 1, 41, 78}, { 1, 15, 37},
2607 : },
2608 : { // band 4
2609 : { 48, 209, 242}, { 12, 162, 226}, { 1, 96, 169},
2610 : { 1, 63, 119}, { 1, 40, 78}, { 1, 18, 45},
2611 : },
2612 : { // band 5
2613 : { 44, 223, 247}, { 6, 173, 232}, { 1, 105, 178},
2614 : { 1, 71, 131}, { 1, 44, 84}, { 1, 13, 46},
2615 : },
2616 : },
2617 : },
2618 : { // UV plane
2619 : { // Inter
2620 : { // band 0
2621 : {188, 26, 214}, {121, 42, 181}, { 66, 49, 149},
2622 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2623 : },
2624 : { // band 1
2625 : {136, 128, 233}, {172, 124, 230}, { 80, 106, 211},
2626 : { 27, 81, 174}, { 6, 49, 98}, { 8, 28, 49},
2627 : },
2628 : { // band 2
2629 : {145, 166, 239}, { 92, 141, 229}, { 28, 108, 196},
2630 : { 8, 87, 154}, { 1, 58, 105}, { 1, 27, 59},
2631 : },
2632 : { // band 3
2633 : {131, 193, 242}, { 66, 151, 231}, { 13, 112, 192},
2634 : { 2, 81, 152}, { 1, 66, 121}, { 1, 23, 64},
2635 : },
2636 : { // band 4
2637 : {112, 211, 246}, { 41, 164, 235}, { 5, 117, 202},
2638 : { 1, 83, 162}, { 1, 64, 111}, {128, 128, 128},
2639 : },
2640 : { // band 5
2641 : { 96, 230, 250}, { 28, 185, 243}, { 2, 132, 204},
2642 : { 1, 91, 166}, { 1, 85, 46}, {128, 128, 128},
2643 : },
2644 : },
2645 : { // Inter
2646 : { // band 0
2647 : {238, 23, 242}, {157, 29, 215}, { 73, 27, 162},
2648 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2649 : },
2650 : { // band 1
2651 : {165, 173, 250}, {222, 151, 247}, {152, 134, 235},
2652 : {114, 120, 210}, { 86, 109, 176}, { 53, 88, 145},
2653 : },
2654 : { // band 2
2655 : {164, 194, 249}, {100, 158, 241}, { 35, 111, 212},
2656 : { 17, 85, 167}, { 1, 52, 112}, { 1, 73, 1},
2657 : },
2658 : { // band 3
2659 : {151, 215, 252}, { 83, 172, 245}, { 16, 122, 208},
2660 : { 6, 101, 165}, { 1, 74, 113}, { 1, 1, 1},
2661 : },
2662 : { // band 4
2663 : {138, 230, 253}, { 65, 184, 248}, { 8, 128, 212},
2664 : { 1, 111, 182}, {128, 1, 1}, {128, 128, 128},
2665 : },
2666 : { // band 5
2667 : {123, 240, 253}, { 36, 201, 250}, { 3, 127, 211},
2668 : { 1, 68, 204}, {128, 1, 1}, {128, 128, 128},
2669 : },
2670 : },
2671 : },
2672 : },
2673 : { // TX_SIZE 3
2674 : { // Y plane
2675 : { // Intra
2676 : { // band 0
2677 : { 51, 21, 156}, { 30, 23, 86}, { 4, 18, 37},
2678 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2679 : },
2680 : { // band 1
2681 : { 38, 77, 129}, { 79, 76, 129}, { 40, 66, 117},
2682 : { 12, 54, 95}, { 1, 36, 60}, { 1, 17, 29},
2683 : },
2684 : { // band 2
2685 : { 44, 133, 149}, { 24, 107, 143}, { 8, 78, 121},
2686 : { 3, 59, 97}, { 1, 42, 71}, { 1, 22, 37},
2687 : },
2688 : { // band 3
2689 : { 29, 160, 171}, { 9, 114, 158}, { 1, 76, 125},
2690 : { 1, 54, 93}, { 1, 36, 63}, { 1, 20, 35},
2691 : },
2692 : { // band 4
2693 : { 22, 188, 205}, { 6, 132, 186}, { 1, 87, 144},
2694 : { 1, 62, 107}, { 1, 41, 72}, { 1, 23, 41},
2695 : },
2696 : { // band 5
2697 : { 25, 233, 236}, { 5, 165, 214}, { 1, 96, 158},
2698 : { 1, 63, 112}, { 1, 40, 73}, { 1, 23, 40},
2699 : },
2700 : },
2701 : { // Intra
2702 : { // band 0
2703 : { 48, 20, 231}, { 37, 21, 179}, { 15, 18, 109},
2704 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2705 : },
2706 : { // band 1
2707 : { 41, 154, 216}, {196, 142, 221}, {131, 125, 207},
2708 : { 84, 111, 181}, { 45, 91, 142}, { 27, 62, 89},
2709 : },
2710 : { // band 2
2711 : { 72, 181, 230}, { 41, 147, 215}, { 10, 102, 173},
2712 : { 3, 73, 132}, { 1, 47, 89}, { 1, 23, 50},
2713 : },
2714 : { // band 3
2715 : { 60, 201, 236}, { 23, 157, 219}, { 2, 99, 167},
2716 : { 1, 69, 124}, { 1, 43, 80}, { 1, 22, 39},
2717 : },
2718 : { // band 4
2719 : { 53, 214, 242}, { 15, 165, 224}, { 1, 101, 173},
2720 : { 1, 70, 131}, { 1, 44, 83}, { 1, 23, 49},
2721 : },
2722 : { // band 5
2723 : { 39, 239, 248}, { 7, 186, 233}, { 1, 108, 174},
2724 : { 1, 70, 123}, { 1, 43, 77}, { 1, 16, 42},
2725 : },
2726 : },
2727 : },
2728 : { // UV plane
2729 : { // Inter
2730 : { // band 0
2731 : {161, 26, 204}, { 77, 40, 160}, { 26, 50, 117},
2732 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2733 : },
2734 : { // band 1
2735 : { 80, 140, 218}, {136, 133, 215}, { 63, 117, 197},
2736 : { 20, 93, 170}, { 7, 55, 102}, { 13, 32, 52},
2737 : },
2738 : { // band 2
2739 : { 86, 173, 231}, { 46, 150, 220}, { 18, 118, 190},
2740 : { 8, 90, 150}, { 2, 60, 95}, { 1, 39, 41},
2741 : },
2742 : { // band 3
2743 : { 80, 183, 242}, { 37, 160, 231}, { 6, 120, 182},
2744 : { 1, 86, 137}, { 1, 46, 78}, { 1, 15, 24},
2745 : },
2746 : { // band 4
2747 : { 88, 215, 247}, { 42, 179, 235}, { 4, 116, 182},
2748 : { 2, 80, 133}, { 1, 46, 85}, { 1, 64, 43},
2749 : },
2750 : { // band 5
2751 : {100, 236, 250}, { 31, 186, 234}, { 1, 114, 181},
2752 : { 1, 85, 135}, { 1, 78, 64}, {128, 128, 128},
2753 : },
2754 : },
2755 : { // Inter
2756 : { // band 0
2757 : {213, 13, 245}, {106, 16, 211}, { 32, 11, 156},
2758 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2759 : },
2760 : { // band 1
2761 : {140, 214, 247}, {241, 186, 243}, {177, 172, 235},
2762 : {128, 156, 219}, {106, 130, 191}, { 99, 105, 152},
2763 : },
2764 : { // band 2
2765 : {125, 218, 248}, { 75, 167, 239}, { 29, 111, 212},
2766 : { 6, 66, 152}, { 1, 42, 96}, { 1, 85, 128},
2767 : },
2768 : { // band 3
2769 : {120, 232, 252}, { 60, 189, 247}, { 8, 141, 200},
2770 : { 1, 89, 134}, { 1, 32, 128}, {128, 128, 128},
2771 : },
2772 : { // band 4
2773 : {111, 238, 253}, { 56, 198, 245}, { 1, 123, 208},
2774 : { 1, 93, 176}, { 1, 1, 73}, {128, 128, 128},
2775 : },
2776 : { // band 5
2777 : { 98, 251, 249}, { 56, 189, 244}, { 17, 113, 220},
2778 : { 1, 109, 179}, {128, 128, 128}, {128, 128, 128},
2779 : },
2780 : },
2781 : },
2782 : },
2783 : #if CONFIG_TX64X64
2784 : { // TX_SIZE 4
2785 : { // Y plane
2786 : { // Intra
2787 : { // band 0
2788 : { 51, 21, 156}, { 30, 23, 86}, { 4, 18, 37},
2789 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2790 : },
2791 : { // band 1
2792 : { 38, 77, 129}, { 79, 76, 129}, { 40, 66, 117},
2793 : { 12, 54, 95}, { 1, 36, 60}, { 1, 17, 29},
2794 : },
2795 : { // band 2
2796 : { 44, 133, 149}, { 24, 107, 143}, { 8, 78, 121},
2797 : { 3, 59, 97}, { 1, 42, 71}, { 1, 22, 37},
2798 : },
2799 : { // band 3
2800 : { 29, 160, 171}, { 9, 114, 158}, { 1, 76, 125},
2801 : { 1, 54, 93}, { 1, 36, 63}, { 1, 20, 35},
2802 : },
2803 : { // band 4
2804 : { 22, 188, 205}, { 6, 132, 186}, { 1, 87, 144},
2805 : { 1, 62, 107}, { 1, 41, 72}, { 1, 23, 41},
2806 : },
2807 : { // band 5
2808 : { 25, 233, 236}, { 5, 165, 214}, { 1, 96, 158},
2809 : { 1, 63, 112}, { 1, 40, 73}, { 1, 23, 40},
2810 : },
2811 : },
2812 : { // Intra
2813 : { // band 0
2814 : { 48, 20, 231}, { 37, 21, 179}, { 15, 18, 109},
2815 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2816 : },
2817 : { // band 1
2818 : { 41, 154, 216}, {196, 142, 221}, {131, 125, 207},
2819 : { 84, 111, 181}, { 45, 91, 142}, { 27, 62, 89},
2820 : },
2821 : { // band 2
2822 : { 72, 181, 230}, { 41, 147, 215}, { 10, 102, 173},
2823 : { 3, 73, 132}, { 1, 47, 89}, { 1, 23, 50},
2824 : },
2825 : { // band 3
2826 : { 60, 201, 236}, { 23, 157, 219}, { 2, 99, 167},
2827 : { 1, 69, 124}, { 1, 43, 80}, { 1, 22, 39},
2828 : },
2829 : { // band 4
2830 : { 53, 214, 242}, { 15, 165, 224}, { 1, 101, 173},
2831 : { 1, 70, 131}, { 1, 44, 83}, { 1, 23, 49},
2832 : },
2833 : { // band 5
2834 : { 39, 239, 248}, { 7, 186, 233}, { 1, 108, 174},
2835 : { 1, 70, 123}, { 1, 43, 77}, { 1, 16, 42},
2836 : },
2837 : },
2838 : },
2839 : { // UV plane
2840 : { // Inter
2841 : { // band 0
2842 : {161, 26, 204}, { 77, 40, 160}, { 26, 50, 117},
2843 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2844 : },
2845 : { // band 1
2846 : { 80, 140, 218}, {136, 133, 215}, { 63, 117, 197},
2847 : { 20, 93, 170}, { 7, 55, 102}, { 13, 32, 52},
2848 : },
2849 : { // band 2
2850 : { 86, 173, 231}, { 46, 150, 220}, { 18, 118, 190},
2851 : { 8, 90, 150}, { 2, 60, 95}, { 1, 39, 41},
2852 : },
2853 : { // band 3
2854 : { 80, 183, 242}, { 37, 160, 231}, { 6, 120, 182},
2855 : { 1, 86, 137}, { 1, 46, 78}, { 1, 15, 24},
2856 : },
2857 : { // band 4
2858 : { 88, 215, 247}, { 42, 179, 235}, { 4, 116, 182},
2859 : { 2, 80, 133}, { 1, 46, 85}, { 1, 64, 43},
2860 : },
2861 : { // band 5
2862 : {100, 236, 250}, { 31, 186, 234}, { 1, 114, 181},
2863 : { 1, 85, 135}, { 1, 78, 64}, {128, 128, 128},
2864 : },
2865 : },
2866 : { // Inter
2867 : { // band 0
2868 : {213, 13, 245}, {106, 16, 211}, { 32, 11, 156},
2869 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2870 : },
2871 : { // band 1
2872 : {140, 214, 247}, {241, 186, 243}, {177, 172, 235},
2873 : {128, 156, 219}, {106, 130, 191}, { 99, 105, 152},
2874 : },
2875 : { // band 2
2876 : {125, 218, 248}, { 75, 167, 239}, { 29, 111, 212},
2877 : { 6, 66, 152}, { 1, 42, 96}, { 1, 85, 128},
2878 : },
2879 : { // band 3
2880 : {120, 232, 252}, { 60, 189, 247}, { 8, 141, 200},
2881 : { 1, 89, 134}, { 1, 32, 128}, {128, 128, 128},
2882 : },
2883 : { // band 4
2884 : {111, 238, 253}, { 56, 198, 245}, { 1, 123, 208},
2885 : { 1, 93, 176}, { 1, 1, 73}, {128, 128, 128},
2886 : },
2887 : { // band 5
2888 : { 98, 251, 249}, { 56, 189, 244}, { 17, 113, 220},
2889 : { 1, 109, 179}, {128, 128, 128}, {128, 128, 128},
2890 : },
2891 : },
2892 : },
2893 : },
2894 : #endif // CONFIG_TX64X64
2895 : },
2896 : { // Q_Index 3
2897 : #if CONFIG_CHROMA_2X2
2898 : { // TX_SIZE 0
2899 : { // Y plane
2900 : { // Intra
2901 : { // band 0
2902 : {186, 16, 200}, {122, 31, 187}, { 78, 40, 161},
2903 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2904 : },
2905 : { // band 1
2906 : {146, 119, 245}, {182, 115, 244}, {130, 113, 238},
2907 : { 88, 110, 225}, { 47, 103, 208}, { 5, 102, 188},
2908 : },
2909 : { // band 2
2910 : {164, 157, 248}, {155, 141, 250}, { 71, 116, 243},
2911 : { 88, 129, 233}, { 50, 99, 228}, { 26, 148, 191},
2912 : },
2913 : { // band 3
2914 : {200, 158, 253}, {177, 118, 252}, { 99, 113, 245},
2915 : { 77, 120, 210}, {128, 128, 128}, {128, 128, 128},
2916 : },
2917 : { // band 4
2918 : {231, 104, 254}, {209, 82, 254}, {143, 112, 252},
2919 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2920 : },
2921 : { // band 5
2922 : {250, 36, 254}, {243, 55, 254}, {223, 170, 254},
2923 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2924 : },
2925 : },
2926 : { // Intra
2927 : { // band 0
2928 : {207, 37, 226}, {164, 46, 218}, {122, 58, 201},
2929 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2930 : },
2931 : { // band 1
2932 : {149, 154, 253}, {170, 137, 253}, { 94, 123, 247},
2933 : { 42, 113, 222}, { 16, 97, 174}, { 49, 98, 159},
2934 : },
2935 : { // band 2
2936 : {177, 162, 253}, {165, 142, 252}, { 51, 108, 243},
2937 : { 18, 108, 213}, { 1, 98, 254}, {128, 128, 128},
2938 : },
2939 : { // band 3
2940 : {211, 152, 254}, {184, 116, 254}, { 70, 110, 244},
2941 : { 8, 108, 237}, {128, 128, 128}, {128, 128, 128},
2942 : },
2943 : { // band 4
2944 : {236, 89, 254}, {210, 67, 254}, {112, 111, 248},
2945 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2946 : },
2947 : { // band 5
2948 : {246, 26, 254}, {233, 35, 254}, {128, 1, 254},
2949 : {254, 128, 128}, {128, 128, 128}, {128, 128, 128},
2950 : },
2951 : },
2952 : },
2953 : { // UV plane
2954 : { // Inter
2955 : { // band 0
2956 : {247, 2, 247}, {226, 8, 242}, {191, 14, 235},
2957 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2958 : },
2959 : { // band 1
2960 : {231, 94, 254}, {248, 91, 254}, {186, 89, 252},
2961 : {128, 92, 244}, { 79, 112, 254}, {128, 128, 128},
2962 : },
2963 : { // band 2
2964 : {228, 145, 253}, {240, 130, 254}, {223, 105, 254},
2965 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2966 : },
2967 : { // band 3
2968 : {245, 153, 253}, {240, 120, 254}, {128, 128, 128},
2969 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2970 : },
2971 : { // band 4
2972 : {254, 128, 254}, {204, 128, 254}, {128, 128, 128},
2973 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2974 : },
2975 : { // band 5
2976 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2977 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2978 : },
2979 : },
2980 : { // Inter
2981 : { // band 0
2982 : {253, 7, 249}, {224, 9, 244}, {182, 13, 231},
2983 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2984 : },
2985 : { // band 1
2986 : {234, 109, 254}, {242, 104, 254}, {160, 98, 254},
2987 : {123, 85, 243}, { 82, 43, 217}, {128, 128, 128},
2988 : },
2989 : { // band 2
2990 : {243, 137, 254}, {240, 118, 254}, {136, 53, 254},
2991 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2992 : },
2993 : { // band 3
2994 : {251, 173, 254}, {229, 129, 250}, {128, 128, 128},
2995 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
2996 : },
2997 : { // band 4
2998 : {254, 119, 254}, {254, 128, 128}, {128, 128, 128},
2999 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3000 : },
3001 : { // band 5
3002 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3003 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3004 : },
3005 : },
3006 : },
3007 : },
3008 : #endif
3009 : { // TX_SIZE 0
3010 : { // Y plane
3011 : { // Intra
3012 : { // band 0
3013 : {186, 16, 200}, {122, 31, 187}, { 78, 40, 161},
3014 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3015 : },
3016 : { // band 1
3017 : {146, 119, 245}, {182, 115, 244}, {130, 113, 238},
3018 : { 88, 110, 225}, { 47, 103, 208}, { 5, 102, 188},
3019 : },
3020 : { // band 2
3021 : {164, 157, 248}, {155, 141, 250}, { 71, 116, 243},
3022 : { 88, 129, 233}, { 50, 99, 228}, { 26, 148, 191},
3023 : },
3024 : { // band 3
3025 : {200, 158, 253}, {177, 118, 252}, { 99, 113, 245},
3026 : { 77, 120, 210}, {128, 128, 128}, {128, 128, 128},
3027 : },
3028 : { // band 4
3029 : {231, 104, 254}, {209, 82, 254}, {143, 112, 252},
3030 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3031 : },
3032 : { // band 5
3033 : {250, 36, 254}, {243, 55, 254}, {223, 170, 254},
3034 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3035 : },
3036 : },
3037 : { // Intra
3038 : { // band 0
3039 : {207, 37, 226}, {164, 46, 218}, {122, 58, 201},
3040 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3041 : },
3042 : { // band 1
3043 : {149, 154, 253}, {170, 137, 253}, { 94, 123, 247},
3044 : { 42, 113, 222}, { 16, 97, 174}, { 49, 98, 159},
3045 : },
3046 : { // band 2
3047 : {177, 162, 253}, {165, 142, 252}, { 51, 108, 243},
3048 : { 18, 108, 213}, { 1, 98, 254}, {128, 128, 128},
3049 : },
3050 : { // band 3
3051 : {211, 152, 254}, {184, 116, 254}, { 70, 110, 244},
3052 : { 8, 108, 237}, {128, 128, 128}, {128, 128, 128},
3053 : },
3054 : { // band 4
3055 : {236, 89, 254}, {210, 67, 254}, {112, 111, 248},
3056 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3057 : },
3058 : { // band 5
3059 : {246, 26, 254}, {233, 35, 254}, {128, 1, 254},
3060 : {254, 128, 128}, {128, 128, 128}, {128, 128, 128},
3061 : },
3062 : },
3063 : },
3064 : { // UV plane
3065 : { // Inter
3066 : { // band 0
3067 : {247, 2, 247}, {226, 8, 242}, {191, 14, 235},
3068 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3069 : },
3070 : { // band 1
3071 : {231, 94, 254}, {248, 91, 254}, {186, 89, 252},
3072 : {128, 92, 244}, { 79, 112, 254}, {128, 128, 128},
3073 : },
3074 : { // band 2
3075 : {228, 145, 253}, {240, 130, 254}, {223, 105, 254},
3076 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3077 : },
3078 : { // band 3
3079 : {245, 153, 253}, {240, 120, 254}, {128, 128, 128},
3080 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3081 : },
3082 : { // band 4
3083 : {254, 128, 254}, {204, 128, 254}, {128, 128, 128},
3084 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3085 : },
3086 : { // band 5
3087 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3088 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3089 : },
3090 : },
3091 : { // Inter
3092 : { // band 0
3093 : {253, 7, 249}, {224, 9, 244}, {182, 13, 231},
3094 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3095 : },
3096 : { // band 1
3097 : {234, 109, 254}, {242, 104, 254}, {160, 98, 254},
3098 : {123, 85, 243}, { 82, 43, 217}, {128, 128, 128},
3099 : },
3100 : { // band 2
3101 : {243, 137, 254}, {240, 118, 254}, {136, 53, 254},
3102 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3103 : },
3104 : { // band 3
3105 : {251, 173, 254}, {229, 129, 250}, {128, 128, 128},
3106 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3107 : },
3108 : { // band 4
3109 : {254, 119, 254}, {254, 128, 128}, {128, 128, 128},
3110 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3111 : },
3112 : { // band 5
3113 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3114 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3115 : },
3116 : },
3117 : },
3118 : },
3119 : { // TX_SIZE 1
3120 : { // Y plane
3121 : { // Intra
3122 : { // band 0
3123 : { 49, 26, 159}, { 36, 34, 150}, { 26, 38, 124},
3124 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3125 : },
3126 : { // band 1
3127 : { 99, 122, 226}, {143, 119, 225}, { 90, 113, 213},
3128 : { 46, 102, 193}, { 14, 84, 157}, { 3, 59, 107},
3129 : },
3130 : { // band 2
3131 : {109, 164, 237}, { 74, 142, 233}, { 29, 112, 216},
3132 : { 14, 92, 184}, { 10, 80, 156}, { 1, 52, 137},
3133 : },
3134 : { // band 3
3135 : {110, 191, 245}, { 59, 156, 240}, { 18, 121, 220},
3136 : { 8, 97, 184}, { 3, 84, 150}, {128, 128, 128},
3137 : },
3138 : { // band 4
3139 : {115, 203, 250}, { 59, 167, 246}, { 16, 130, 226},
3140 : { 7, 97, 192}, { 1, 71, 99}, {128, 128, 128},
3141 : },
3142 : { // band 5
3143 : {149, 218, 253}, { 93, 171, 251}, { 28, 125, 233},
3144 : { 28, 99, 192}, {128, 85, 85}, {128, 128, 128},
3145 : },
3146 : },
3147 : { // Intra
3148 : { // band 0
3149 : { 97, 45, 229}, { 79, 52, 205}, { 46, 58, 171},
3150 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3151 : },
3152 : { // band 1
3153 : { 99, 180, 249}, {156, 165, 249}, { 73, 141, 237},
3154 : { 31, 116, 208}, { 13, 81, 153}, { 5, 42, 86},
3155 : },
3156 : { // band 2
3157 : {113, 188, 251}, { 68, 161, 244}, { 16, 108, 216},
3158 : { 6, 81, 168}, { 2, 65, 118}, {128, 1, 1},
3159 : },
3160 : { // band 3
3161 : {117, 201, 252}, { 62, 171, 248}, { 12, 119, 221},
3162 : { 5, 90, 182}, { 4, 66, 116}, {128, 128, 128},
3163 : },
3164 : { // band 4
3165 : {128, 207, 253}, { 70, 176, 251}, { 11, 126, 228},
3166 : { 6, 89, 189}, { 1, 44, 148}, {128, 128, 128},
3167 : },
3168 : { // band 5
3169 : {162, 218, 254}, {107, 170, 253}, { 22, 131, 238},
3170 : { 1, 77, 182}, { 1, 254, 128}, {128, 128, 128},
3171 : },
3172 : },
3173 : },
3174 : { // UV plane
3175 : { // Inter
3176 : { // band 0
3177 : {235, 5, 238}, {194, 14, 223}, {152, 22, 205},
3178 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3179 : },
3180 : { // band 1
3181 : {200, 121, 251}, {241, 115, 252}, {167, 108, 248},
3182 : { 93, 93, 233}, { 36, 66, 189}, {128, 128, 128},
3183 : },
3184 : { // band 2
3185 : {220, 151, 253}, {176, 135, 252}, { 95, 124, 254},
3186 : { 64, 105, 217}, {128, 128, 128}, {128, 128, 128},
3187 : },
3188 : { // band 3
3189 : {225, 189, 254}, {175, 155, 254}, {102, 119, 254},
3190 : { 1, 1, 1}, {128, 128, 128}, {128, 128, 128},
3191 : },
3192 : { // band 4
3193 : {218, 195, 254}, {125, 157, 253}, {128, 128, 254},
3194 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3195 : },
3196 : { // band 5
3197 : {221, 197, 254}, { 85, 210, 254}, {128, 128, 128},
3198 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3199 : },
3200 : },
3201 : { // Inter
3202 : { // band 0
3203 : {250, 9, 246}, {204, 13, 234}, {144, 18, 211},
3204 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3205 : },
3206 : { // band 1
3207 : {213, 157, 253}, {243, 138, 253}, {170, 117, 250},
3208 : {109, 91, 233}, { 66, 77, 163}, { 64, 85, 254},
3209 : },
3210 : { // band 2
3211 : {221, 169, 254}, {182, 141, 253}, {112, 120, 239},
3212 : { 85, 165, 254}, {128, 128, 128}, {128, 128, 128},
3213 : },
3214 : { // band 3
3215 : {226, 192, 254}, {189, 174, 251}, {153, 128, 254},
3216 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3217 : },
3218 : { // band 4
3219 : {232, 192, 254}, {195, 187, 247}, { 1, 191, 254},
3220 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3221 : },
3222 : { // band 5
3223 : {247, 185, 254}, {254, 93, 254}, {128, 128, 128},
3224 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3225 : },
3226 : },
3227 : },
3228 : },
3229 : { // TX_SIZE 2
3230 : { // Y plane
3231 : { // Intra
3232 : { // band 0
3233 : { 14, 30, 136}, { 15, 33, 120}, { 10, 33, 90},
3234 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3235 : },
3236 : { // band 1
3237 : { 92, 109, 209}, {113, 108, 207}, { 77, 102, 193},
3238 : { 39, 91, 171}, { 11, 70, 129}, { 2, 44, 77},
3239 : },
3240 : { // band 2
3241 : { 99, 158, 223}, { 66, 135, 217}, { 23, 109, 194},
3242 : { 9, 85, 160}, { 3, 66, 124}, { 1, 51, 100},
3243 : },
3244 : { // band 3
3245 : { 89, 189, 234}, { 46, 149, 225}, { 10, 110, 194},
3246 : { 2, 83, 156}, { 1, 57, 113}, { 1, 47, 73},
3247 : },
3248 : { // band 4
3249 : { 78, 206, 242}, { 28, 161, 232}, { 3, 114, 200},
3250 : { 1, 86, 161}, { 1, 62, 118}, { 1, 1, 1},
3251 : },
3252 : { // band 5
3253 : { 72, 227, 250}, { 20, 182, 242}, { 3, 126, 210},
3254 : { 2, 91, 166}, { 1, 64, 126}, {128, 128, 128},
3255 : },
3256 : },
3257 : { // Intra
3258 : { // band 0
3259 : { 23, 42, 227}, { 41, 43, 195}, { 25, 45, 146},
3260 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3261 : },
3262 : { // band 1
3263 : {100, 172, 245}, {165, 158, 246}, { 88, 137, 234},
3264 : { 44, 116, 203}, { 18, 85, 149}, { 7, 56, 92},
3265 : },
3266 : { // band 2
3267 : {117, 188, 247}, { 70, 155, 239}, { 18, 105, 204},
3268 : { 7, 78, 158}, { 2, 50, 111}, { 1, 38, 77},
3269 : },
3270 : { // band 3
3271 : {104, 207, 250}, { 54, 166, 241}, { 6, 110, 199},
3272 : { 1, 78, 155}, { 1, 45, 100}, { 1, 1, 1},
3273 : },
3274 : { // band 4
3275 : { 87, 216, 251}, { 30, 177, 243}, { 1, 114, 203},
3276 : { 1, 85, 157}, { 1, 53, 108}, {128, 128, 128},
3277 : },
3278 : { // band 5
3279 : { 80, 230, 253}, { 23, 193, 248}, { 1, 127, 215},
3280 : { 1, 94, 170}, { 1, 71, 59}, {128, 128, 128},
3281 : },
3282 : },
3283 : },
3284 : { // UV plane
3285 : { // Inter
3286 : { // band 0
3287 : {222, 9, 234}, {161, 20, 210}, {113, 30, 185},
3288 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3289 : },
3290 : { // band 1
3291 : {195, 120, 248}, {231, 124, 247}, {148, 116, 238},
3292 : { 64, 98, 207}, { 20, 70, 147}, { 87, 68, 100},
3293 : },
3294 : { // band 2
3295 : {186, 161, 250}, {124, 148, 245}, { 44, 123, 230},
3296 : { 23, 107, 205}, { 1, 80, 131}, {128, 128, 128},
3297 : },
3298 : { // band 3
3299 : {172, 196, 252}, {110, 160, 248}, { 37, 134, 235},
3300 : { 23, 125, 200}, {128, 254, 128}, {128, 128, 128},
3301 : },
3302 : { // band 4
3303 : {173, 209, 253}, {103, 175, 250}, { 1, 120, 240},
3304 : { 1, 146, 254}, {128, 128, 128}, {128, 128, 128},
3305 : },
3306 : { // band 5
3307 : {184, 235, 254}, { 81, 186, 251}, {128, 109, 254},
3308 : {128, 254, 128}, {128, 128, 128}, {128, 128, 128},
3309 : },
3310 : },
3311 : { // Inter
3312 : { // band 0
3313 : {248, 8, 243}, {185, 11, 225}, {108, 11, 189},
3314 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3315 : },
3316 : { // band 1
3317 : {208, 158, 254}, {244, 147, 252}, {195, 132, 248},
3318 : {161, 122, 224}, {129, 114, 188}, { 59, 119, 159},
3319 : },
3320 : { // band 2
3321 : {202, 182, 253}, {143, 161, 251}, { 73, 115, 247},
3322 : {146, 175, 204}, {128, 1, 254}, {128, 128, 128},
3323 : },
3324 : { // band 3
3325 : {202, 204, 254}, {131, 174, 251}, { 18, 153, 207},
3326 : {128, 254, 128}, {128, 128, 128}, {128, 128, 128},
3327 : },
3328 : { // band 4
3329 : {192, 221, 254}, {114, 190, 254}, {128, 170, 254},
3330 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3331 : },
3332 : { // band 5
3333 : {166, 236, 254}, {119, 200, 254}, {128, 128, 128},
3334 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3335 : },
3336 : },
3337 : },
3338 : },
3339 : { // TX_SIZE 3
3340 : { // Y plane
3341 : { // Intra
3342 : { // band 0
3343 : { 30, 32, 144}, { 21, 35, 96}, { 4, 27, 55},
3344 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3345 : },
3346 : { // band 1
3347 : { 35, 107, 172}, { 61, 104, 170}, { 33, 94, 160},
3348 : { 13, 80, 139}, { 2, 55, 97}, { 1, 28, 49},
3349 : },
3350 : { // band 2
3351 : { 51, 153, 195}, { 29, 129, 189}, { 9, 99, 163},
3352 : { 3, 75, 129}, { 1, 49, 88}, { 1, 29, 50},
3353 : },
3354 : { // band 3
3355 : { 53, 164, 210}, { 21, 134, 201}, { 3, 97, 164},
3356 : { 1, 69, 124}, { 1, 45, 82}, { 1, 31, 58},
3357 : },
3358 : { // band 4
3359 : { 47, 205, 234}, { 18, 158, 220}, { 2, 109, 177},
3360 : { 1, 78, 137}, { 1, 53, 101}, { 1, 34, 70},
3361 : },
3362 : { // band 5
3363 : { 55, 233, 245}, { 16, 179, 233}, { 1, 116, 191},
3364 : { 1, 79, 145}, { 1, 53, 101}, { 1, 37, 58},
3365 : },
3366 : },
3367 : { // Intra
3368 : { // band 0
3369 : { 36, 33, 227}, { 39, 28, 190}, { 18, 27, 134},
3370 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3371 : },
3372 : { // band 1
3373 : { 76, 156, 235}, {184, 147, 235}, {114, 130, 220},
3374 : { 72, 112, 191}, { 42, 87, 144}, { 21, 65, 93},
3375 : },
3376 : { // band 2
3377 : { 96, 179, 240}, { 51, 149, 228}, { 12, 105, 191},
3378 : { 6, 74, 148}, { 1, 47, 100}, { 1, 29, 53},
3379 : },
3380 : { // band 3
3381 : { 88, 191, 242}, { 35, 154, 231}, { 3, 106, 187},
3382 : { 1, 74, 140}, { 1, 41, 84}, { 1, 25, 38},
3383 : },
3384 : { // band 4
3385 : { 77, 212, 249}, { 28, 171, 239}, { 2, 117, 199},
3386 : { 1, 79, 151}, { 1, 45, 99}, { 1, 1, 1},
3387 : },
3388 : { // band 5
3389 : { 77, 236, 252}, { 27, 190, 246}, { 2, 120, 203},
3390 : { 1, 78, 147}, { 1, 42, 72}, {128, 128, 128},
3391 : },
3392 : },
3393 : },
3394 : { // UV plane
3395 : { // Inter
3396 : { // band 0
3397 : {185, 11, 227}, {113, 30, 182}, { 57, 44, 144},
3398 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3399 : },
3400 : { // band 1
3401 : {151, 139, 244}, {212, 139, 241}, {124, 126, 231},
3402 : { 59, 104, 213}, { 26, 73, 158}, { 20, 45, 95},
3403 : },
3404 : { // band 2
3405 : {155, 163, 247}, {108, 152, 239}, { 39, 124, 214},
3406 : { 7, 109, 162}, { 29, 57, 128}, {128, 128, 128},
3407 : },
3408 : { // band 3
3409 : {158, 176, 250}, { 89, 164, 243}, { 11, 114, 196},
3410 : { 1, 96, 141}, { 1, 81, 118}, {128, 1, 1},
3411 : },
3412 : { // band 4
3413 : {148, 212, 251}, { 59, 174, 240}, { 2, 130, 203},
3414 : { 1, 70, 168}, { 1, 51, 106}, {128, 128, 128},
3415 : },
3416 : { // band 5
3417 : {104, 237, 252}, { 39, 190, 246}, { 1, 154, 220},
3418 : {128, 102, 1}, {128, 128, 128}, {128, 128, 128},
3419 : },
3420 : },
3421 : { // Inter
3422 : { // band 0
3423 : {236, 6, 242}, {111, 6, 206}, { 36, 5, 161},
3424 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3425 : },
3426 : { // band 1
3427 : {193, 193, 252}, {248, 182, 251}, {218, 150, 246},
3428 : {182, 134, 244}, {151, 137, 227}, { 45, 102, 195},
3429 : },
3430 : { // band 2
3431 : {188, 202, 251}, {125, 165, 249}, { 64, 75, 218},
3432 : { 1, 128, 254}, {128, 128, 128}, {128, 128, 128},
3433 : },
3434 : { // band 3
3435 : {178, 225, 254}, {107, 188, 231}, { 21, 135, 233},
3436 : {128, 1, 254}, {128, 128, 128}, {128, 128, 128},
3437 : },
3438 : { // band 4
3439 : {164, 227, 253}, { 55, 193, 251}, { 1, 111, 225},
3440 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3441 : },
3442 : { // band 5
3443 : {151, 243, 254}, { 50, 203, 254}, {128, 179, 254},
3444 : {128, 1, 254}, {128, 128, 128}, {128, 128, 128},
3445 : },
3446 : },
3447 : },
3448 : },
3449 : #if CONFIG_TX64X64
3450 : { // TX_SIZE 4
3451 : { // Y plane
3452 : { // Intra
3453 : { // band 0
3454 : { 30, 32, 144}, { 21, 35, 96}, { 4, 27, 55},
3455 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3456 : },
3457 : { // band 1
3458 : { 35, 107, 172}, { 61, 104, 170}, { 33, 94, 160},
3459 : { 13, 80, 139}, { 2, 55, 97}, { 1, 28, 49},
3460 : },
3461 : { // band 2
3462 : { 51, 153, 195}, { 29, 129, 189}, { 9, 99, 163},
3463 : { 3, 75, 129}, { 1, 49, 88}, { 1, 29, 50},
3464 : },
3465 : { // band 3
3466 : { 53, 164, 210}, { 21, 134, 201}, { 3, 97, 164},
3467 : { 1, 69, 124}, { 1, 45, 82}, { 1, 31, 58},
3468 : },
3469 : { // band 4
3470 : { 47, 205, 234}, { 18, 158, 220}, { 2, 109, 177},
3471 : { 1, 78, 137}, { 1, 53, 101}, { 1, 34, 70},
3472 : },
3473 : { // band 5
3474 : { 55, 233, 245}, { 16, 179, 233}, { 1, 116, 191},
3475 : { 1, 79, 145}, { 1, 53, 101}, { 1, 37, 58},
3476 : },
3477 : },
3478 : { // Intra
3479 : { // band 0
3480 : { 36, 33, 227}, { 39, 28, 190}, { 18, 27, 134},
3481 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3482 : },
3483 : { // band 1
3484 : { 76, 156, 235}, {184, 147, 235}, {114, 130, 220},
3485 : { 72, 112, 191}, { 42, 87, 144}, { 21, 65, 93},
3486 : },
3487 : { // band 2
3488 : { 96, 179, 240}, { 51, 149, 228}, { 12, 105, 191},
3489 : { 6, 74, 148}, { 1, 47, 100}, { 1, 29, 53},
3490 : },
3491 : { // band 3
3492 : { 88, 191, 242}, { 35, 154, 231}, { 3, 106, 187},
3493 : { 1, 74, 140}, { 1, 41, 84}, { 1, 25, 38},
3494 : },
3495 : { // band 4
3496 : { 77, 212, 249}, { 28, 171, 239}, { 2, 117, 199},
3497 : { 1, 79, 151}, { 1, 45, 99}, { 1, 1, 1},
3498 : },
3499 : { // band 5
3500 : { 77, 236, 252}, { 27, 190, 246}, { 2, 120, 203},
3501 : { 1, 78, 147}, { 1, 42, 72}, {128, 128, 128},
3502 : },
3503 : },
3504 : },
3505 : { // UV plane
3506 : { // Inter
3507 : { // band 0
3508 : {185, 11, 227}, {113, 30, 182}, { 57, 44, 144},
3509 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3510 : },
3511 : { // band 1
3512 : {151, 139, 244}, {212, 139, 241}, {124, 126, 231},
3513 : { 59, 104, 213}, { 26, 73, 158}, { 20, 45, 95},
3514 : },
3515 : { // band 2
3516 : {155, 163, 247}, {108, 152, 239}, { 39, 124, 214},
3517 : { 7, 109, 162}, { 29, 57, 128}, {128, 128, 128},
3518 : },
3519 : { // band 3
3520 : {158, 176, 250}, { 89, 164, 243}, { 11, 114, 196},
3521 : { 1, 96, 141}, { 1, 81, 118}, {128, 1, 1},
3522 : },
3523 : { // band 4
3524 : {148, 212, 251}, { 59, 174, 240}, { 2, 130, 203},
3525 : { 1, 70, 168}, { 1, 51, 106}, {128, 128, 128},
3526 : },
3527 : { // band 5
3528 : {104, 237, 252}, { 39, 190, 246}, { 1, 154, 220},
3529 : {128, 102, 1}, {128, 128, 128}, {128, 128, 128},
3530 : },
3531 : },
3532 : { // Inter
3533 : { // band 0
3534 : {236, 6, 242}, {111, 6, 206}, { 36, 5, 161},
3535 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3536 : },
3537 : { // band 1
3538 : {193, 193, 252}, {248, 182, 251}, {218, 150, 246},
3539 : {182, 134, 244}, {151, 137, 227}, { 45, 102, 195},
3540 : },
3541 : { // band 2
3542 : {188, 202, 251}, {125, 165, 249}, { 64, 75, 218},
3543 : { 1, 128, 254}, {128, 128, 128}, {128, 128, 128},
3544 : },
3545 : { // band 3
3546 : {178, 225, 254}, {107, 188, 231}, { 21, 135, 233},
3547 : {128, 1, 254}, {128, 128, 128}, {128, 128, 128},
3548 : },
3549 : { // band 4
3550 : {164, 227, 253}, { 55, 193, 251}, { 1, 111, 225},
3551 : {128, 128, 128}, {128, 128, 128}, {128, 128, 128},
3552 : },
3553 : { // band 5
3554 : {151, 243, 254}, { 50, 203, 254}, {128, 179, 254},
3555 : {128, 1, 254}, {128, 128, 128}, {128, 128, 128},
3556 : },
3557 : },
3558 : },
3559 : },
3560 : #endif // CONFIG_TX64X64
3561 : },
3562 : };
3563 : #else
3564 : static const av1_coeff_probs_model default_coef_probs_4x4[PLANE_TYPES] = {
3565 : { // Y plane
3566 : { // Intra
3567 : { // Band 0
3568 : {97, 27, 144}, {81, 38, 128}, {51, 42, 99}
3569 : },
3570 : { // Band 1
3571 : {74, 113, 204}, {68, 101, 199}, {50, 87, 173},
3572 : {31, 76, 133}, {13, 55, 86}, {3, 30, 39}
3573 : },
3574 : { // Band 2
3575 : {83, 156, 222}, {74, 127, 215}, {46, 101, 179},
3576 : {30, 80, 129}, {14, 57, 81}, {3, 27, 37}
3577 : },
3578 : { // Band 3
3579 : {105, 164, 233}, {84, 128, 224}, {49, 92, 175},
3580 : {28, 60, 114}, {12, 34, 53}, {20, 59, 98}
3581 : },
3582 : { // Band 4
3583 : {131, 159, 243}, {98, 123, 228}, {40, 78, 151},
3584 : {19, 46, 97}, {13, 47, 19}, {19, 16, 19}
3585 : },
3586 : { // Band 5
3587 : {192, 71, 241}, {174, 70, 226}, {125, 46, 153},
3588 : {108, 49, 116}, {82, 24, 46}, {60, 14, 30}
3589 : }
3590 : },
3591 : { // Inter
3592 : { // Band 0
3593 : {111, 66, 218}, {107, 87, 211}, {93, 99, 207}
3594 : },
3595 : { // Band 1
3596 : {107, 166, 250}, {107, 143, 247}, {73, 119, 221},
3597 : {43, 91, 166}, {17, 74, 102}, {3, 70, 53}
3598 : },
3599 : { // Band 2
3600 : {126, 177, 251}, {109, 148, 246}, {64, 99, 204},
3601 : {42, 68, 140}, {28, 52, 84}, {20, 34, 1}
3602 : },
3603 : { // Band 3
3604 : {143, 178, 252}, {114, 144, 245}, {46, 92, 188},
3605 : {45, 65, 104}, {40, 44, 76}, {1, 1, 1}
3606 : },
3607 : { // Band 4
3608 : {163, 159, 251}, {120, 131, 243}, {47, 81, 182},
3609 : {32, 39, 128}, {33, 44, 56}, {1, 17, 34}
3610 : },
3611 : { // Band 5
3612 : {209, 94, 251}, {190, 81, 241}, {139, 45, 147},
3613 : {123, 35, 73}, {118, 1, 118}, {3, 16, 42}
3614 : }
3615 : }
3616 : },
3617 : { // UV plane
3618 : { // Intra
3619 : { // Band 0
3620 : {189, 37, 229}, {145, 68, 205}, {99, 74, 171}
3621 : },
3622 : { // Band 1
3623 : {153, 139, 242}, {135, 125, 235}, {84, 100, 200},
3624 : {49, 75, 162}, {9, 21, 84}, {3, 31, 69}
3625 : },
3626 : { // Band 2
3627 : {165, 165, 244}, {128, 144, 240}, {68, 94, 204},
3628 : {39, 72, 132}, {22, 44, 93}, {26, 73, 26}
3629 : },
3630 : { // Band 3
3631 : {181, 174, 246}, {142, 132, 241}, {81, 96, 212},
3632 : {41, 70, 166}, {9, 48, 92}, {1, 19, 38}
3633 : },
3634 : { // Band 4
3635 : {197, 159, 251}, {168, 121, 245}, {107, 75, 218},
3636 : {70, 43, 158}, {1, 128, 1}, {1, 18, 37}
3637 : },
3638 : { // Band 5
3639 : {231, 79, 255}, {211, 74, 249}, {157, 104, 210},
3640 : {128, 102, 213}, {12, 34, 96}, {2, 20, 47}
3641 : }
3642 : },
3643 : { // Inter
3644 : { // Band 0
3645 : {220, 53, 252}, {191, 80, 248}, {154, 100, 245}
3646 : },
3647 : { // Band 1
3648 : {205, 153, 255}, {182, 147, 254}, {110, 131, 231},
3649 : {68, 114, 161}, {50, 114, 140}, {1, 33, 57}
3650 : },
3651 : { // Band 2
3652 : {213, 171, 255}, {184, 163, 254}, {116, 104, 235},
3653 : {79, 71, 207}, {1, 41, 79}, {1, 20, 39}
3654 : },
3655 : { // Band 3
3656 : {223, 158, 255}, {203, 137, 255}, {111, 142, 244},
3657 : {2, 255, 133}, {1, 44, 85}, {1, 22, 47}
3658 : },
3659 : { // Band 4
3660 : {232, 148, 255}, {222, 123, 255}, {255, 128, 255},
3661 : {3, 61, 124}, {1, 41, 84}, {1, 21, 52}
3662 : },
3663 : { // Band 5
3664 : {248, 92, 255}, {248, 96, 255}, {69, 58, 184},
3665 : {31, 44, 137}, {14, 38, 105}, {8, 23, 61}
3666 : }
3667 : }
3668 : }
3669 : };
3670 : static const av1_coeff_probs_model default_coef_probs_8x8[PLANE_TYPES] = {
3671 : { // Y plane
3672 : { // Intra
3673 : { // Band 0
3674 : {112, 31, 159}, {72, 37, 119}, {22, 35, 68}
3675 : },
3676 : { // Band 1
3677 : {42, 109, 174}, {45, 99, 172}, {32, 84, 149},
3678 : {18, 69, 119}, {6, 46, 76}, {1, 19, 31}
3679 : },
3680 : { // Band 2
3681 : {40, 154, 202}, {35, 126, 191}, {19, 98, 160},
3682 : {10, 75, 122}, {5, 53, 82}, {1, 23, 39}
3683 : },
3684 : { // Band 3
3685 : {39, 176, 215}, {28, 135, 200}, {11, 93, 156},
3686 : {5, 63, 109}, {1, 36, 64}, {1, 14, 26}
3687 : },
3688 : { // Band 4
3689 : {41, 191, 230}, {25, 147, 212}, {9, 97, 160},
3690 : {3, 65, 109}, {1, 33, 58}, {1, 14, 20}
3691 : },
3692 : { // Band 5
3693 : {68, 203, 242}, {40, 159, 220}, {12, 97, 153},
3694 : {5, 58, 97}, {1, 29, 55}, {1, 11, 18}
3695 : }
3696 : },
3697 : { // Inter
3698 : { // Band 0
3699 : {99, 67, 221}, {86, 80, 204}, {60, 87, 184}
3700 : },
3701 : { // Band 1
3702 : {73, 169, 246}, {79, 158, 242}, {50, 135, 220},
3703 : {30, 113, 181}, {18, 76, 126}, {5, 54, 85}
3704 : },
3705 : { // Band 2
3706 : {90, 184, 250}, {78, 162, 243}, {47, 118, 214},
3707 : {35, 85, 171}, {32, 53, 115}, {20, 28, 76}
3708 : },
3709 : { // Band 3
3710 : {109, 197, 252}, {89, 172, 247}, {52, 119, 217},
3711 : {37, 80, 161}, {23, 44, 100}, {1, 18, 34}
3712 : },
3713 : { // Band 4
3714 : {132, 202, 254}, {110, 175, 251}, {63, 128, 228},
3715 : {37, 86, 168}, {64, 91, 102}, {1, 17, 34}
3716 : },
3717 : { // Band 5
3718 : {126, 204, 253}, {100, 174, 250}, {50, 148, 237},
3719 : {25, 90, 133}, {1, 64, 85}, {3, 16, 42}
3720 : }
3721 : }
3722 : },
3723 : { // UV plane
3724 : { // Intra
3725 : { // Band 0
3726 : {195, 35, 235}, {137, 63, 201}, {62, 70, 145}
3727 : },
3728 : { // Band 1
3729 : {110, 158, 233}, {102, 143, 227}, {60, 120, 199},
3730 : {30, 85, 156}, {9, 50, 90}, {1, 16, 33}
3731 : },
3732 : { // Band 2
3733 : {102, 185, 233}, {71, 152, 224}, {29, 111, 187},
3734 : {18, 74, 138}, {4, 56, 87}, {1, 18, 46}
3735 : },
3736 : { // Band 3
3737 : {101, 205, 239}, {66, 161, 229}, {23, 109, 183},
3738 : {9, 85, 135}, {5, 71, 142}, {1, 1, 102}
3739 : },
3740 : { // Band 4
3741 : {109, 216, 243}, {69, 168, 233}, {23, 119, 191},
3742 : {8, 137, 115}, {1, 54, 98}, {1, 1, 255}
3743 : },
3744 : { // Band 5
3745 : {139, 224, 249}, {98, 176, 238}, {55, 129, 187},
3746 : {25, 101, 131}, {26, 59, 154}, {2, 20, 47}
3747 : }
3748 : },
3749 : { // Inter
3750 : { // Band 0
3751 : {220, 72, 254}, {176, 108, 251}, {114, 132, 247}
3752 : },
3753 : { // Band 1
3754 : {161, 185, 255}, {141, 185, 254}, {131, 180, 249},
3755 : {111, 164, 186}, {50, 98, 142}, {1, 128, 1}
3756 : },
3757 : { // Band 2
3758 : {171, 195, 255}, {133, 184, 254}, {68, 140, 231},
3759 : {102, 96, 205}, {1, 1, 128}, {1, 20, 39}
3760 : },
3761 : { // Band 3
3762 : {180, 206, 255}, {148, 191, 254}, {83, 157, 241},
3763 : {128, 171, 128}, {1, 44, 85}, {1, 22, 47}
3764 : },
3765 : { // Band 4
3766 : {194, 214, 255}, {159, 188, 255}, {122, 148, 250},
3767 : {3, 255, 124}, {1, 41, 84}, {1, 21, 52}
3768 : },
3769 : { // Band 5
3770 : {231, 217, 255}, {209, 149, 255}, {205, 145, 205},
3771 : {31, 44, 137}, {14, 38, 105}, {8, 23, 61}
3772 : }
3773 : }
3774 : }
3775 : };
3776 : static const av1_coeff_probs_model default_coef_probs_16x16[PLANE_TYPES] = {
3777 : { // Y plane
3778 : { // Intra
3779 : { // Band 0
3780 : {91, 31, 117}, {49, 31, 89}, {14, 25, 48}
3781 : },
3782 : { // Band 1
3783 : {31, 97, 151}, {33, 89, 148}, {28, 76, 133},
3784 : {17, 60, 106}, {7, 42, 72}, {1, 19, 32}
3785 : },
3786 : { // Band 2
3787 : {28, 152, 182}, {28, 120, 174}, {15, 93, 146},
3788 : {9, 72, 116}, {5, 47, 82}, {1, 21, 37}
3789 : },
3790 : { // Band 3
3791 : {29, 174, 203}, {23, 127, 187}, {9, 89, 145},
3792 : {2, 56, 100}, {1, 31, 56}, {1, 12, 25}
3793 : },
3794 : { // Band 4
3795 : {28, 193, 220}, {17, 141, 197}, {4, 87, 142},
3796 : {1, 54, 95}, {1, 31, 56}, {1, 12, 26}
3797 : },
3798 : { // Band 5
3799 : {29, 221, 240}, {11, 167, 215}, {2, 93, 149},
3800 : {1, 58, 100}, {1, 35, 61}, {1, 16, 28}
3801 : }
3802 : },
3803 : { // Inter
3804 : { // Band 0
3805 : {108, 52, 214}, {84, 60, 186}, {45, 69, 161}
3806 : },
3807 : { // Band 1
3808 : {43, 164, 236}, {57, 161, 233}, {38, 146, 214},
3809 : {24, 120, 182}, {15, 80, 126}, {5, 28, 66}
3810 : },
3811 : { // Band 2
3812 : {58, 187, 242}, {47, 163, 234}, {28, 118, 204},
3813 : {26, 82, 165}, {21, 54, 112}, {4, 28, 55}
3814 : },
3815 : { // Band 3
3816 : {65, 201, 248}, {51, 170, 239}, {22, 117, 204},
3817 : {11, 81, 159}, {10, 43, 102}, {1, 1, 1}
3818 : },
3819 : { // Band 4
3820 : {80, 206, 252}, {57, 179, 245}, {25, 129, 214},
3821 : {16, 97, 170}, {6, 60, 130}, {1, 128, 1}
3822 : },
3823 : { // Band 5
3824 : {97, 217, 253}, {68, 186, 250}, {26, 138, 216},
3825 : {20, 105, 166}, {11, 78, 111}, {3, 16, 42}
3826 : }
3827 : }
3828 : },
3829 : { // UV plane
3830 : { // Intra
3831 : { // Band 0
3832 : {181, 37, 233}, {121, 55, 192}, {46, 52, 124}
3833 : },
3834 : { // Band 1
3835 : {108, 157, 221}, {98, 140, 215}, {59, 124, 187},
3836 : {34, 92, 158}, {9, 68, 112}, {1, 41, 70}
3837 : },
3838 : { // Band 2
3839 : {80, 188, 223}, {46, 153, 204}, {25, 91, 173},
3840 : {11, 73, 131}, {5, 43, 82}, {1, 17, 91}
3841 : },
3842 : { // Band 3
3843 : {63, 209, 228}, {31, 157, 206}, {8, 104, 167},
3844 : {3, 63, 122}, {1, 44, 87}, {1, 43, 51}
3845 : },
3846 : { // Band 4
3847 : {52, 220, 234}, {22, 165, 216}, {4, 104, 163},
3848 : {2, 62, 129}, {1, 33, 50}, {1, 26, 28}
3849 : },
3850 : { // Band 5
3851 : {58, 238, 242}, {24, 183, 224}, {4, 109, 172},
3852 : {2, 87, 141}, {1, 52, 79}, {1, 51, 64}
3853 : }
3854 : },
3855 : { // Inter
3856 : { // Band 0
3857 : {224, 52, 250}, {188, 81, 239}, {138, 114, 228}
3858 : },
3859 : { // Band 1
3860 : {131, 206, 255}, {128, 193, 254}, {119, 173, 247},
3861 : {106, 127, 187}, {50, 100, 124}, {1, 96, 1}
3862 : },
3863 : { // Band 2
3864 : {123, 214, 254}, {86, 194, 254}, {64, 119, 221},
3865 : {43, 51, 128}, {1, 32, 110}, {1, 20, 39}
3866 : },
3867 : { // Band 3
3868 : {115, 223, 255}, {78, 200, 254}, {75, 164, 203},
3869 : {128, 85, 255}, {1, 44, 85}, {1, 22, 47}
3870 : },
3871 : { // Band 4
3872 : {132, 226, 255}, {88, 207, 254}, {20, 140, 225},
3873 : {3, 61, 124}, {1, 41, 84}, {1, 21, 52}
3874 : },
3875 : { // Band 5
3876 : {180, 236, 255}, {138, 223, 254}, {73, 166, 238},
3877 : {31, 255, 137}, {14, 38, 105}, {8, 23, 61}
3878 : }
3879 : }
3880 : }
3881 : };
3882 : static const av1_coeff_probs_model default_coef_probs_32x32[PLANE_TYPES] = {
3883 : { // Y plane
3884 : { // Intra
3885 : { // Band 0
3886 : {163, 26, 188}, {78, 29, 105}, {22, 22, 48}
3887 : },
3888 : { // Band 1
3889 : {72, 93, 168}, {74, 91, 170}, {62, 72, 151},
3890 : {37, 55, 112}, {10, 33, 63}, {1, 14, 23}
3891 : },
3892 : { // Band 2
3893 : {41, 163, 182}, {36, 136, 177}, {20, 102, 153},
3894 : {10, 76, 114}, {5, 45, 71}, {1, 17, 27}
3895 : },
3896 : { // Band 3
3897 : {43, 202, 213}, {28, 142, 193}, {10, 90, 141},
3898 : {2, 51, 93}, {1, 24, 48}, {1, 10, 19}
3899 : },
3900 : { // Band 4
3901 : {46, 216, 220}, {26, 150, 199}, {7, 87, 136},
3902 : {2, 49, 86}, {1, 28, 47}, {1, 12, 24}
3903 : },
3904 : { // Band 5
3905 : {19, 241, 237}, {5, 172, 200}, {1, 82, 126},
3906 : {1, 47, 79}, {1, 29, 47}, {1, 14, 25}
3907 : }
3908 : },
3909 : { // Inter
3910 : { // Band 0
3911 : {185, 20, 226}, {151, 26, 187}, {109, 34, 144}
3912 : },
3913 : { // Band 1
3914 : {56, 151, 227}, {76, 165, 232}, {62, 161, 222},
3915 : {47, 139, 201}, {29, 106, 150}, {14, 61, 98}
3916 : },
3917 : { // Band 2
3918 : {57, 200, 237}, {43, 164, 227}, {22, 106, 190},
3919 : {14, 68, 140}, {10, 48, 90}, {1, 15, 40}
3920 : },
3921 : { // Band 3
3922 : {46, 209, 238}, {28, 165, 225}, {7, 107, 180},
3923 : {2, 69, 125}, {2, 36, 94}, {1, 1, 1}
3924 : },
3925 : { // Band 4
3926 : {55, 225, 248}, {28, 181, 237}, {7, 117, 198},
3927 : {6, 77, 144}, {3, 60, 90}, {1, 1, 1}
3928 : },
3929 : { // Band 5
3930 : {63, 243, 251}, {27, 193, 242}, {4, 124, 200},
3931 : {1, 58, 153}, {1, 59, 124}, {3, 16, 42}
3932 : }
3933 : }
3934 : },
3935 : { // UV plane
3936 : { // Intra
3937 : { // Band 0
3938 : {208, 28, 218}, {183, 32, 188}, {169, 21, 189}
3939 : },
3940 : { // Band 1
3941 : {205, 124, 247}, {190, 96, 240}, {233, 89, 233},
3942 : {177, 44, 212}, {59, 58, 59}, {32, 33, 38}
3943 : },
3944 : { // Band 2
3945 : {194, 195, 250}, {179, 190, 226}, {32, 174, 128},
3946 : {32, 85, 128}, {12, 64, 122}, {1, 85, 90}
3947 : },
3948 : { // Band 3
3949 : {149, 232, 249}, {95, 159, 227}, {28, 91, 171},
3950 : {28, 102, 114}, {1, 1, 73}, {1, 19, 38}
3951 : },
3952 : { // Band 4
3953 : {154, 239, 246}, {138, 151, 235}, {1, 123, 138},
3954 : {128, 183, 255}, {1, 128, 1}, {1, 18, 37}
3955 : },
3956 : { // Band 5
3957 : {157, 255, 253}, {75, 171, 241}, {43, 102, 171},
3958 : {30, 44, 136}, {12, 34, 96}, {2, 20, 47}
3959 : }
3960 : },
3961 : { // Inter
3962 : { // Band 0
3963 : {249, 13, 248}, {238, 14, 220}, {225, 16, 174}
3964 : },
3965 : { // Band 1
3966 : {190, 189, 254}, {169, 134, 253}, {124, 179, 248},
3967 : {138, 131, 223}, {64, 133, 192}, {1, 85, 128}
3968 : },
3969 : { // Band 2
3970 : {139, 212, 254}, {126, 177, 255}, {93, 39, 186},
3971 : {1, 1, 171}, {1, 41, 79}, {1, 20, 39}
3972 : },
3973 : { // Band 3
3974 : {153, 216, 255}, {165, 204, 255}, {1, 1, 255},
3975 : {2, 73, 133}, {1, 1, 1}, {1, 22, 47}
3976 : },
3977 : { // Band 4
3978 : {147, 226, 254}, {119, 196, 255}, {1, 128, 255},
3979 : {1, 1, 171}, {1, 1, 1}, {1, 21, 52}
3980 : },
3981 : { // Band 5
3982 : {168, 240, 255}, {95, 179, 255}, {1, 171, 1},
3983 : {31, 44, 137}, {14, 38, 105}, {8, 23, 61}
3984 : }
3985 : }
3986 : }
3987 : };
3988 :
3989 : #if CONFIG_TX64X64
3990 : // FIXME. Optimize for EC_MULTISYMBOL
3991 : static const av1_coeff_probs_model default_coef_probs_64x64[PLANE_TYPES] = {
3992 : { // Y plane
3993 : { // Intra
3994 : { // Band 0
3995 : { 17, 38, 140 }, { 7, 34, 80 }, { 1, 17, 29 }
3996 : }, { // Band 1
3997 : { 37, 75, 128 }, { 41, 76, 128 }, { 26, 66, 116 },
3998 : { 12, 52, 94 }, { 2, 32, 55 }, { 1, 10, 16 }
3999 : }, { // Band 2
4000 : { 50, 127, 154 }, { 37, 109, 152 }, { 16, 82, 121 },
4001 : { 5, 59, 85 }, { 1, 35, 54 }, { 1, 13, 20 }
4002 : }, { // Band 3
4003 : { 40, 142, 167 }, { 17, 110, 157 }, { 2, 71, 112 },
4004 : { 1, 44, 72 }, { 1, 27, 45 }, { 1, 11, 17 }
4005 : }, { // Band 4
4006 : { 30, 175, 188 }, { 9, 124, 169 }, { 1, 74, 116 },
4007 : { 1, 48, 78 }, { 1, 30, 49 }, { 1, 11, 18 }
4008 : }, { // Band 5
4009 : { 10, 222, 223 }, { 2, 150, 194 }, { 1, 83, 128 },
4010 : { 1, 48, 79 }, { 1, 27, 45 }, { 1, 11, 17 }
4011 : }
4012 : }, { // Inter
4013 : { // Band 0
4014 : { 36, 41, 235 }, { 29, 36, 193 }, { 10, 27, 111 }
4015 : }, { // Band 1
4016 : { 85, 165, 222 }, { 177, 162, 215 }, { 110, 135, 195 },
4017 : { 57, 113, 168 }, { 23, 83, 120 }, { 10, 49, 61 }
4018 : }, { // Band 2
4019 : { 85, 190, 223 }, { 36, 139, 200 }, { 5, 90, 146 },
4020 : { 1, 60, 103 }, { 1, 38, 65 }, { 1, 18, 30 }
4021 : }, { // Band 3
4022 : { 72, 202, 223 }, { 23, 141, 199 }, { 2, 86, 140 },
4023 : { 1, 56, 97 }, { 1, 36, 61 }, { 1, 16, 27 }
4024 : }, { // Band 4
4025 : { 55, 218, 225 }, { 13, 145, 200 }, { 1, 86, 141 },
4026 : { 1, 57, 99 }, { 1, 35, 61 }, { 1, 13, 22 }
4027 : }, { // Band 5
4028 : { 15, 235, 212 }, { 1, 132, 184 }, { 1, 84, 139 },
4029 : { 1, 57, 97 }, { 1, 34, 56 }, { 1, 14, 23 }
4030 : }
4031 : }
4032 : }, { // UV plane
4033 : { // Intra
4034 : { // Band 0
4035 : { 181, 21, 201 }, { 61, 37, 123 }, { 10, 38, 71 }
4036 : }, { // Band 1
4037 : { 47, 106, 172 }, { 95, 104, 173 }, { 42, 93, 159 },
4038 : { 18, 77, 131 }, { 4, 50, 81 }, { 1, 17, 23 }
4039 : }, { // Band 2
4040 : { 62, 147, 199 }, { 44, 130, 189 }, { 28, 102, 154 },
4041 : { 18, 75, 115 }, { 2, 44, 65 }, { 1, 12, 19 }
4042 : }, { // Band 3
4043 : { 55, 153, 210 }, { 24, 130, 194 }, { 3, 93, 146 },
4044 : { 1, 61, 97 }, { 1, 31, 50 }, { 1, 10, 16 }
4045 : }, { // Band 4
4046 : { 49, 186, 223 }, { 17, 148, 204 }, { 1, 96, 142 },
4047 : { 1, 53, 83 }, { 1, 26, 44 }, { 1, 11, 17 }
4048 : }, { // Band 5
4049 : { 13, 217, 212 }, { 2, 136, 180 }, { 1, 78, 124 },
4050 : { 1, 50, 83 }, { 1, 29, 49 }, { 1, 14, 23 }
4051 : }
4052 : }, { // Inter
4053 : { // Band 0
4054 : { 197, 13, 247 }, { 82, 17, 222 }, { 25, 17, 162 }
4055 : }, { // Band 1
4056 : { 126, 186, 247 }, { 234, 191, 243 }, { 176, 177, 234 },
4057 : { 104, 158, 220 }, { 66, 128, 186 }, { 55, 90, 137 }
4058 : }, { // Band 2
4059 : { 111, 197, 242 }, { 46, 158, 219 }, { 9, 104, 171 },
4060 : { 2, 65, 125 }, { 1, 44, 80 }, { 1, 17, 91 }
4061 : }, { // Band 3
4062 : { 104, 208, 245 }, { 39, 168, 224 }, { 3, 109, 162 },
4063 : { 1, 79, 124 }, { 1, 50, 102 }, { 1, 43, 102 }
4064 : }, { // Band 4
4065 : { 84, 220, 246 }, { 31, 177, 231 }, { 2, 115, 180 },
4066 : { 1, 79, 134 }, { 1, 55, 77 }, { 1, 60, 79 }
4067 : }, { // Band 5
4068 : { 43, 243, 240 }, { 8, 180, 217 }, { 1, 115, 166 },
4069 : { 1, 84, 121 }, { 1, 51, 67 }, { 1, 16, 6 }
4070 : }
4071 : }
4072 : }
4073 : };
4074 : #endif // CONFIG_TX64X64
4075 : #endif // CONFIG_Q_ADAPT_PROBS
4076 : static const aom_prob av1_default_blockzero_probs[TX_SIZES][PLANE_TYPES]
4077 : [REF_TYPES][BLOCKZ_CONTEXTS] = {
4078 : #if CONFIG_CHROMA_2X2
4079 : { // TX_2x2
4080 : { // Y plane
4081 : { 195, 84, 8, }, // Intra
4082 : { 191, 124, 25, }, // Inter
4083 : },
4084 : { // UV plane
4085 : { 214, 132, 42, }, // Intra
4086 : { 229, 143, 46, }, // Inter
4087 : },
4088 : },
4089 : #endif
4090 : { // TX_4x4
4091 : { // Y plane
4092 : { 195, 84, 8, }, // Intra
4093 : { 191, 124, 25, }, // Inter
4094 : },
4095 : { // UV plane
4096 : { 214, 132, 42, }, // Intra
4097 : { 229, 143, 46, }, // Inter
4098 : },
4099 : },
4100 : { // TX_8x8
4101 : { // Y plane
4102 : { 125, 52, 6, }, // Intra
4103 : { 202, 108, 18, }, // Inter
4104 : },
4105 : { // UV plane
4106 : { 212, 113, 29, }, // Intra
4107 : { 225, 144, 42, }, // Inter
4108 : },
4109 : },
4110 : { // TX_16x16
4111 : { // Y plane
4112 : { 7, 5, 1, }, // Intra
4113 : { 19, 19, 3, }, // Inter
4114 : },
4115 : { // UV plane
4116 : { 211, 96, 22, }, // Intra
4117 : { 233, 146, 43, }, // Inter
4118 : },
4119 : },
4120 : { // TX_32x32
4121 : { // Y plane
4122 : { 17, 7, 1, }, // Intra
4123 : { 36, 29, 10, }, // Inter
4124 : },
4125 : { // UV plane
4126 : { 181, 61, 10, }, // Intra
4127 : { 197, 82, 25, }, // Inter
4128 : },
4129 : },
4130 : #if CONFIG_TX64X64
4131 : { // TX_64x64 FIXME: currently the same as 32x32
4132 : { // Y plane
4133 : { 17, 7, 1, }, // Intra
4134 : { 36, 29, 10, }, // Inter
4135 : },
4136 : { // UV plane
4137 : { 181, 61, 10, }, // Intra
4138 : { 197, 82, 25, }, // Inter
4139 : },
4140 : },
4141 : #endif
4142 : };
4143 :
4144 : static const coeff_cdf_model default_coef_head_cdf_4x4[PLANE_TYPES] = {
4145 : { // Y plane
4146 : { // Intra
4147 : { // Band 0
4148 : { AOM_ICDF(25024), AOM_ICDF(25863), AOM_ICDF(27361), AOM_ICDF(29796),
4149 : AOM_ICDF(30374), AOM_ICDF(32768) },
4150 : { AOM_ICDF(10816), AOM_ICDF(14127), AOM_ICDF(17116), AOM_ICDF(23516),
4151 : AOM_ICDF(24999), AOM_ICDF(32768) },
4152 : { AOM_ICDF(1088), AOM_ICDF(6358), AOM_ICDF(8428), AOM_ICDF(16648),
4153 : AOM_ICDF(18276), AOM_ICDF(32768) } },
4154 : { // Band 1
4155 : {AOM_ICDF(14529), AOM_ICDF(18769), AOM_ICDF(29100), AOM_ICDF(29634),
4156 : AOM_ICDF(32768) },
4157 : {AOM_ICDF(12993), AOM_ICDF(17117), AOM_ICDF(28404), AOM_ICDF(28988),
4158 : AOM_ICDF(32768) },
4159 : {AOM_ICDF(11201), AOM_ICDF(14084), AOM_ICDF(25818), AOM_ICDF(26504),
4160 : AOM_ICDF(32768) },
4161 : {AOM_ICDF(9793), AOM_ICDF(11267), AOM_ICDF(21775), AOM_ICDF(22451),
4162 : AOM_ICDF(32768) },
4163 : {AOM_ICDF(7105), AOM_ICDF(7562), AOM_ICDF(15777), AOM_ICDF(16225),
4164 : AOM_ICDF(32768) },
4165 : {AOM_ICDF(3905), AOM_ICDF(3966), AOM_ICDF(8359), AOM_ICDF(8526),
4166 : AOM_ICDF(32768) } },
4167 : { // Band 2
4168 : {AOM_ICDF(20033), AOM_ICDF(23643), AOM_ICDF(31102), AOM_ICDF(31374),
4169 : AOM_ICDF(32768) },
4170 : {AOM_ICDF(16321), AOM_ICDF(20350), AOM_ICDF(30167), AOM_ICDF(30546),
4171 : AOM_ICDF(32768) },
4172 : {AOM_ICDF(12993), AOM_ICDF(15512), AOM_ICDF(26859), AOM_ICDF(27396),
4173 : AOM_ICDF(32768) },
4174 : {AOM_ICDF(10305), AOM_ICDF(11659), AOM_ICDF(21669), AOM_ICDF(22330),
4175 : AOM_ICDF(32768) },
4176 : {AOM_ICDF(7361), AOM_ICDF(7819), AOM_ICDF(15450), AOM_ICDF(15940),
4177 : AOM_ICDF(32768) },
4178 : {AOM_ICDF(3521), AOM_ICDF(3580), AOM_ICDF(7805), AOM_ICDF(7976),
4179 : AOM_ICDF(32768) } },
4180 : { // Band 3
4181 : {AOM_ICDF(21057), AOM_ICDF(25460), AOM_ICDF(31740), AOM_ICDF(31952),
4182 : AOM_ICDF(32768) },
4183 : {AOM_ICDF(16449), AOM_ICDF(21173), AOM_ICDF(30761), AOM_ICDF(31092),
4184 : AOM_ICDF(32768) },
4185 : {AOM_ICDF(11841), AOM_ICDF(14615), AOM_ICDF(26188), AOM_ICDF(26824),
4186 : AOM_ICDF(32768) },
4187 : {AOM_ICDF(7745), AOM_ICDF(8991), AOM_ICDF(18937), AOM_ICDF(19707),
4188 : AOM_ICDF(32768) },
4189 : {AOM_ICDF(4417), AOM_ICDF(4706), AOM_ICDF(10342), AOM_ICDF(10890),
4190 : AOM_ICDF(32768) },
4191 : {AOM_ICDF(7617), AOM_ICDF(8392), AOM_ICDF(17295), AOM_ICDF(17915),
4192 : AOM_ICDF(32768) } },
4193 : { // Band 4
4194 : {AOM_ICDF(20417), AOM_ICDF(26452), AOM_ICDF(32166), AOM_ICDF(32321),
4195 : AOM_ICDF(32768) },
4196 : {AOM_ICDF(15809), AOM_ICDF(21634), AOM_ICDF(30947), AOM_ICDF(31298),
4197 : AOM_ICDF(32768) },
4198 : {AOM_ICDF(10049), AOM_ICDF(12176), AOM_ICDF(23495), AOM_ICDF(24229),
4199 : AOM_ICDF(32768) },
4200 : {AOM_ICDF(5953), AOM_ICDF(6731), AOM_ICDF(16166), AOM_ICDF(16798),
4201 : AOM_ICDF(32768) },
4202 : {AOM_ICDF(6081), AOM_ICDF(6188), AOM_ICDF(8114), AOM_ICDF(8764),
4203 : AOM_ICDF(32768) },
4204 : {AOM_ICDF(2113), AOM_ICDF(2291), AOM_ICDF(4448), AOM_ICDF(5527),
4205 : AOM_ICDF(32768) } },
4206 : { // Band 5
4207 : {AOM_ICDF(9153), AOM_ICDF(25905), AOM_ICDF(31431), AOM_ICDF(31934),
4208 : AOM_ICDF(32768) },
4209 : {AOM_ICDF(9025), AOM_ICDF(23345), AOM_ICDF(30033), AOM_ICDF(30965),
4210 : AOM_ICDF(32768) },
4211 : {AOM_ICDF(5953), AOM_ICDF(13835), AOM_ICDF(22032), AOM_ICDF(24664),
4212 : AOM_ICDF(32768) },
4213 : {AOM_ICDF(6337), AOM_ICDF(11435), AOM_ICDF(18366), AOM_ICDF(21418),
4214 : AOM_ICDF(32768) },
4215 : {AOM_ICDF(3137), AOM_ICDF(4871), AOM_ICDF(8519), AOM_ICDF(12426),
4216 : AOM_ICDF(32768) },
4217 : {AOM_ICDF(1857), AOM_ICDF(2727), AOM_ICDF(5540), AOM_ICDF(8757),
4218 : AOM_ICDF(32768) } } },
4219 : { // Intra
4220 : { // Band 0
4221 : { AOM_ICDF(24512), AOM_ICDF(26673), AOM_ICDF(28962), AOM_ICDF(31929),
4222 : AOM_ICDF(32126), AOM_ICDF(32768) },
4223 : { AOM_ICDF(15936), AOM_ICDF(21711), AOM_ICDF(25569), AOM_ICDF(30899),
4224 : AOM_ICDF(31305), AOM_ICDF(32768) },
4225 : { AOM_ICDF(3264), AOM_ICDF(14756), AOM_ICDF(20107), AOM_ICDF(29407),
4226 : AOM_ICDF(30032), AOM_ICDF(32768) } },
4227 : { // Band 1
4228 : {AOM_ICDF(21313), AOM_ICDF(26020), AOM_ICDF(32523), AOM_ICDF(32575),
4229 : AOM_ICDF(32768) },
4230 : {AOM_ICDF(18369), AOM_ICDF(24215), AOM_ICDF(32291), AOM_ICDF(32391),
4231 : AOM_ICDF(32768) },
4232 : {AOM_ICDF(15297), AOM_ICDF(19637), AOM_ICDF(30414), AOM_ICDF(30752),
4233 : AOM_ICDF(32768) },
4234 : {AOM_ICDF(11713), AOM_ICDF(14040), AOM_ICDF(25408), AOM_ICDF(26033),
4235 : AOM_ICDF(32768) },
4236 : {AOM_ICDF(9537), AOM_ICDF(10173), AOM_ICDF(18839), AOM_ICDF(19315),
4237 : AOM_ICDF(32768) },
4238 : {AOM_ICDF(9025), AOM_ICDF(9093), AOM_ICDF(13987), AOM_ICDF(14115),
4239 : AOM_ICDF(32768) } },
4240 : { // Band 2
4241 : {AOM_ICDF(22721), AOM_ICDF(27599), AOM_ICDF(32592), AOM_ICDF(32636),
4242 : AOM_ICDF(32768) },
4243 : {AOM_ICDF(19009), AOM_ICDF(24676), AOM_ICDF(32258), AOM_ICDF(32367),
4244 : AOM_ICDF(32768) },
4245 : {AOM_ICDF(12737), AOM_ICDF(16769), AOM_ICDF(28739), AOM_ICDF(29247),
4246 : AOM_ICDF(32768) },
4247 : {AOM_ICDF(8769), AOM_ICDF(10956), AOM_ICDF(21941), AOM_ICDF(22840),
4248 : AOM_ICDF(32768) },
4249 : {AOM_ICDF(6721), AOM_ICDF(7678), AOM_ICDF(15319), AOM_ICDF(16290),
4250 : AOM_ICDF(32768) },
4251 : {AOM_ICDF(4417), AOM_ICDF(4430), AOM_ICDF(4583), AOM_ICDF(5712),
4252 : AOM_ICDF(32768) } },
4253 : { // Band 3
4254 : {AOM_ICDF(22849), AOM_ICDF(28333), AOM_ICDF(32633), AOM_ICDF(32671),
4255 : AOM_ICDF(32768) },
4256 : {AOM_ICDF(18497), AOM_ICDF(24619), AOM_ICDF(32184), AOM_ICDF(32315),
4257 : AOM_ICDF(32768) },
4258 : {AOM_ICDF(11841), AOM_ICDF(14640), AOM_ICDF(27251), AOM_ICDF(27752),
4259 : AOM_ICDF(32768) },
4260 : {AOM_ICDF(8385), AOM_ICDF(10154), AOM_ICDF(18339), AOM_ICDF(19621),
4261 : AOM_ICDF(32768) },
4262 : {AOM_ICDF(5697), AOM_ICDF(6977), AOM_ICDF(13787), AOM_ICDF(15289),
4263 : AOM_ICDF(32768) },
4264 : {AOM_ICDF(193), AOM_ICDF(194), AOM_ICDF(384), AOM_ICDF(479),
4265 : AOM_ICDF(32768) } },
4266 : { // Band 4
4267 : {AOM_ICDF(20417), AOM_ICDF(28167), AOM_ICDF(32552), AOM_ICDF(32621),
4268 : AOM_ICDF(32768) },
4269 : {AOM_ICDF(16833), AOM_ICDF(23968), AOM_ICDF(31991), AOM_ICDF(32174),
4270 : AOM_ICDF(32768) },
4271 : {AOM_ICDF(10433), AOM_ICDF(13387), AOM_ICDF(26356), AOM_ICDF(26951),
4272 : AOM_ICDF(32768) },
4273 : {AOM_ICDF(5057), AOM_ICDF(6823), AOM_ICDF(18967), AOM_ICDF(19843),
4274 : AOM_ICDF(32768) },
4275 : {AOM_ICDF(5697), AOM_ICDF(6479), AOM_ICDF(11672), AOM_ICDF(13052),
4276 : AOM_ICDF(32768) },
4277 : {AOM_ICDF(2241), AOM_ICDF(2265), AOM_ICDF(6355), AOM_ICDF(6432),
4278 : AOM_ICDF(32768) } },
4279 : { // Band 5
4280 : {AOM_ICDF(12097), AOM_ICDF(28717), AOM_ICDF(32406), AOM_ICDF(32555),
4281 : AOM_ICDF(32768) },
4282 : {AOM_ICDF(10433), AOM_ICDF(26113), AOM_ICDF(31504), AOM_ICDF(31975),
4283 : AOM_ICDF(32768) },
4284 : {AOM_ICDF(5825), AOM_ICDF(14284), AOM_ICDF(21349), AOM_ICDF(24461),
4285 : AOM_ICDF(32768) },
4286 : {AOM_ICDF(4545), AOM_ICDF(8454), AOM_ICDF(12648), AOM_ICDF(17501),
4287 : AOM_ICDF(32768) },
4288 : {AOM_ICDF(193), AOM_ICDF(7173), AOM_ICDF(15272), AOM_ICDF(19322),
4289 : AOM_ICDF(32768) },
4290 : {AOM_ICDF(2113), AOM_ICDF(2183), AOM_ICDF(7202), AOM_ICDF(7377),
4291 : AOM_ICDF(32768) } } } },
4292 : { // UV plane
4293 : { // Inter
4294 : { // Band 0
4295 : { AOM_ICDF(27456), AOM_ICDF(28244), AOM_ICDF(31289), AOM_ICDF(32358),
4296 : AOM_ICDF(32534), AOM_ICDF(32768) },
4297 : { AOM_ICDF(16960), AOM_ICDF(21207), AOM_ICDF(26511), AOM_ICDF(30539),
4298 : AOM_ICDF(31190), AOM_ICDF(32768) },
4299 : { AOM_ICDF(5440), AOM_ICDF(13412), AOM_ICDF(18469), AOM_ICDF(26423),
4300 : AOM_ICDF(27669), AOM_ICDF(32768) } },
4301 : { // Band 1
4302 : {AOM_ICDF(17857), AOM_ICDF(26327), AOM_ICDF(31983), AOM_ICDF(32219),
4303 : AOM_ICDF(32768) },
4304 : {AOM_ICDF(16065), AOM_ICDF(24198), AOM_ICDF(31431), AOM_ICDF(31785),
4305 : AOM_ICDF(32768) },
4306 : {AOM_ICDF(12865), AOM_ICDF(18011), AOM_ICDF(28454), AOM_ICDF(29166),
4307 : AOM_ICDF(32768) },
4308 : {AOM_ICDF(9665), AOM_ICDF(12501), AOM_ICDF(24331), AOM_ICDF(25147),
4309 : AOM_ICDF(32768) },
4310 : {AOM_ICDF(2753), AOM_ICDF(3121), AOM_ICDF(12661), AOM_ICDF(13034),
4311 : AOM_ICDF(32768) },
4312 : {AOM_ICDF(4033), AOM_ICDF(4140), AOM_ICDF(11834), AOM_ICDF(11977),
4313 : AOM_ICDF(32768) } },
4314 : { // Band 2
4315 : {AOM_ICDF(21185), AOM_ICDF(28338), AOM_ICDF(32249), AOM_ICDF(32417),
4316 : AOM_ICDF(32768) },
4317 : {AOM_ICDF(18497), AOM_ICDF(25227), AOM_ICDF(31905), AOM_ICDF(32122),
4318 : AOM_ICDF(32768) },
4319 : {AOM_ICDF(12097), AOM_ICDF(16516), AOM_ICDF(28610), AOM_ICDF(29166),
4320 : AOM_ICDF(32768) },
4321 : {AOM_ICDF(9281), AOM_ICDF(11157), AOM_ICDF(21438), AOM_ICDF(22312),
4322 : AOM_ICDF(32768) },
4323 : {AOM_ICDF(5697), AOM_ICDF(6566), AOM_ICDF(15585), AOM_ICDF(16340),
4324 : AOM_ICDF(32768) },
4325 : {AOM_ICDF(9409), AOM_ICDF(9659), AOM_ICDF(11827), AOM_ICDF(12911),
4326 : AOM_ICDF(32768) } },
4327 : { // Band 3
4328 : {AOM_ICDF(22337), AOM_ICDF(29459), AOM_ICDF(32382), AOM_ICDF(32519),
4329 : AOM_ICDF(32768) },
4330 : {AOM_ICDF(16961), AOM_ICDF(25262), AOM_ICDF(31874), AOM_ICDF(32123),
4331 : AOM_ICDF(32768) },
4332 : {AOM_ICDF(12353), AOM_ICDF(17748), AOM_ICDF(29300), AOM_ICDF(29852),
4333 : AOM_ICDF(32768) },
4334 : {AOM_ICDF(9025), AOM_ICDF(11528), AOM_ICDF(24468), AOM_ICDF(25141),
4335 : AOM_ICDF(32768) },
4336 : {AOM_ICDF(6209), AOM_ICDF(6565), AOM_ICDF(15806), AOM_ICDF(16121),
4337 : AOM_ICDF(32768) },
4338 : {AOM_ICDF(2497), AOM_ICDF(2524), AOM_ICDF(7050), AOM_ICDF(7125),
4339 : AOM_ICDF(32768) } },
4340 : { // Band 4
4341 : {AOM_ICDF(20417), AOM_ICDF(29779), AOM_ICDF(32552), AOM_ICDF(32636),
4342 : AOM_ICDF(32768) },
4343 : {AOM_ICDF(15553), AOM_ICDF(26420), AOM_ICDF(32063), AOM_ICDF(32295),
4344 : AOM_ICDF(32768) },
4345 : {AOM_ICDF(9665), AOM_ICDF(17946), AOM_ICDF(29385), AOM_ICDF(30096),
4346 : AOM_ICDF(32768) },
4347 : {AOM_ICDF(5569), AOM_ICDF(10207), AOM_ICDF(22410), AOM_ICDF(23836),
4348 : AOM_ICDF(32768) },
4349 : {AOM_ICDF(16449), AOM_ICDF(16450), AOM_ICDF(16545), AOM_ICDF(16593),
4350 : AOM_ICDF(32768) },
4351 : {AOM_ICDF(2369), AOM_ICDF(2395), AOM_ICDF(6822), AOM_ICDF(6898),
4352 : AOM_ICDF(32768) } },
4353 : { // Band 5
4354 : {AOM_ICDF(10177), AOM_ICDF(30567), AOM_ICDF(32725), AOM_ICDF(32745),
4355 : AOM_ICDF(32768) },
4356 : {AOM_ICDF(9537), AOM_ICDF(28243), AOM_ICDF(32179), AOM_ICDF(32423),
4357 : AOM_ICDF(32768) },
4358 : {AOM_ICDF(13377), AOM_ICDF(23187), AOM_ICDF(29322), AOM_ICDF(30382),
4359 : AOM_ICDF(32768) },
4360 : {AOM_ICDF(13121), AOM_ICDF(21346), AOM_ICDF(29507), AOM_ICDF(30326),
4361 : AOM_ICDF(32768) },
4362 : {AOM_ICDF(4417), AOM_ICDF(4939), AOM_ICDF(15104), AOM_ICDF(15535),
4363 : AOM_ICDF(32768) },
4364 : {AOM_ICDF(2625), AOM_ICDF(2680), AOM_ICDF(8218), AOM_ICDF(8338),
4365 : AOM_ICDF(32768) } } },
4366 : { // Inter
4367 : { // Band 0
4368 : { AOM_ICDF(29376), AOM_ICDF(30098), AOM_ICDF(32421), AOM_ICDF(32766),
4369 : AOM_ICDF(32767), AOM_ICDF(32768) },
4370 : { AOM_ICDF(18368), AOM_ICDF(22916), AOM_ICDF(30116), AOM_ICDF(32541),
4371 : AOM_ICDF(32650), AOM_ICDF(32768) },
4372 : { AOM_ICDF(5952), AOM_ICDF(16505), AOM_ICDF(25955), AOM_ICDF(32163),
4373 : AOM_ICDF(32365), AOM_ICDF(32768) } },
4374 : { // Band 1
4375 : {AOM_ICDF(19649), AOM_ICDF(30160), AOM_ICDF(32743), AOM_ICDF(32753),
4376 : AOM_ICDF(32768) },
4377 : {AOM_ICDF(18881), AOM_ICDF(28724), AOM_ICDF(32688), AOM_ICDF(32717),
4378 : AOM_ICDF(32768) },
4379 : {AOM_ICDF(16833), AOM_ICDF(23053), AOM_ICDF(31244), AOM_ICDF(31573),
4380 : AOM_ICDF(32768) },
4381 : {AOM_ICDF(14657), AOM_ICDF(17714), AOM_ICDF(26083), AOM_ICDF(26978),
4382 : AOM_ICDF(32768) },
4383 : {AOM_ICDF(14657), AOM_ICDF(16618), AOM_ICDF(24597), AOM_ICDF(25403),
4384 : AOM_ICDF(32768) },
4385 : {AOM_ICDF(4289), AOM_ICDF(4326), AOM_ICDF(10686), AOM_ICDF(10751),
4386 : AOM_ICDF(32768) } },
4387 : { // Band 2
4388 : {AOM_ICDF(21953), AOM_ICDF(30956), AOM_ICDF(32748), AOM_ICDF(32757),
4389 : AOM_ICDF(32768) },
4390 : {AOM_ICDF(20929), AOM_ICDF(29412), AOM_ICDF(32700), AOM_ICDF(32725),
4391 : AOM_ICDF(32768) },
4392 : {AOM_ICDF(13377), AOM_ICDF(21495), AOM_ICDF(31216), AOM_ICDF(31569),
4393 : AOM_ICDF(32768) },
4394 : {AOM_ICDF(9153), AOM_ICDF(15097), AOM_ICDF(28295), AOM_ICDF(28990),
4395 : AOM_ICDF(32768) },
4396 : {AOM_ICDF(5313), AOM_ICDF(5363), AOM_ICDF(13839), AOM_ICDF(13894),
4397 : AOM_ICDF(32768) },
4398 : {AOM_ICDF(2625), AOM_ICDF(2652), AOM_ICDF(7276), AOM_ICDF(7351),
4399 : AOM_ICDF(32768) } },
4400 : { // Band 3
4401 : {AOM_ICDF(20289), AOM_ICDF(31164), AOM_ICDF(32745), AOM_ICDF(32755),
4402 : AOM_ICDF(32768) },
4403 : {AOM_ICDF(17601), AOM_ICDF(29635), AOM_ICDF(32739), AOM_ICDF(32751),
4404 : AOM_ICDF(32768) },
4405 : {AOM_ICDF(18241), AOM_ICDF(24284), AOM_ICDF(32116), AOM_ICDF(32258),
4406 : AOM_ICDF(32768) },
4407 : {AOM_ICDF(32705), AOM_ICDF(32706), AOM_ICDF(32739), AOM_ICDF(32740),
4408 : AOM_ICDF(32768) },
4409 : {AOM_ICDF(5697), AOM_ICDF(5750), AOM_ICDF(14739), AOM_ICDF(14792),
4410 : AOM_ICDF(32768) },
4411 : {AOM_ICDF(2881), AOM_ICDF(2913), AOM_ICDF(8427), AOM_ICDF(8498),
4412 : AOM_ICDF(32768) } },
4413 : { // Band 4
4414 : {AOM_ICDF(19009), AOM_ICDF(31481), AOM_ICDF(32742), AOM_ICDF(32754),
4415 : AOM_ICDF(32768) },
4416 : {AOM_ICDF(15809), AOM_ICDF(30521), AOM_ICDF(32736), AOM_ICDF(32750),
4417 : AOM_ICDF(32768) },
4418 : {AOM_ICDF(16449), AOM_ICDF(32705), AOM_ICDF(32737), AOM_ICDF(32753),
4419 : AOM_ICDF(32768) },
4420 : {AOM_ICDF(7873), AOM_ICDF(8039), AOM_ICDF(19981), AOM_ICDF(20068),
4421 : AOM_ICDF(32768) },
4422 : {AOM_ICDF(5313), AOM_ICDF(5366), AOM_ICDF(14376), AOM_ICDF(14430),
4423 : AOM_ICDF(32768) },
4424 : {AOM_ICDF(2753), AOM_ICDF(2789), AOM_ICDF(8909), AOM_ICDF(8979),
4425 : AOM_ICDF(32768) } },
4426 : { // Band 5
4427 : {AOM_ICDF(11841), AOM_ICDF(32116), AOM_ICDF(32728), AOM_ICDF(32748),
4428 : AOM_ICDF(32768) },
4429 : {AOM_ICDF(12353), AOM_ICDF(32132), AOM_ICDF(32729), AOM_ICDF(32748),
4430 : AOM_ICDF(32768) },
4431 : {AOM_ICDF(7489), AOM_ICDF(12435), AOM_ICDF(25708), AOM_ICDF(26666),
4432 : AOM_ICDF(32768) },
4433 : {AOM_ICDF(5697), AOM_ICDF(7486), AOM_ICDF(20238), AOM_ICDF(21009),
4434 : AOM_ICDF(32768) },
4435 : {AOM_ICDF(4929), AOM_ICDF(5579), AOM_ICDF(16402), AOM_ICDF(16866),
4436 : AOM_ICDF(32768) },
4437 : {AOM_ICDF(3009), AOM_ICDF(3246), AOM_ICDF(10158), AOM_ICDF(10533),
4438 : AOM_ICDF(32768) } } } }
4439 : };
4440 : static const coeff_cdf_model default_coef_head_cdf_8x8[PLANE_TYPES] = {
4441 : { // Y plane
4442 : { // Intra
4443 : { // Band 0
4444 : { AOM_ICDF(16064), AOM_ICDF(18127), AOM_ICDF(22153), AOM_ICDF(27289),
4445 : AOM_ICDF(28507), AOM_ICDF(32768) },
4446 : { AOM_ICDF(6720), AOM_ICDF(10545), AOM_ICDF(13491), AOM_ICDF(20948),
4447 : AOM_ICDF(22631), AOM_ICDF(32768) },
4448 : { AOM_ICDF(832), AOM_ICDF(5270), AOM_ICDF(5918), AOM_ICDF(12645),
4449 : AOM_ICDF(13532), AOM_ICDF(32768) } },
4450 : { // Band 1
4451 : {AOM_ICDF(14017), AOM_ICDF(16139), AOM_ICDF(26799), AOM_ICDF(27295),
4452 : AOM_ICDF(32768) },
4453 : {AOM_ICDF(12737), AOM_ICDF(15136), AOM_ICDF(26235), AOM_ICDF(26816),
4454 : AOM_ICDF(32768) },
4455 : {AOM_ICDF(10817), AOM_ICDF(12445), AOM_ICDF(23637), AOM_ICDF(24217),
4456 : AOM_ICDF(32768) },
4457 : {AOM_ICDF(8897), AOM_ICDF(9702), AOM_ICDF(20040), AOM_ICDF(20500),
4458 : AOM_ICDF(32768) },
4459 : {AOM_ICDF(5953), AOM_ICDF(6156), AOM_ICDF(13966), AOM_ICDF(14205),
4460 : AOM_ICDF(32768) },
4461 : {AOM_ICDF(2497), AOM_ICDF(2519), AOM_ICDF(6222), AOM_ICDF(6300),
4462 : AOM_ICDF(32768) } },
4463 : { // Band 2
4464 : {AOM_ICDF(19777), AOM_ICDF(21403), AOM_ICDF(30054), AOM_ICDF(30269),
4465 : AOM_ICDF(32768) },
4466 : {AOM_ICDF(16193), AOM_ICDF(17913), AOM_ICDF(28593), AOM_ICDF(28883),
4467 : AOM_ICDF(32768) },
4468 : {AOM_ICDF(12609), AOM_ICDF(13572), AOM_ICDF(25248), AOM_ICDF(25534),
4469 : AOM_ICDF(32768) },
4470 : {AOM_ICDF(9665), AOM_ICDF(10118), AOM_ICDF(20721), AOM_ICDF(20968),
4471 : AOM_ICDF(32768) },
4472 : {AOM_ICDF(6849), AOM_ICDF(7028), AOM_ICDF(15202), AOM_ICDF(15391),
4473 : AOM_ICDF(32768) },
4474 : {AOM_ICDF(3009), AOM_ICDF(3036), AOM_ICDF(7601), AOM_ICDF(7675),
4475 : AOM_ICDF(32768) } },
4476 : { // Band 3
4477 : {AOM_ICDF(22593), AOM_ICDF(23915), AOM_ICDF(31159), AOM_ICDF(31283),
4478 : AOM_ICDF(32768) },
4479 : {AOM_ICDF(17345), AOM_ICDF(18690), AOM_ICDF(29425), AOM_ICDF(29611),
4480 : AOM_ICDF(32768) },
4481 : {AOM_ICDF(11969), AOM_ICDF(12540), AOM_ICDF(24685), AOM_ICDF(24867),
4482 : AOM_ICDF(32768) },
4483 : {AOM_ICDF(8129), AOM_ICDF(8355), AOM_ICDF(18668), AOM_ICDF(18819),
4484 : AOM_ICDF(32768) },
4485 : {AOM_ICDF(4673), AOM_ICDF(4714), AOM_ICDF(11752), AOM_ICDF(11814),
4486 : AOM_ICDF(32768) },
4487 : {AOM_ICDF(1857), AOM_ICDF(1876), AOM_ICDF(5057), AOM_ICDF(5138),
4488 : AOM_ICDF(32768) } },
4489 : { // Band 4
4490 : {AOM_ICDF(24513), AOM_ICDF(25718), AOM_ICDF(31947), AOM_ICDF(32014),
4491 : AOM_ICDF(32768) },
4492 : {AOM_ICDF(18881), AOM_ICDF(20029), AOM_ICDF(30409), AOM_ICDF(30527),
4493 : AOM_ICDF(32768) },
4494 : {AOM_ICDF(12481), AOM_ICDF(12953), AOM_ICDF(25201), AOM_ICDF(25341),
4495 : AOM_ICDF(32768) },
4496 : {AOM_ICDF(8385), AOM_ICDF(8528), AOM_ICDF(18815), AOM_ICDF(18910),
4497 : AOM_ICDF(32768) },
4498 : {AOM_ICDF(4289), AOM_ICDF(4327), AOM_ICDF(10797), AOM_ICDF(10861),
4499 : AOM_ICDF(32768) },
4500 : {AOM_ICDF(1857), AOM_ICDF(1872), AOM_ICDF(4332), AOM_ICDF(4415),
4501 : AOM_ICDF(32768) } },
4502 : { // Band 5
4503 : {AOM_ICDF(26049), AOM_ICDF(27752), AOM_ICDF(32415), AOM_ICDF(32462),
4504 : AOM_ICDF(32768) },
4505 : {AOM_ICDF(20417), AOM_ICDF(22100), AOM_ICDF(31056), AOM_ICDF(31192),
4506 : AOM_ICDF(32768) },
4507 : {AOM_ICDF(12481), AOM_ICDF(13075), AOM_ICDF(24646), AOM_ICDF(24844),
4508 : AOM_ICDF(32768) },
4509 : {AOM_ICDF(7489), AOM_ICDF(7696), AOM_ICDF(17117), AOM_ICDF(17285),
4510 : AOM_ICDF(32768) },
4511 : {AOM_ICDF(3777), AOM_ICDF(3814), AOM_ICDF(10062), AOM_ICDF(10129),
4512 : AOM_ICDF(32768) },
4513 : {AOM_ICDF(1473), AOM_ICDF(1486), AOM_ICDF(3735), AOM_ICDF(3820),
4514 : AOM_ICDF(32768) } } },
4515 : { // Intra
4516 : { // Band 0
4517 : { AOM_ICDF(25920), AOM_ICDF(27743), AOM_ICDF(29455), AOM_ICDF(32147),
4518 : AOM_ICDF(32280), AOM_ICDF(32768) },
4519 : { AOM_ICDF(13888), AOM_ICDF(19845), AOM_ICDF(23350), AOM_ICDF(30219),
4520 : AOM_ICDF(30660), AOM_ICDF(32768) },
4521 : { AOM_ICDF(2368), AOM_ICDF(12781), AOM_ICDF(16196), AOM_ICDF(27232),
4522 : AOM_ICDF(27894), AOM_ICDF(32768) } },
4523 : { // Band 1
4524 : {AOM_ICDF(21697), AOM_ICDF(24758), AOM_ICDF(32358), AOM_ICDF(32417),
4525 : AOM_ICDF(32768) },
4526 : {AOM_ICDF(20289), AOM_ICDF(23960), AOM_ICDF(32111), AOM_ICDF(32213),
4527 : AOM_ICDF(32768) },
4528 : {AOM_ICDF(17345), AOM_ICDF(19966), AOM_ICDF(30630), AOM_ICDF(30841),
4529 : AOM_ICDF(32768) },
4530 : {AOM_ICDF(14529), AOM_ICDF(16070), AOM_ICDF(27461), AOM_ICDF(27777),
4531 : AOM_ICDF(32768) },
4532 : {AOM_ICDF(9793), AOM_ICDF(10613), AOM_ICDF(21146), AOM_ICDF(21566),
4533 : AOM_ICDF(32768) },
4534 : {AOM_ICDF(6977), AOM_ICDF(7162), AOM_ICDF(15591), AOM_ICDF(15776),
4535 : AOM_ICDF(32768) } },
4536 : { // Band 2
4537 : {AOM_ICDF(23617), AOM_ICDF(26783), AOM_ICDF(32572), AOM_ICDF(32607),
4538 : AOM_ICDF(32768) },
4539 : {AOM_ICDF(20801), AOM_ICDF(24292), AOM_ICDF(32185), AOM_ICDF(32275),
4540 : AOM_ICDF(32768) },
4541 : {AOM_ICDF(15169), AOM_ICDF(17905), AOM_ICDF(29916), AOM_ICDF(30181),
4542 : AOM_ICDF(32768) },
4543 : {AOM_ICDF(10945), AOM_ICDF(12972), AOM_ICDF(25565), AOM_ICDF(26064),
4544 : AOM_ICDF(32768) },
4545 : {AOM_ICDF(6849), AOM_ICDF(8334), AOM_ICDF(18543), AOM_ICDF(19446),
4546 : AOM_ICDF(32768) },
4547 : {AOM_ICDF(3649), AOM_ICDF(4346), AOM_ICDF(12351), AOM_ICDF(13169),
4548 : AOM_ICDF(32768) } },
4549 : { // Band 3
4550 : {AOM_ICDF(25281), AOM_ICDF(28440), AOM_ICDF(32667), AOM_ICDF(32689),
4551 : AOM_ICDF(32768) },
4552 : {AOM_ICDF(22081), AOM_ICDF(25694), AOM_ICDF(32414), AOM_ICDF(32476),
4553 : AOM_ICDF(32768) },
4554 : {AOM_ICDF(15297), AOM_ICDF(18341), AOM_ICDF(30141), AOM_ICDF(30410),
4555 : AOM_ICDF(32768) },
4556 : {AOM_ICDF(10305), AOM_ICDF(12381), AOM_ICDF(24477), AOM_ICDF(25084),
4557 : AOM_ICDF(32768) },
4558 : {AOM_ICDF(5697), AOM_ICDF(6673), AOM_ICDF(16325), AOM_ICDF(17080),
4559 : AOM_ICDF(32768) },
4560 : {AOM_ICDF(2369), AOM_ICDF(2393), AOM_ICDF(6466), AOM_ICDF(6543),
4561 : AOM_ICDF(32768) } },
4562 : { // Band 4
4563 : {AOM_ICDF(25921), AOM_ICDF(29445), AOM_ICDF(32729), AOM_ICDF(32739),
4564 : AOM_ICDF(32768) },
4565 : {AOM_ICDF(22465), AOM_ICDF(26834), AOM_ICDF(32588), AOM_ICDF(32627),
4566 : AOM_ICDF(32768) },
4567 : {AOM_ICDF(16449), AOM_ICDF(20062), AOM_ICDF(31016), AOM_ICDF(31233),
4568 : AOM_ICDF(32768) },
4569 : {AOM_ICDF(11073), AOM_ICDF(13165), AOM_ICDF(25353), AOM_ICDF(25896),
4570 : AOM_ICDF(32768) },
4571 : {AOM_ICDF(11713), AOM_ICDF(13837), AOM_ICDF(20144), AOM_ICDF(21734),
4572 : AOM_ICDF(32768) },
4573 : {AOM_ICDF(2241), AOM_ICDF(2265), AOM_ICDF(6355), AOM_ICDF(6432),
4574 : AOM_ICDF(32768) } },
4575 : { // Band 5
4576 : {AOM_ICDF(26177), AOM_ICDF(29403), AOM_ICDF(32705), AOM_ICDF(32721),
4577 : AOM_ICDF(32768) },
4578 : {AOM_ICDF(22337), AOM_ICDF(26344), AOM_ICDF(32545), AOM_ICDF(32589),
4579 : AOM_ICDF(32768) },
4580 : {AOM_ICDF(19009), AOM_ICDF(21527), AOM_ICDF(31775), AOM_ICDF(31873),
4581 : AOM_ICDF(32768) },
4582 : {AOM_ICDF(11585), AOM_ICDF(12685), AOM_ICDF(22632), AOM_ICDF(23137),
4583 : AOM_ICDF(32768) },
4584 : {AOM_ICDF(8257), AOM_ICDF(8305), AOM_ICDF(16444), AOM_ICDF(16492),
4585 : AOM_ICDF(32768) },
4586 : {AOM_ICDF(2113), AOM_ICDF(2183), AOM_ICDF(7202), AOM_ICDF(7377),
4587 : AOM_ICDF(32768) } } } },
4588 : { // UV plane
4589 : { // Inter
4590 : { // Band 0
4591 : { AOM_ICDF(27200), AOM_ICDF(27981), AOM_ICDF(31389), AOM_ICDF(32444),
4592 : AOM_ICDF(32592), AOM_ICDF(32768) },
4593 : { AOM_ICDF(14528), AOM_ICDF(19068), AOM_ICDF(24887), AOM_ICDF(29901),
4594 : AOM_ICDF(30688), AOM_ICDF(32768) },
4595 : { AOM_ICDF(3776), AOM_ICDF(11778), AOM_ICDF(14700), AOM_ICDF(23745),
4596 : AOM_ICDF(24854), AOM_ICDF(32768) } },
4597 : { // Band 1
4598 : {AOM_ICDF(20289), AOM_ICDF(25202), AOM_ICDF(31672), AOM_ICDF(31909),
4599 : AOM_ICDF(32768) },
4600 : {AOM_ICDF(18369), AOM_ICDF(23493), AOM_ICDF(31166), AOM_ICDF(31487),
4601 : AOM_ICDF(32768) },
4602 : {AOM_ICDF(15425), AOM_ICDF(18619), AOM_ICDF(28941), AOM_ICDF(29393),
4603 : AOM_ICDF(32768) },
4604 : {AOM_ICDF(10945), AOM_ICDF(12535), AOM_ICDF(24287), AOM_ICDF(24792),
4605 : AOM_ICDF(32768) },
4606 : {AOM_ICDF(6465), AOM_ICDF(6810), AOM_ICDF(15764), AOM_ICDF(16080),
4607 : AOM_ICDF(32768) },
4608 : {AOM_ICDF(2113), AOM_ICDF(2137), AOM_ICDF(6125), AOM_ICDF(6203),
4609 : AOM_ICDF(32768) } },
4610 : { // Band 2
4611 : {AOM_ICDF(23745), AOM_ICDF(27041), AOM_ICDF(31976), AOM_ICDF(32135),
4612 : AOM_ICDF(32768) },
4613 : {AOM_ICDF(19521), AOM_ICDF(22766), AOM_ICDF(31139), AOM_ICDF(31367),
4614 : AOM_ICDF(32768) },
4615 : {AOM_ICDF(14273), AOM_ICDF(15834), AOM_ICDF(27820), AOM_ICDF(28105),
4616 : AOM_ICDF(32768) },
4617 : {AOM_ICDF(9537), AOM_ICDF(10445), AOM_ICDF(22106), AOM_ICDF(22491),
4618 : AOM_ICDF(32768) },
4619 : {AOM_ICDF(7233), AOM_ICDF(7386), AOM_ICDF(15961), AOM_ICDF(16109),
4620 : AOM_ICDF(32768) },
4621 : {AOM_ICDF(2369), AOM_ICDF(2401), AOM_ICDF(7891), AOM_ICDF(7964),
4622 : AOM_ICDF(32768) } },
4623 : { // Band 3
4624 : {AOM_ICDF(26305), AOM_ICDF(28703), AOM_ICDF(32352), AOM_ICDF(32435),
4625 : AOM_ICDF(32768) },
4626 : {AOM_ICDF(20673), AOM_ICDF(23490), AOM_ICDF(31517), AOM_ICDF(31680),
4627 : AOM_ICDF(32768) },
4628 : {AOM_ICDF(14017), AOM_ICDF(15251), AOM_ICDF(27458), AOM_ICDF(27702),
4629 : AOM_ICDF(32768) },
4630 : {AOM_ICDF(10945), AOM_ICDF(11374), AOM_ICDF(22496), AOM_ICDF(22687),
4631 : AOM_ICDF(32768) },
4632 : {AOM_ICDF(9153), AOM_ICDF(9435), AOM_ICDF(22299), AOM_ICDF(22411),
4633 : AOM_ICDF(32768) },
4634 : {AOM_ICDF(193), AOM_ICDF(269), AOM_ICDF(13236), AOM_ICDF(13293),
4635 : AOM_ICDF(32768) } },
4636 : { // Band 4
4637 : {AOM_ICDF(27713), AOM_ICDF(29770), AOM_ICDF(32522), AOM_ICDF(32575),
4638 : AOM_ICDF(32768) },
4639 : {AOM_ICDF(21569), AOM_ICDF(24342), AOM_ICDF(31785), AOM_ICDF(31919),
4640 : AOM_ICDF(32768) },
4641 : {AOM_ICDF(15297), AOM_ICDF(16497), AOM_ICDF(28367), AOM_ICDF(28569),
4642 : AOM_ICDF(32768) },
4643 : {AOM_ICDF(17601), AOM_ICDF(17828), AOM_ICDF(24444), AOM_ICDF(24582),
4644 : AOM_ICDF(32768) },
4645 : {AOM_ICDF(6977), AOM_ICDF(7035), AOM_ICDF(16901), AOM_ICDF(16947),
4646 : AOM_ICDF(32768) },
4647 : {AOM_ICDF(193), AOM_ICDF(384), AOM_ICDF(32706), AOM_ICDF(32707),
4648 : AOM_ICDF(32768) } },
4649 : { // Band 5
4650 : {AOM_ICDF(28737), AOM_ICDF(30879), AOM_ICDF(32667), AOM_ICDF(32695),
4651 : AOM_ICDF(32768) },
4652 : {AOM_ICDF(22593), AOM_ICDF(26241), AOM_ICDF(32073), AOM_ICDF(32207),
4653 : AOM_ICDF(32768) },
4654 : {AOM_ICDF(16577), AOM_ICDF(19148), AOM_ICDF(28436), AOM_ICDF(28906),
4655 : AOM_ICDF(32768) },
4656 : {AOM_ICDF(12993), AOM_ICDF(14005), AOM_ICDF(23151), AOM_ICDF(23630),
4657 : AOM_ICDF(32768) },
4658 : {AOM_ICDF(7617), AOM_ICDF(9188), AOM_ICDF(22797), AOM_ICDF(23313),
4659 : AOM_ICDF(32768) },
4660 : {AOM_ICDF(2625), AOM_ICDF(2680), AOM_ICDF(8218), AOM_ICDF(8338),
4661 : AOM_ICDF(32768) } } },
4662 : { // Inter
4663 : { // Band 0
4664 : { AOM_ICDF(28864), AOM_ICDF(29988), AOM_ICDF(32423), AOM_ICDF(32766),
4665 : AOM_ICDF(32767), AOM_ICDF(32768) },
4666 : { AOM_ICDF(18496), AOM_ICDF(24572), AOM_ICDF(30167), AOM_ICDF(32687),
4667 : AOM_ICDF(32737), AOM_ICDF(32768) },
4668 : { AOM_ICDF(5440), AOM_ICDF(19618), AOM_ICDF(25332), AOM_ICDF(32393),
4669 : AOM_ICDF(32491), AOM_ICDF(32768) } },
4670 : { // Band 1
4671 : {AOM_ICDF(23745), AOM_ICDF(29427), AOM_ICDF(32751), AOM_ICDF(32757),
4672 : AOM_ICDF(32768) },
4673 : {AOM_ICDF(23745), AOM_ICDF(28704), AOM_ICDF(32716), AOM_ICDF(32731),
4674 : AOM_ICDF(32768) },
4675 : {AOM_ICDF(23105), AOM_ICDF(27943), AOM_ICDF(32524), AOM_ICDF(32587),
4676 : AOM_ICDF(32768) },
4677 : {AOM_ICDF(21057), AOM_ICDF(24773), AOM_ICDF(29589), AOM_ICDF(30282),
4678 : AOM_ICDF(32768) },
4679 : {AOM_ICDF(12609), AOM_ICDF(14823), AOM_ICDF(23831), AOM_ICDF(24713),
4680 : AOM_ICDF(32768) },
4681 : {AOM_ICDF(16449), AOM_ICDF(16450), AOM_ICDF(16545), AOM_ICDF(16593),
4682 : AOM_ICDF(32768) } },
4683 : { // Band 2
4684 : {AOM_ICDF(25025), AOM_ICDF(30203), AOM_ICDF(32754), AOM_ICDF(32759),
4685 : AOM_ICDF(32768) },
4686 : {AOM_ICDF(23617), AOM_ICDF(28361), AOM_ICDF(32715), AOM_ICDF(32729),
4687 : AOM_ICDF(32768) },
4688 : {AOM_ICDF(17985), AOM_ICDF(21562), AOM_ICDF(31354), AOM_ICDF(31543),
4689 : AOM_ICDF(32768) },
4690 : {AOM_ICDF(12353), AOM_ICDF(18915), AOM_ICDF(28742), AOM_ICDF(29548),
4691 : AOM_ICDF(32768) },
4692 : {AOM_ICDF(193), AOM_ICDF(289), AOM_ICDF(16545), AOM_ICDF(16593),
4693 : AOM_ICDF(32768) },
4694 : {AOM_ICDF(2625), AOM_ICDF(2652), AOM_ICDF(7276), AOM_ICDF(7351),
4695 : AOM_ICDF(32768) } },
4696 : { // Band 3
4697 : {AOM_ICDF(26433), AOM_ICDF(30892), AOM_ICDF(32757), AOM_ICDF(32761),
4698 : AOM_ICDF(32768) },
4699 : {AOM_ICDF(24513), AOM_ICDF(29274), AOM_ICDF(32721), AOM_ICDF(32735),
4700 : AOM_ICDF(32768) },
4701 : {AOM_ICDF(20161), AOM_ICDF(24040), AOM_ICDF(32055), AOM_ICDF(32171),
4702 : AOM_ICDF(32768) },
4703 : {AOM_ICDF(21953), AOM_ICDF(24678), AOM_ICDF(27382), AOM_ICDF(28734),
4704 : AOM_ICDF(32768) },
4705 : {AOM_ICDF(5697), AOM_ICDF(5750), AOM_ICDF(14739), AOM_ICDF(14792),
4706 : AOM_ICDF(32768) },
4707 : {AOM_ICDF(2881), AOM_ICDF(2913), AOM_ICDF(8427), AOM_ICDF(8498),
4708 : AOM_ICDF(32768) } },
4709 : { // Band 4
4710 : {AOM_ICDF(27457), AOM_ICDF(31485), AOM_ICDF(32759), AOM_ICDF(32763),
4711 : AOM_ICDF(32768) },
4712 : {AOM_ICDF(24129), AOM_ICDF(29502), AOM_ICDF(32752), AOM_ICDF(32757),
4713 : AOM_ICDF(32768) },
4714 : {AOM_ICDF(19009), AOM_ICDF(25452), AOM_ICDF(32473), AOM_ICDF(32544),
4715 : AOM_ICDF(32768) },
4716 : {AOM_ICDF(32705), AOM_ICDF(32706), AOM_ICDF(32737), AOM_ICDF(32738),
4717 : AOM_ICDF(32768) },
4718 : {AOM_ICDF(5313), AOM_ICDF(5366), AOM_ICDF(14376), AOM_ICDF(14430),
4719 : AOM_ICDF(32768) },
4720 : {AOM_ICDF(2753), AOM_ICDF(2789), AOM_ICDF(8909), AOM_ICDF(8979),
4721 : AOM_ICDF(32768) } },
4722 : { // Band 5
4723 : {AOM_ICDF(27841), AOM_ICDF(32288), AOM_ICDF(32759), AOM_ICDF(32764),
4724 : AOM_ICDF(32768) },
4725 : {AOM_ICDF(19137), AOM_ICDF(30271), AOM_ICDF(32742), AOM_ICDF(32753),
4726 : AOM_ICDF(32768) },
4727 : {AOM_ICDF(18625), AOM_ICDF(27739), AOM_ICDF(29979), AOM_ICDF(31099),
4728 : AOM_ICDF(32768) },
4729 : {AOM_ICDF(5697), AOM_ICDF(7486), AOM_ICDF(20238), AOM_ICDF(21009),
4730 : AOM_ICDF(32768) },
4731 : {AOM_ICDF(4929), AOM_ICDF(5579), AOM_ICDF(16402), AOM_ICDF(16866),
4732 : AOM_ICDF(32768) },
4733 : {AOM_ICDF(3009), AOM_ICDF(3246), AOM_ICDF(10158), AOM_ICDF(10533),
4734 : AOM_ICDF(32768) } } } }
4735 : };
4736 : static const coeff_cdf_model default_coef_head_cdf_16x16[PLANE_TYPES] = {
4737 : { // Y plane
4738 : { // Intra
4739 : { // Band 0
4740 : { AOM_ICDF(960), AOM_ICDF(4882), AOM_ICDF(9467), AOM_ICDF(17710),
4741 : AOM_ICDF(20412), AOM_ICDF(32768) },
4742 : { AOM_ICDF(704), AOM_ICDF(4657), AOM_ICDF(6561), AOM_ICDF(14507),
4743 : AOM_ICDF(16279), AOM_ICDF(32768) },
4744 : { AOM_ICDF(192), AOM_ICDF(3443), AOM_ICDF(3759), AOM_ICDF(9011),
4745 : AOM_ICDF(9685), AOM_ICDF(32768) } },
4746 : { // Band 1
4747 : {AOM_ICDF(12481), AOM_ICDF(13958), AOM_ICDF(24487), AOM_ICDF(24997),
4748 : AOM_ICDF(32768) },
4749 : {AOM_ICDF(11457), AOM_ICDF(13075), AOM_ICDF(23820), AOM_ICDF(24406),
4750 : AOM_ICDF(32768) },
4751 : {AOM_ICDF(9793), AOM_ICDF(11127), AOM_ICDF(21775), AOM_ICDF(22387),
4752 : AOM_ICDF(32768) },
4753 : {AOM_ICDF(7745), AOM_ICDF(8457), AOM_ICDF(18155), AOM_ICDF(18655),
4754 : AOM_ICDF(32768) },
4755 : {AOM_ICDF(5441), AOM_ICDF(5668), AOM_ICDF(13180), AOM_ICDF(13467),
4756 : AOM_ICDF(32768) },
4757 : {AOM_ICDF(2497), AOM_ICDF(2520), AOM_ICDF(6340), AOM_ICDF(6417),
4758 : AOM_ICDF(32768) } },
4759 : { // Band 2
4760 : {AOM_ICDF(19521), AOM_ICDF(20572), AOM_ICDF(28965), AOM_ICDF(29177),
4761 : AOM_ICDF(32768) },
4762 : {AOM_ICDF(15425), AOM_ICDF(16741), AOM_ICDF(27247), AOM_ICDF(27554),
4763 : AOM_ICDF(32768) },
4764 : {AOM_ICDF(11969), AOM_ICDF(12690), AOM_ICDF(23872), AOM_ICDF(24141),
4765 : AOM_ICDF(32768) },
4766 : {AOM_ICDF(9281), AOM_ICDF(9678), AOM_ICDF(19970), AOM_ICDF(20207),
4767 : AOM_ICDF(32768) },
4768 : {AOM_ICDF(6081), AOM_ICDF(6266), AOM_ICDF(14682), AOM_ICDF(14876),
4769 : AOM_ICDF(32768) },
4770 : {AOM_ICDF(2753), AOM_ICDF(2779), AOM_ICDF(7150), AOM_ICDF(7225),
4771 : AOM_ICDF(32768) } },
4772 : { // Band 3
4773 : {AOM_ICDF(22337), AOM_ICDF(23293), AOM_ICDF(30630), AOM_ICDF(30753),
4774 : AOM_ICDF(32768) },
4775 : {AOM_ICDF(16321), AOM_ICDF(17427), AOM_ICDF(28368), AOM_ICDF(28570),
4776 : AOM_ICDF(32768) },
4777 : {AOM_ICDF(11457), AOM_ICDF(11907), AOM_ICDF(23570), AOM_ICDF(23741),
4778 : AOM_ICDF(32768) },
4779 : {AOM_ICDF(7233), AOM_ICDF(7331), AOM_ICDF(17258), AOM_ICDF(17334),
4780 : AOM_ICDF(32768) },
4781 : {AOM_ICDF(4033), AOM_ICDF(4070), AOM_ICDF(10375), AOM_ICDF(10441),
4782 : AOM_ICDF(32768) },
4783 : {AOM_ICDF(1601), AOM_ICDF(1619), AOM_ICDF(4706), AOM_ICDF(4788),
4784 : AOM_ICDF(32768) } },
4785 : { // Band 4
4786 : {AOM_ICDF(24769), AOM_ICDF(25536), AOM_ICDF(31660), AOM_ICDF(31722),
4787 : AOM_ICDF(32768) },
4788 : {AOM_ICDF(18113), AOM_ICDF(18886), AOM_ICDF(29420), AOM_ICDF(29534),
4789 : AOM_ICDF(32768) },
4790 : {AOM_ICDF(11201), AOM_ICDF(11412), AOM_ICDF(23207), AOM_ICDF(23291),
4791 : AOM_ICDF(32768) },
4792 : {AOM_ICDF(6977), AOM_ICDF(7033), AOM_ICDF(16599), AOM_ICDF(16646),
4793 : AOM_ICDF(32768) },
4794 : {AOM_ICDF(4033), AOM_ICDF(4070), AOM_ICDF(10375), AOM_ICDF(10441),
4795 : AOM_ICDF(32768) },
4796 : {AOM_ICDF(1601), AOM_ICDF(1620), AOM_ICDF(4827), AOM_ICDF(4909),
4797 : AOM_ICDF(32768) } },
4798 : { // Band 5
4799 : {AOM_ICDF(28353), AOM_ICDF(28831), AOM_ICDF(32502), AOM_ICDF(32517),
4800 : AOM_ICDF(32768) },
4801 : {AOM_ICDF(21441), AOM_ICDF(21869), AOM_ICDF(30977), AOM_ICDF(31017),
4802 : AOM_ICDF(32768) },
4803 : {AOM_ICDF(11969), AOM_ICDF(12088), AOM_ICDF(24116), AOM_ICDF(24158),
4804 : AOM_ICDF(32768) },
4805 : {AOM_ICDF(7489), AOM_ICDF(7547), AOM_ICDF(17413), AOM_ICDF(17458),
4806 : AOM_ICDF(32768) },
4807 : {AOM_ICDF(4545), AOM_ICDF(4585), AOM_ICDF(11325), AOM_ICDF(11388),
4808 : AOM_ICDF(32768) },
4809 : {AOM_ICDF(2113), AOM_ICDF(2133), AOM_ICDF(5526), AOM_ICDF(5606),
4810 : AOM_ICDF(32768) } } },
4811 : { // Intra
4812 : { // Band 0
4813 : { AOM_ICDF(2496), AOM_ICDF(8717), AOM_ICDF(17280), AOM_ICDF(28922),
4814 : AOM_ICDF(29751), AOM_ICDF(32768) },
4815 : { AOM_ICDF(2496), AOM_ICDF(9665), AOM_ICDF(15235), AOM_ICDF(26542),
4816 : AOM_ICDF(27580), AOM_ICDF(32768) },
4817 : { AOM_ICDF(448), AOM_ICDF(9240), AOM_ICDF(11886), AOM_ICDF(24124),
4818 : AOM_ICDF(24898), AOM_ICDF(32768) } },
4819 : { // Band 1
4820 : {AOM_ICDF(21057), AOM_ICDF(22896), AOM_ICDF(31877), AOM_ICDF(31953),
4821 : AOM_ICDF(32768) },
4822 : {AOM_ICDF(20673), AOM_ICDF(23151), AOM_ICDF(31706), AOM_ICDF(31825),
4823 : AOM_ICDF(32768) },
4824 : {AOM_ICDF(18753), AOM_ICDF(20519), AOM_ICDF(30497), AOM_ICDF(30668),
4825 : AOM_ICDF(32768) },
4826 : {AOM_ICDF(15425), AOM_ICDF(16608), AOM_ICDF(27789), AOM_ICDF(28027),
4827 : AOM_ICDF(32768) },
4828 : {AOM_ICDF(10305), AOM_ICDF(10977), AOM_ICDF(21405), AOM_ICDF(21749),
4829 : AOM_ICDF(32768) },
4830 : {AOM_ICDF(3649), AOM_ICDF(3812), AOM_ICDF(11213), AOM_ICDF(11445),
4831 : AOM_ICDF(32768) } },
4832 : { // Band 2
4833 : {AOM_ICDF(24001), AOM_ICDF(25899), AOM_ICDF(32307), AOM_ICDF(32360),
4834 : AOM_ICDF(32768) },
4835 : {AOM_ICDF(20929), AOM_ICDF(22941), AOM_ICDF(31775), AOM_ICDF(31867),
4836 : AOM_ICDF(32768) },
4837 : {AOM_ICDF(15169), AOM_ICDF(16734), AOM_ICDF(29228), AOM_ICDF(29425),
4838 : AOM_ICDF(32768) },
4839 : {AOM_ICDF(10561), AOM_ICDF(12047), AOM_ICDF(24918), AOM_ICDF(25324),
4840 : AOM_ICDF(32768) },
4841 : {AOM_ICDF(6977), AOM_ICDF(7929), AOM_ICDF(18311), AOM_ICDF(18918),
4842 : AOM_ICDF(32768) },
4843 : {AOM_ICDF(3649), AOM_ICDF(3760), AOM_ICDF(9962), AOM_ICDF(10162),
4844 : AOM_ICDF(32768) } },
4845 : { // Band 3
4846 : {AOM_ICDF(25793), AOM_ICDF(27526), AOM_ICDF(32565), AOM_ICDF(32591),
4847 : AOM_ICDF(32768) },
4848 : {AOM_ICDF(21825), AOM_ICDF(23885), AOM_ICDF(32064), AOM_ICDF(32135),
4849 : AOM_ICDF(32768) },
4850 : {AOM_ICDF(15041), AOM_ICDF(16286), AOM_ICDF(29203), AOM_ICDF(29360),
4851 : AOM_ICDF(32768) },
4852 : {AOM_ICDF(10433), AOM_ICDF(11058), AOM_ICDF(24349), AOM_ICDF(24538),
4853 : AOM_ICDF(32768) },
4854 : {AOM_ICDF(5569), AOM_ICDF(6016), AOM_ICDF(16460), AOM_ICDF(16794),
4855 : AOM_ICDF(32768) },
4856 : {AOM_ICDF(193), AOM_ICDF(194), AOM_ICDF(384), AOM_ICDF(479),
4857 : AOM_ICDF(32768) } },
4858 : { // Band 4
4859 : {AOM_ICDF(26433), AOM_ICDF(28398), AOM_ICDF(32682), AOM_ICDF(32696),
4860 : AOM_ICDF(32768) },
4861 : {AOM_ICDF(22977), AOM_ICDF(25086), AOM_ICDF(32367), AOM_ICDF(32412),
4862 : AOM_ICDF(32768) },
4863 : {AOM_ICDF(16577), AOM_ICDF(17928), AOM_ICDF(30144), AOM_ICDF(30275),
4864 : AOM_ICDF(32768) },
4865 : {AOM_ICDF(12481), AOM_ICDF(13352), AOM_ICDF(25993), AOM_ICDF(26211),
4866 : AOM_ICDF(32768) },
4867 : {AOM_ICDF(7745), AOM_ICDF(8069), AOM_ICDF(20501), AOM_ICDF(20657),
4868 : AOM_ICDF(32768) },
4869 : {AOM_ICDF(16449), AOM_ICDF(16450), AOM_ICDF(16545), AOM_ICDF(16593),
4870 : AOM_ICDF(32768) } },
4871 : { // Band 5
4872 : {AOM_ICDF(27841), AOM_ICDF(29700), AOM_ICDF(32721), AOM_ICDF(32730),
4873 : AOM_ICDF(32768) },
4874 : {AOM_ICDF(23873), AOM_ICDF(26202), AOM_ICDF(32578), AOM_ICDF(32604),
4875 : AOM_ICDF(32768) },
4876 : {AOM_ICDF(17729), AOM_ICDF(19046), AOM_ICDF(30448), AOM_ICDF(30568),
4877 : AOM_ICDF(32768) },
4878 : {AOM_ICDF(13505), AOM_ICDF(14508), AOM_ICDF(26034), AOM_ICDF(26304),
4879 : AOM_ICDF(32768) },
4880 : {AOM_ICDF(10049), AOM_ICDF(10494), AOM_ICDF(19945), AOM_ICDF(20233),
4881 : AOM_ICDF(32768) },
4882 : {AOM_ICDF(2113), AOM_ICDF(2183), AOM_ICDF(7202), AOM_ICDF(7377),
4883 : AOM_ICDF(32768) } } } },
4884 : { // UV plane
4885 : { // Inter
4886 : { // Band 0
4887 : { AOM_ICDF(27072), AOM_ICDF(27916), AOM_ICDF(31095), AOM_ICDF(32400),
4888 : AOM_ICDF(32553), AOM_ICDF(32768) },
4889 : { AOM_ICDF(12352), AOM_ICDF(16792), AOM_ICDF(22516), AOM_ICDF(28853),
4890 : AOM_ICDF(29797), AOM_ICDF(32768) },
4891 : { AOM_ICDF(2880), AOM_ICDF(9023), AOM_ICDF(11126), AOM_ICDF(20602),
4892 : AOM_ICDF(21713), AOM_ICDF(32768) } },
4893 : { // Band 1
4894 : {AOM_ICDF(20161), AOM_ICDF(24785), AOM_ICDF(31070), AOM_ICDF(31430),
4895 : AOM_ICDF(32768) },
4896 : {AOM_ICDF(17985), AOM_ICDF(22773), AOM_ICDF(30430), AOM_ICDF(30880),
4897 : AOM_ICDF(32768) },
4898 : {AOM_ICDF(15937), AOM_ICDF(18802), AOM_ICDF(28265), AOM_ICDF(28788),
4899 : AOM_ICDF(32768) },
4900 : {AOM_ICDF(11841), AOM_ICDF(13587), AOM_ICDF(24798), AOM_ICDF(25335),
4901 : AOM_ICDF(32768) },
4902 : {AOM_ICDF(8769), AOM_ICDF(9160), AOM_ICDF(19316), AOM_ICDF(19566),
4903 : AOM_ICDF(32768) },
4904 : {AOM_ICDF(5313), AOM_ICDF(5357), AOM_ICDF(12874), AOM_ICDF(12932),
4905 : AOM_ICDF(32768) } },
4906 : { // Band 2
4907 : {AOM_ICDF(24129), AOM_ICDF(26501), AOM_ICDF(31672), AOM_ICDF(31844),
4908 : AOM_ICDF(32768) },
4909 : {AOM_ICDF(19649), AOM_ICDF(21553), AOM_ICDF(30130), AOM_ICDF(30370),
4910 : AOM_ICDF(32768) },
4911 : {AOM_ICDF(11713), AOM_ICDF(13134), AOM_ICDF(25983), AOM_ICDF(26321),
4912 : AOM_ICDF(32768) },
4913 : {AOM_ICDF(9409), AOM_ICDF(9948), AOM_ICDF(21408), AOM_ICDF(21663),
4914 : AOM_ICDF(32768) },
4915 : {AOM_ICDF(5569), AOM_ICDF(5757), AOM_ICDF(14335), AOM_ICDF(14533),
4916 : AOM_ICDF(32768) },
4917 : {AOM_ICDF(2241), AOM_ICDF(2305), AOM_ICDF(13152), AOM_ICDF(13209),
4918 : AOM_ICDF(32768) } },
4919 : { // Band 3
4920 : {AOM_ICDF(26817), AOM_ICDF(28135), AOM_ICDF(32130), AOM_ICDF(32209),
4921 : AOM_ICDF(32768) },
4922 : {AOM_ICDF(20161), AOM_ICDF(21412), AOM_ICDF(30331), AOM_ICDF(30481),
4923 : AOM_ICDF(32768) },
4924 : {AOM_ICDF(13377), AOM_ICDF(13798), AOM_ICDF(26065), AOM_ICDF(26176),
4925 : AOM_ICDF(32768) },
4926 : {AOM_ICDF(8129), AOM_ICDF(8290), AOM_ICDF(19920), AOM_ICDF(20008),
4927 : AOM_ICDF(32768) },
4928 : {AOM_ICDF(5697), AOM_ICDF(5751), AOM_ICDF(14950), AOM_ICDF(15002),
4929 : AOM_ICDF(32768) },
4930 : {AOM_ICDF(5569), AOM_ICDF(5601), AOM_ICDF(11041), AOM_ICDF(11105),
4931 : AOM_ICDF(32768) } },
4932 : { // Band 4
4933 : {AOM_ICDF(28225), AOM_ICDF(29079), AOM_ICDF(32387), AOM_ICDF(32426),
4934 : AOM_ICDF(32768) },
4935 : {AOM_ICDF(21185), AOM_ICDF(22046), AOM_ICDF(30982), AOM_ICDF(31061),
4936 : AOM_ICDF(32768) },
4937 : {AOM_ICDF(13377), AOM_ICDF(13595), AOM_ICDF(25762), AOM_ICDF(25824),
4938 : AOM_ICDF(32768) },
4939 : {AOM_ICDF(8001), AOM_ICDF(8123), AOM_ICDF(20530), AOM_ICDF(20590),
4940 : AOM_ICDF(32768) },
4941 : {AOM_ICDF(4289), AOM_ICDF(4322), AOM_ICDF(9907), AOM_ICDF(9974),
4942 : AOM_ICDF(32768) },
4943 : {AOM_ICDF(3393), AOM_ICDF(3412), AOM_ICDF(6663), AOM_ICDF(6739),
4944 : AOM_ICDF(32768) } },
4945 : { // Band 5
4946 : {AOM_ICDF(30529), AOM_ICDF(31014), AOM_ICDF(32651), AOM_ICDF(32664),
4947 : AOM_ICDF(32768) },
4948 : {AOM_ICDF(23489), AOM_ICDF(24268), AOM_ICDF(31627), AOM_ICDF(31682),
4949 : AOM_ICDF(32768) },
4950 : {AOM_ICDF(14017), AOM_ICDF(14239), AOM_ICDF(26653), AOM_ICDF(26707),
4951 : AOM_ICDF(32768) },
4952 : {AOM_ICDF(11201), AOM_ICDF(11317), AOM_ICDF(23122), AOM_ICDF(23169),
4953 : AOM_ICDF(32768) },
4954 : {AOM_ICDF(6721), AOM_ICDF(6768), AOM_ICDF(14810), AOM_ICDF(14863),
4955 : AOM_ICDF(32768) },
4956 : {AOM_ICDF(6593), AOM_ICDF(6632), AOM_ICDF(13188), AOM_ICDF(13245),
4957 : AOM_ICDF(32768) } } },
4958 : { // Inter
4959 : { // Band 0
4960 : { AOM_ICDF(29888), AOM_ICDF(30492), AOM_ICDF(32500), AOM_ICDF(32766),
4961 : AOM_ICDF(32767), AOM_ICDF(32768) },
4962 : { AOM_ICDF(18752), AOM_ICDF(23235), AOM_ICDF(29846), AOM_ICDF(32214),
4963 : AOM_ICDF(32442), AOM_ICDF(32768) },
4964 : { AOM_ICDF(5568), AOM_ICDF(17762), AOM_ICDF(25039), AOM_ICDF(31213),
4965 : AOM_ICDF(31651), AOM_ICDF(32768) } },
4966 : { // Band 1
4967 : {AOM_ICDF(26433), AOM_ICDF(29681), AOM_ICDF(32757), AOM_ICDF(32760),
4968 : AOM_ICDF(32768) },
4969 : {AOM_ICDF(24769), AOM_ICDF(28761), AOM_ICDF(32722), AOM_ICDF(32734),
4970 : AOM_ICDF(32768) },
4971 : {AOM_ICDF(22209), AOM_ICDF(26975), AOM_ICDF(32418), AOM_ICDF(32500),
4972 : AOM_ICDF(32768) },
4973 : {AOM_ICDF(16321), AOM_ICDF(21333), AOM_ICDF(28368), AOM_ICDF(29283),
4974 : AOM_ICDF(32768) },
4975 : {AOM_ICDF(12865), AOM_ICDF(14775), AOM_ICDF(22545), AOM_ICDF(23553),
4976 : AOM_ICDF(32768) },
4977 : {AOM_ICDF(12353), AOM_ICDF(12354), AOM_ICDF(12473), AOM_ICDF(12532),
4978 : AOM_ICDF(32768) } },
4979 : { // Band 2
4980 : {AOM_ICDF(27457), AOM_ICDF(30005), AOM_ICDF(32738), AOM_ICDF(32745),
4981 : AOM_ICDF(32768) },
4982 : {AOM_ICDF(24897), AOM_ICDF(27541), AOM_ICDF(32723), AOM_ICDF(32731),
4983 : AOM_ICDF(32768) },
4984 : {AOM_ICDF(15297), AOM_ICDF(19106), AOM_ICDF(30414), AOM_ICDF(30711),
4985 : AOM_ICDF(32768) },
4986 : {AOM_ICDF(6593), AOM_ICDF(8826), AOM_ICDF(19732), AOM_ICDF(20840),
4987 : AOM_ICDF(32768) },
4988 : {AOM_ICDF(4161), AOM_ICDF(4233), AOM_ICDF(16509), AOM_ICDF(16557),
4989 : AOM_ICDF(32768) },
4990 : {AOM_ICDF(2625), AOM_ICDF(2652), AOM_ICDF(7276), AOM_ICDF(7351),
4991 : AOM_ICDF(32768) } },
4992 : { // Band 3
4993 : {AOM_ICDF(28609), AOM_ICDF(30482), AOM_ICDF(32761), AOM_ICDF(32763),
4994 : AOM_ICDF(32768) },
4995 : {AOM_ICDF(25665), AOM_ICDF(27830), AOM_ICDF(32727), AOM_ICDF(32733),
4996 : AOM_ICDF(32768) },
4997 : {AOM_ICDF(21057), AOM_ICDF(23803), AOM_ICDF(30367), AOM_ICDF(30721),
4998 : AOM_ICDF(32768) },
4999 : {AOM_ICDF(10945), AOM_ICDF(21878), AOM_ICDF(32726), AOM_ICDF(32737),
5000 : AOM_ICDF(32768) },
5001 : {AOM_ICDF(5697), AOM_ICDF(5750), AOM_ICDF(14739), AOM_ICDF(14792),
5002 : AOM_ICDF(32768) },
5003 : {AOM_ICDF(2881), AOM_ICDF(2913), AOM_ICDF(8427), AOM_ICDF(8498),
5004 : AOM_ICDF(32768) } },
5005 : { // Band 4
5006 : {AOM_ICDF(28993), AOM_ICDF(30944), AOM_ICDF(32762), AOM_ICDF(32764),
5007 : AOM_ICDF(32768) },
5008 : {AOM_ICDF(26561), AOM_ICDF(28695), AOM_ICDF(32733), AOM_ICDF(32739),
5009 : AOM_ICDF(32768) },
5010 : {AOM_ICDF(17985), AOM_ICDF(19028), AOM_ICDF(31008), AOM_ICDF(31079),
5011 : AOM_ICDF(32768) },
5012 : {AOM_ICDF(7873), AOM_ICDF(8039), AOM_ICDF(19981), AOM_ICDF(20068),
5013 : AOM_ICDF(32768) },
5014 : {AOM_ICDF(5313), AOM_ICDF(5366), AOM_ICDF(14376), AOM_ICDF(14430),
5015 : AOM_ICDF(32768) },
5016 : {AOM_ICDF(2753), AOM_ICDF(2789), AOM_ICDF(8909), AOM_ICDF(8979),
5017 : AOM_ICDF(32768) } },
5018 : { // Band 5
5019 : {AOM_ICDF(30273), AOM_ICDF(32029), AOM_ICDF(32764), AOM_ICDF(32766),
5020 : AOM_ICDF(32768) },
5021 : {AOM_ICDF(28609), AOM_ICDF(30847), AOM_ICDF(32745), AOM_ICDF(32751),
5022 : AOM_ICDF(32768) },
5023 : {AOM_ICDF(21313), AOM_ICDF(24377), AOM_ICDF(31986), AOM_ICDF(32098),
5024 : AOM_ICDF(32768) },
5025 : {AOM_ICDF(32705), AOM_ICDF(32709), AOM_ICDF(32739), AOM_ICDF(32741),
5026 : AOM_ICDF(32768) },
5027 : {AOM_ICDF(4929), AOM_ICDF(5579), AOM_ICDF(16402), AOM_ICDF(16866),
5028 : AOM_ICDF(32768) },
5029 : {AOM_ICDF(3009), AOM_ICDF(3246), AOM_ICDF(10158), AOM_ICDF(10533),
5030 : AOM_ICDF(32768) } } } }
5031 : };
5032 : static const coeff_cdf_model default_coef_head_cdf_32x32[PLANE_TYPES] = {
5033 : { // Y plane
5034 : { // Intra
5035 : { // Band 0
5036 : { AOM_ICDF(2240), AOM_ICDF(5407), AOM_ICDF(18304), AOM_ICDF(25601),
5037 : AOM_ICDF(27911), AOM_ICDF(32768) },
5038 : { AOM_ICDF(960), AOM_ICDF(4633), AOM_ICDF(8197), AOM_ICDF(16254),
5039 : AOM_ICDF(18796), AOM_ICDF(32768) },
5040 : { AOM_ICDF(192), AOM_ICDF(3061), AOM_ICDF(3557), AOM_ICDF(8701),
5041 : AOM_ICDF(9762), AOM_ICDF(32768) } },
5042 : { // Band 1
5043 : {AOM_ICDF(11969), AOM_ICDF(15846), AOM_ICDF(25660), AOM_ICDF(26667),
5044 : AOM_ICDF(32768) },
5045 : {AOM_ICDF(11713), AOM_ICDF(15794), AOM_ICDF(25737), AOM_ICDF(26760),
5046 : AOM_ICDF(32768) },
5047 : {AOM_ICDF(9281), AOM_ICDF(12675), AOM_ICDF(23181), AOM_ICDF(24351),
5048 : AOM_ICDF(32768) },
5049 : {AOM_ICDF(7105), AOM_ICDF(8757), AOM_ICDF(18383), AOM_ICDF(19437),
5050 : AOM_ICDF(32768) },
5051 : {AOM_ICDF(4289), AOM_ICDF(4579), AOM_ICDF(11353), AOM_ICDF(11792),
5052 : AOM_ICDF(32768) },
5053 : {AOM_ICDF(1857), AOM_ICDF(1874), AOM_ICDF(4695), AOM_ICDF(4777),
5054 : AOM_ICDF(32768) } },
5055 : { // Band 2
5056 : {AOM_ICDF(20929), AOM_ICDF(22297), AOM_ICDF(29370), AOM_ICDF(29646),
5057 : AOM_ICDF(32768) },
5058 : {AOM_ICDF(17473), AOM_ICDF(18985), AOM_ICDF(28079), AOM_ICDF(28413),
5059 : AOM_ICDF(32768) },
5060 : {AOM_ICDF(13121), AOM_ICDF(14064), AOM_ICDF(24902), AOM_ICDF(25217),
5061 : AOM_ICDF(32768) },
5062 : {AOM_ICDF(9793), AOM_ICDF(10214), AOM_ICDF(20069), AOM_ICDF(20329),
5063 : AOM_ICDF(32768) },
5064 : {AOM_ICDF(5825), AOM_ICDF(5987), AOM_ICDF(13350), AOM_ICDF(13559),
5065 : AOM_ICDF(32768) },
5066 : {AOM_ICDF(2241), AOM_ICDF(2260), AOM_ICDF(5520), AOM_ICDF(5600),
5067 : AOM_ICDF(32768) } },
5068 : { // Band 3
5069 : {AOM_ICDF(25921), AOM_ICDF(26891), AOM_ICDF(31632), AOM_ICDF(31729),
5070 : AOM_ICDF(32768) },
5071 : {AOM_ICDF(18241), AOM_ICDF(19463), AOM_ICDF(29222), AOM_ICDF(29419),
5072 : AOM_ICDF(32768) },
5073 : {AOM_ICDF(11585), AOM_ICDF(12065), AOM_ICDF(23294), AOM_ICDF(23488),
5074 : AOM_ICDF(32768) },
5075 : {AOM_ICDF(6593), AOM_ICDF(6686), AOM_ICDF(16153), AOM_ICDF(16234),
5076 : AOM_ICDF(32768) },
5077 : {AOM_ICDF(3137), AOM_ICDF(3170), AOM_ICDF(8751), AOM_ICDF(8821),
5078 : AOM_ICDF(32768) },
5079 : {AOM_ICDF(1345), AOM_ICDF(1359), AOM_ICDF(3739), AOM_ICDF(3824),
5080 : AOM_ICDF(32768) } },
5081 : { // Band 4
5082 : {AOM_ICDF(27713), AOM_ICDF(28504), AOM_ICDF(32068), AOM_ICDF(32132),
5083 : AOM_ICDF(32768) },
5084 : {AOM_ICDF(19265), AOM_ICDF(20354), AOM_ICDF(29789), AOM_ICDF(29943),
5085 : AOM_ICDF(32768) },
5086 : {AOM_ICDF(11201), AOM_ICDF(11538), AOM_ICDF(22701), AOM_ICDF(22848),
5087 : AOM_ICDF(32768) },
5088 : {AOM_ICDF(6337), AOM_ICDF(6424), AOM_ICDF(15268), AOM_ICDF(15353),
5089 : AOM_ICDF(32768) },
5090 : {AOM_ICDF(3649), AOM_ICDF(3681), AOM_ICDF(9052), AOM_ICDF(9121),
5091 : AOM_ICDF(32768) },
5092 : {AOM_ICDF(1601), AOM_ICDF(1618), AOM_ICDF(4584), AOM_ICDF(4667),
5093 : AOM_ICDF(32768) } },
5094 : { // Band 5
5095 : {AOM_ICDF(30913), AOM_ICDF(31044), AOM_ICDF(32635), AOM_ICDF(32640),
5096 : AOM_ICDF(32768) },
5097 : {AOM_ICDF(22081), AOM_ICDF(22261), AOM_ICDF(30452), AOM_ICDF(30477),
5098 : AOM_ICDF(32768) },
5099 : {AOM_ICDF(10561), AOM_ICDF(10625), AOM_ICDF(21535), AOM_ICDF(21568),
5100 : AOM_ICDF(32768) },
5101 : {AOM_ICDF(6081), AOM_ICDF(6130), AOM_ICDF(14369), AOM_ICDF(14423),
5102 : AOM_ICDF(32768) },
5103 : {AOM_ICDF(3777), AOM_ICDF(3809), AOM_ICDF(9156), AOM_ICDF(9225),
5104 : AOM_ICDF(32768) },
5105 : {AOM_ICDF(1857), AOM_ICDF(1875), AOM_ICDF(4936), AOM_ICDF(5018),
5106 : AOM_ICDF(32768) } } },
5107 : { // Intra
5108 : { // Band 0
5109 : { AOM_ICDF(4672), AOM_ICDF(6927), AOM_ICDF(23534), AOM_ICDF(29846),
5110 : AOM_ICDF(30928), AOM_ICDF(32768) },
5111 : { AOM_ICDF(3776), AOM_ICDF(6784), AOM_ICDF(18075), AOM_ICDF(25863),
5112 : AOM_ICDF(27926), AOM_ICDF(32768) },
5113 : { AOM_ICDF(1344), AOM_ICDF(5588), AOM_ICDF(12166), AOM_ICDF(20966),
5114 : AOM_ICDF(23504), AOM_ICDF(32768) } },
5115 : { // Band 1
5116 : {AOM_ICDF(19393), AOM_ICDF(22016), AOM_ICDF(31280), AOM_ICDF(31444),
5117 : AOM_ICDF(32768) },
5118 : {AOM_ICDF(21185), AOM_ICDF(24329), AOM_ICDF(31706), AOM_ICDF(31865),
5119 : AOM_ICDF(32768) },
5120 : {AOM_ICDF(20673), AOM_ICDF(23240), AOM_ICDF(31186), AOM_ICDF(31379),
5121 : AOM_ICDF(32768) },
5122 : {AOM_ICDF(17857), AOM_ICDF(20035), AOM_ICDF(29594), AOM_ICDF(29889),
5123 : AOM_ICDF(32768) },
5124 : {AOM_ICDF(13633), AOM_ICDF(14929), AOM_ICDF(24883), AOM_ICDF(25337),
5125 : AOM_ICDF(32768) },
5126 : {AOM_ICDF(7873), AOM_ICDF(8416), AOM_ICDF(17452), AOM_ICDF(17886),
5127 : AOM_ICDF(32768) } },
5128 : { // Band 2
5129 : {AOM_ICDF(25665), AOM_ICDF(27145), AOM_ICDF(32256), AOM_ICDF(32314),
5130 : AOM_ICDF(32768) },
5131 : {AOM_ICDF(21057), AOM_ICDF(22826), AOM_ICDF(31465), AOM_ICDF(31576),
5132 : AOM_ICDF(32768) },
5133 : {AOM_ICDF(13633), AOM_ICDF(14885), AOM_ICDF(27873), AOM_ICDF(28088),
5134 : AOM_ICDF(32768) },
5135 : {AOM_ICDF(8769), AOM_ICDF(9515), AOM_ICDF(21941), AOM_ICDF(22248),
5136 : AOM_ICDF(32768) },
5137 : {AOM_ICDF(6209), AOM_ICDF(6594), AOM_ICDF(15598), AOM_ICDF(15950),
5138 : AOM_ICDF(32768) },
5139 : {AOM_ICDF(1985), AOM_ICDF(2014), AOM_ICDF(6855), AOM_ICDF(6931),
5140 : AOM_ICDF(32768) } },
5141 : { // Band 3
5142 : {AOM_ICDF(26817), AOM_ICDF(27824), AOM_ICDF(32362), AOM_ICDF(32399),
5143 : AOM_ICDF(32768) },
5144 : {AOM_ICDF(21185), AOM_ICDF(22321), AOM_ICDF(31389), AOM_ICDF(31466),
5145 : AOM_ICDF(32768) },
5146 : {AOM_ICDF(13761), AOM_ICDF(14154), AOM_ICDF(27163), AOM_ICDF(27245),
5147 : AOM_ICDF(32768) },
5148 : {AOM_ICDF(8897), AOM_ICDF(9011), AOM_ICDF(20600), AOM_ICDF(20659),
5149 : AOM_ICDF(32768) },
5150 : {AOM_ICDF(4673), AOM_ICDF(4774), AOM_ICDF(15044), AOM_ICDF(15131),
5151 : AOM_ICDF(32768) },
5152 : {AOM_ICDF(193), AOM_ICDF(194), AOM_ICDF(384), AOM_ICDF(479),
5153 : AOM_ICDF(32768) } },
5154 : { // Band 4
5155 : {AOM_ICDF(28865), AOM_ICDF(29687), AOM_ICDF(32655), AOM_ICDF(32667),
5156 : AOM_ICDF(32768) },
5157 : {AOM_ICDF(23233), AOM_ICDF(24218), AOM_ICDF(32080), AOM_ICDF(32118),
5158 : AOM_ICDF(32768) },
5159 : {AOM_ICDF(15041), AOM_ICDF(15444), AOM_ICDF(28787), AOM_ICDF(28845),
5160 : AOM_ICDF(32768) },
5161 : {AOM_ICDF(9921), AOM_ICDF(10248), AOM_ICDF(22818), AOM_ICDF(22944),
5162 : AOM_ICDF(32768) },
5163 : {AOM_ICDF(7745), AOM_ICDF(7866), AOM_ICDF(16591), AOM_ICDF(16702),
5164 : AOM_ICDF(32768) },
5165 : {AOM_ICDF(193), AOM_ICDF(194), AOM_ICDF(384), AOM_ICDF(479),
5166 : AOM_ICDF(32768) } },
5167 : { // Band 5
5168 : {AOM_ICDF(31169), AOM_ICDF(31559), AOM_ICDF(32741), AOM_ICDF(32744),
5169 : AOM_ICDF(32768) },
5170 : {AOM_ICDF(24769), AOM_ICDF(25583), AOM_ICDF(32347), AOM_ICDF(32370),
5171 : AOM_ICDF(32768) },
5172 : {AOM_ICDF(15937), AOM_ICDF(16169), AOM_ICDF(29120), AOM_ICDF(29152),
5173 : AOM_ICDF(32768) },
5174 : {AOM_ICDF(7489), AOM_ICDF(7578), AOM_ICDF(22647), AOM_ICDF(22677),
5175 : AOM_ICDF(32768) },
5176 : {AOM_ICDF(7617), AOM_ICDF(7689), AOM_ICDF(19849), AOM_ICDF(19887),
5177 : AOM_ICDF(32768) },
5178 : {AOM_ICDF(2113), AOM_ICDF(2183), AOM_ICDF(7202), AOM_ICDF(7377),
5179 : AOM_ICDF(32768) } } } },
5180 : { // UV plane
5181 : { // Inter
5182 : { // Band 0
5183 : { AOM_ICDF(23232), AOM_ICDF(24301), AOM_ICDF(30231), AOM_ICDF(31582),
5184 : AOM_ICDF(32091), AOM_ICDF(32768) },
5185 : { AOM_ICDF(7872), AOM_ICDF(11041), AOM_ICDF(22542), AOM_ICDF(27086),
5186 : AOM_ICDF(29145), AOM_ICDF(32768) },
5187 : { AOM_ICDF(1344), AOM_ICDF(3989), AOM_ICDF(18125), AOM_ICDF(25340),
5188 : AOM_ICDF(27820), AOM_ICDF(32768) } },
5189 : { // Band 1
5190 : {AOM_ICDF(15937), AOM_ICDF(29000), AOM_ICDF(32210), AOM_ICDF(32434),
5191 : AOM_ICDF(32768) },
5192 : {AOM_ICDF(12353), AOM_ICDF(26626), AOM_ICDF(31533), AOM_ICDF(31993),
5193 : AOM_ICDF(32768) },
5194 : {AOM_ICDF(11457), AOM_ICDF(29187), AOM_ICDF(30896), AOM_ICDF(31750),
5195 : AOM_ICDF(32768) },
5196 : {AOM_ICDF(5697), AOM_ICDF(21278), AOM_ICDF(28169), AOM_ICDF(29764),
5197 : AOM_ICDF(32768) },
5198 : {AOM_ICDF(7489), AOM_ICDF(8855), AOM_ICDF(13365), AOM_ICDF(15620),
5199 : AOM_ICDF(32768) },
5200 : {AOM_ICDF(4289), AOM_ICDF(4833), AOM_ICDF(8572), AOM_ICDF(10108),
5201 : AOM_ICDF(32768) } },
5202 : { // Band 2
5203 : {AOM_ICDF(25025), AOM_ICDF(30783), AOM_ICDF(32603), AOM_ICDF(32666),
5204 : AOM_ICDF(32768) },
5205 : {AOM_ICDF(24385), AOM_ICDF(29586), AOM_ICDF(31803), AOM_ICDF(32142),
5206 : AOM_ICDF(32768) },
5207 : {AOM_ICDF(22337), AOM_ICDF(23002), AOM_ICDF(27573), AOM_ICDF(27903),
5208 : AOM_ICDF(32768) },
5209 : {AOM_ICDF(10945), AOM_ICDF(12336), AOM_ICDF(21900), AOM_ICDF(22590),
5210 : AOM_ICDF(32768) },
5211 : {AOM_ICDF(8257), AOM_ICDF(8830), AOM_ICDF(19986), AOM_ICDF(20298),
5212 : AOM_ICDF(32768) },
5213 : {AOM_ICDF(10945), AOM_ICDF(10990), AOM_ICDF(18660), AOM_ICDF(18701),
5214 : AOM_ICDF(32768) } },
5215 : { // Band 3
5216 : {AOM_ICDF(29761), AOM_ICDF(31473), AOM_ICDF(32693), AOM_ICDF(32715),
5217 : AOM_ICDF(32768) },
5218 : {AOM_ICDF(20417), AOM_ICDF(24512), AOM_ICDF(31394), AOM_ICDF(31650),
5219 : AOM_ICDF(32768) },
5220 : {AOM_ICDF(11713), AOM_ICDF(13283), AOM_ICDF(25819), AOM_ICDF(26206),
5221 : AOM_ICDF(32768) },
5222 : {AOM_ICDF(13121), AOM_ICDF(14099), AOM_ICDF(21909), AOM_ICDF(22514),
5223 : AOM_ICDF(32768) },
5224 : {AOM_ICDF(193), AOM_ICDF(248), AOM_ICDF(9546), AOM_ICDF(9614),
5225 : AOM_ICDF(32768) },
5226 : {AOM_ICDF(2497), AOM_ICDF(2524), AOM_ICDF(7050), AOM_ICDF(7125),
5227 : AOM_ICDF(32768) } },
5228 : { // Band 4
5229 : {AOM_ICDF(30657), AOM_ICDF(31885), AOM_ICDF(32691), AOM_ICDF(32715),
5230 : AOM_ICDF(32768) },
5231 : {AOM_ICDF(19393), AOM_ICDF(26050), AOM_ICDF(31698), AOM_ICDF(31988),
5232 : AOM_ICDF(32768) },
5233 : {AOM_ICDF(15809), AOM_ICDF(15863), AOM_ICDF(24985), AOM_ICDF(25008),
5234 : AOM_ICDF(32768) },
5235 : {AOM_ICDF(23489), AOM_ICDF(28138), AOM_ICDF(32751), AOM_ICDF(32756),
5236 : AOM_ICDF(32768) },
5237 : {AOM_ICDF(16449), AOM_ICDF(16450), AOM_ICDF(16545), AOM_ICDF(16593),
5238 : AOM_ICDF(32768) },
5239 : {AOM_ICDF(2369), AOM_ICDF(2395), AOM_ICDF(6822), AOM_ICDF(6898),
5240 : AOM_ICDF(32768) } },
5241 : { // Band 5
5242 : {AOM_ICDF(32705), AOM_ICDF(32744), AOM_ICDF(32766), AOM_ICDF(32767),
5243 : AOM_ICDF(32768) },
5244 : {AOM_ICDF(21953), AOM_ICDF(24962), AOM_ICDF(32156), AOM_ICDF(32246),
5245 : AOM_ICDF(32768) },
5246 : {AOM_ICDF(13121), AOM_ICDF(15358), AOM_ICDF(26284), AOM_ICDF(26835),
5247 : AOM_ICDF(32768) },
5248 : {AOM_ICDF(5697), AOM_ICDF(7417), AOM_ICDF(20132), AOM_ICDF(20885),
5249 : AOM_ICDF(32768) },
5250 : {AOM_ICDF(4417), AOM_ICDF(4939), AOM_ICDF(15104), AOM_ICDF(15535),
5251 : AOM_ICDF(32768) },
5252 : {AOM_ICDF(2625), AOM_ICDF(2680), AOM_ICDF(8218), AOM_ICDF(8338),
5253 : AOM_ICDF(32768) } } },
5254 : { // Inter
5255 : { // Band 0
5256 : { AOM_ICDF(25280), AOM_ICDF(25678), AOM_ICDF(32446), AOM_ICDF(32622),
5257 : AOM_ICDF(32724), AOM_ICDF(32768) },
5258 : { AOM_ICDF(10560), AOM_ICDF(11822), AOM_ICDF(28682), AOM_ICDF(29919),
5259 : AOM_ICDF(31276), AOM_ICDF(32768) },
5260 : { AOM_ICDF(3264), AOM_ICDF(5170), AOM_ICDF(21779), AOM_ICDF(24026),
5261 : AOM_ICDF(27905), AOM_ICDF(32768) } },
5262 : { // Band 1
5263 : {AOM_ICDF(24257), AOM_ICDF(30554), AOM_ICDF(32719), AOM_ICDF(32738),
5264 : AOM_ICDF(32768) },
5265 : {AOM_ICDF(17217), AOM_ICDF(27413), AOM_ICDF(32617), AOM_ICDF(32667),
5266 : AOM_ICDF(32768) },
5267 : {AOM_ICDF(22977), AOM_ICDF(27600), AOM_ICDF(32482), AOM_ICDF(32552),
5268 : AOM_ICDF(32768) },
5269 : {AOM_ICDF(16833), AOM_ICDF(24360), AOM_ICDF(30746), AOM_ICDF(31293),
5270 : AOM_ICDF(32768) },
5271 : {AOM_ICDF(17089), AOM_ICDF(20060), AOM_ICDF(28880), AOM_ICDF(29370),
5272 : AOM_ICDF(32768) },
5273 : {AOM_ICDF(10945), AOM_ICDF(11009), AOM_ICDF(21900), AOM_ICDF(21932),
5274 : AOM_ICDF(32768) } },
5275 : { // Band 2
5276 : {AOM_ICDF(27201), AOM_ICDF(30217), AOM_ICDF(32736), AOM_ICDF(32745),
5277 : AOM_ICDF(32768) },
5278 : {AOM_ICDF(22721), AOM_ICDF(27676), AOM_ICDF(32749), AOM_ICDF(32754),
5279 : AOM_ICDF(32768) },
5280 : {AOM_ICDF(5057), AOM_ICDF(12431), AOM_ICDF(25246), AOM_ICDF(26620),
5281 : AOM_ICDF(32768) },
5282 : {AOM_ICDF(193), AOM_ICDF(321), AOM_ICDF(22016), AOM_ICDF(22048),
5283 : AOM_ICDF(32768) },
5284 : {AOM_ICDF(5313), AOM_ICDF(5363), AOM_ICDF(13839), AOM_ICDF(13894),
5285 : AOM_ICDF(32768) },
5286 : {AOM_ICDF(2625), AOM_ICDF(2652), AOM_ICDF(7276), AOM_ICDF(7351),
5287 : AOM_ICDF(32768) } },
5288 : { // Band 3
5289 : {AOM_ICDF(27713), AOM_ICDF(30739), AOM_ICDF(32759), AOM_ICDF(32762),
5290 : AOM_ICDF(32768) },
5291 : {AOM_ICDF(26177), AOM_ICDF(30430), AOM_ICDF(32756), AOM_ICDF(32760),
5292 : AOM_ICDF(32768) },
5293 : {AOM_ICDF(193), AOM_ICDF(384), AOM_ICDF(32706), AOM_ICDF(32707),
5294 : AOM_ICDF(32768) },
5295 : {AOM_ICDF(9409), AOM_ICDF(9528), AOM_ICDF(21591), AOM_ICDF(21646),
5296 : AOM_ICDF(32768) },
5297 : {AOM_ICDF(193), AOM_ICDF(194), AOM_ICDF(384), AOM_ICDF(479),
5298 : AOM_ICDF(32768) },
5299 : {AOM_ICDF(2881), AOM_ICDF(2913), AOM_ICDF(8427), AOM_ICDF(8498),
5300 : AOM_ICDF(32768) } },
5301 : { // Band 4
5302 : {AOM_ICDF(28993), AOM_ICDF(31156), AOM_ICDF(32747), AOM_ICDF(32753),
5303 : AOM_ICDF(32768) },
5304 : {AOM_ICDF(25153), AOM_ICDF(28701), AOM_ICDF(32754), AOM_ICDF(32758),
5305 : AOM_ICDF(32768) },
5306 : {AOM_ICDF(16449), AOM_ICDF(16544), AOM_ICDF(32737), AOM_ICDF(32738),
5307 : AOM_ICDF(32768) },
5308 : {AOM_ICDF(193), AOM_ICDF(321), AOM_ICDF(22016), AOM_ICDF(22048),
5309 : AOM_ICDF(32768) },
5310 : {AOM_ICDF(193), AOM_ICDF(194), AOM_ICDF(384), AOM_ICDF(479),
5311 : AOM_ICDF(32768) },
5312 : {AOM_ICDF(2753), AOM_ICDF(2789), AOM_ICDF(8909), AOM_ICDF(8979),
5313 : AOM_ICDF(32768) } },
5314 : { // Band 5
5315 : {AOM_ICDF(30785), AOM_ICDF(32088), AOM_ICDF(32765), AOM_ICDF(32766),
5316 : AOM_ICDF(32768) },
5317 : {AOM_ICDF(22977), AOM_ICDF(26623), AOM_ICDF(32750), AOM_ICDF(32754),
5318 : AOM_ICDF(32768) },
5319 : {AOM_ICDF(21953), AOM_ICDF(21954), AOM_ICDF(22017), AOM_ICDF(22049),
5320 : AOM_ICDF(32768) },
5321 : {AOM_ICDF(5697), AOM_ICDF(7486), AOM_ICDF(20238), AOM_ICDF(21009),
5322 : AOM_ICDF(32768) },
5323 : {AOM_ICDF(4929), AOM_ICDF(5579), AOM_ICDF(16402), AOM_ICDF(16866),
5324 : AOM_ICDF(32768) },
5325 : {AOM_ICDF(3009), AOM_ICDF(3246), AOM_ICDF(10158), AOM_ICDF(10533),
5326 : AOM_ICDF(32768) } } } }
5327 : };
5328 :
5329 : /* clang-format on */
5330 :
5331 0 : static void extend_to_full_distribution(aom_prob *probs, aom_prob p) {
5332 0 : assert(p != 0);
5333 0 : memcpy(probs, av1_pareto8_full[p - 1], MODEL_NODES * sizeof(aom_prob));
5334 0 : }
5335 :
5336 0 : void av1_model_to_full_probs(const aom_prob *model, aom_prob *full) {
5337 0 : if (full != model)
5338 0 : memcpy(full, model, sizeof(aom_prob) * UNCONSTRAINED_NODES);
5339 0 : extend_to_full_distribution(&full[UNCONSTRAINED_NODES], model[PIVOT_NODE]);
5340 0 : }
5341 :
5342 0 : static void build_tail_cdfs(aom_cdf_prob cdf_tail[CDF_SIZE(ENTROPY_TOKENS)],
5343 : aom_cdf_prob cdf_head[CDF_SIZE(ENTROPY_TOKENS)],
5344 : int band_zero) {
5345 : int probNZ, prob1, prob_idx, i;
5346 : int phead[HEAD_TOKENS + 1], sum;
5347 0 : const int is_dc = !!band_zero;
5348 : aom_cdf_prob prev_cdf;
5349 0 : prev_cdf = 0;
5350 0 : for (i = 0; i < HEAD_TOKENS + is_dc; ++i) {
5351 0 : phead[i] = AOM_ICDF(cdf_head[i]) - prev_cdf;
5352 0 : prev_cdf = AOM_ICDF(cdf_head[i]);
5353 : }
5354 : // Do the tail
5355 0 : probNZ = CDF_PROB_TOP - phead[ZERO_TOKEN + is_dc] - (is_dc ? phead[0] : 0);
5356 0 : prob1 = phead[is_dc + ONE_TOKEN_EOB] + phead[is_dc + ONE_TOKEN_NEOB];
5357 0 : prob_idx =
5358 0 : AOMMIN(COEFF_PROB_MODELS - 1, AOMMAX(0, ((256 * prob1) / probNZ) - 1));
5359 :
5360 0 : sum = 0;
5361 0 : for (i = 0; i < TAIL_TOKENS; ++i) {
5362 0 : sum += av1_pareto8_tail_probs[prob_idx][i];
5363 0 : cdf_tail[i] = AOM_ICDF(sum);
5364 : }
5365 0 : }
5366 :
5367 0 : static void build_head_cdfs(const aom_prob *pdf_model,
5368 : const aom_prob *blockz_model,
5369 : aom_cdf_prob cdf_head[ENTROPY_TOKENS + 1]) {
5370 : int i, p, p1, p2, phead[6], prob_NZ, prob_EOB_1, prob_EOB_2p, prob_NEOB_1,
5371 : prob_NEOB_2p;
5372 : int prob8_blocknz;
5373 : // We have the first coefficient position and so an extended CDF
5374 0 : const int is_dc = blockz_model != NULL;
5375 0 : const int last_head_val = HEAD_TOKENS - 1 + is_dc;
5376 :
5377 0 : assert(pdf_model != NULL);
5378 0 : assert(pdf_model[2] != 0);
5379 :
5380 : /* FIXME: maintain true CDF counts. */
5381 :
5382 : /* Values are 0=BLOCK_ZERO 1=ZERO_TOKEN, 2=ONE_TOKEN_EOB
5383 : 3=ONE_TOKEN_NEOB, 4=TWO_TOKEN_PLUS_EOB, 5=TWO_TOKEN_PLUS_NEOB
5384 : */
5385 : // Block zero probability
5386 0 : if (is_dc) {
5387 0 : phead[0] =
5388 0 : ((*blockz_model) << (CDF_PROB_BITS - 8)) + (1 << (CDF_PROB_BITS - 9));
5389 0 : phead[0] = AOMMIN(CDF_PROB_TOP - (HEAD_TOKENS + 1), AOMMAX(1, phead[0]));
5390 : }
5391 :
5392 : // Will scale the remaining probabilities by the probability of the block
5393 : // being non-zero
5394 0 : prob8_blocknz = is_dc ? (256 - *blockz_model) : 256;
5395 :
5396 : // Probability of zero
5397 0 : phead[is_dc + ZERO_TOKEN] =
5398 0 : (pdf_model[1] << (CDF_PROB_BITS - 8)) + (1 << (CDF_PROB_BITS - 9));
5399 :
5400 : // Will scale the non-zero values
5401 0 : prob_NZ = CDF_PROB_TOP - phead[is_dc + ZERO_TOKEN];
5402 :
5403 : // Will scale the EOBs by the probability of and EOB_TOKEN ..
5404 0 : prob_EOB_1 =
5405 0 : (pdf_model[0] << (CDF_PROB_BITS - 8)) + (1 << (CDF_PROB_BITS - 9));
5406 : // .. use a lower probability of EOB for larger values
5407 0 : prob_EOB_2p = prob_EOB_1 / 2;
5408 :
5409 0 : prob_NEOB_1 = CDF_PROB_TOP - prob_EOB_1;
5410 0 : prob_NEOB_2p = CDF_PROB_TOP - prob_EOB_2p;
5411 0 : if (prob_NZ == 0 || prob_NZ == CDF_PROB_TOP) abort();
5412 0 : if (prob_EOB_1 == 0 || prob_EOB_1 == CDF_PROB_TOP) abort();
5413 0 : if (prob_EOB_2p == 0 || prob_EOB_2p == CDF_PROB_TOP) abort();
5414 :
5415 : // ONE_CONTEXT_NODE prob
5416 0 : p = (pdf_model[2] << (CDF_PROB_BITS - 8)) + (1 << (CDF_PROB_BITS - 9));
5417 : // Scale by the non-zero factor to get the probability of token = 1
5418 0 : p1 = ROUND_POWER_OF_TWO(prob_NZ * p, 15);
5419 :
5420 : // Scale by the EOB factors
5421 0 : phead[is_dc + ONE_TOKEN_EOB] = ROUND_POWER_OF_TWO(p1 * prob_EOB_1, 15);
5422 0 : phead[is_dc + ONE_TOKEN_NEOB] = ROUND_POWER_OF_TWO(p1 * prob_NEOB_1, 15);
5423 :
5424 : // Probability token is 2 or more
5425 0 : p2 = CDF_PROB_TOP - p1 - phead[is_dc + ZERO_TOKEN];
5426 :
5427 0 : phead[is_dc + TWO_TOKEN_PLUS_EOB] = ROUND_POWER_OF_TWO(p2 * prob_EOB_2p, 15);
5428 0 : phead[is_dc + TWO_TOKEN_PLUS_NEOB] =
5429 0 : ROUND_POWER_OF_TWO(p2 * prob_NEOB_2p, 15);
5430 :
5431 : // Now use block non-zerp prob to scale the values
5432 0 : for (i = is_dc; i < last_head_val; ++i) {
5433 0 : phead[i] = (prob8_blocknz * phead[i] + 128) >> 8;
5434 : }
5435 :
5436 0 : for (i = 0; i < last_head_val; ++i) {
5437 : int c0;
5438 0 : c0 = i > 0 ? AOM_ICDF(cdf_head[i - 1]) : 0;
5439 0 : p = AOMMAX(1, AOMMIN(CDF_PROB_TOP - (last_head_val - i) - c0, phead[i]));
5440 0 : cdf_head[i] = AOM_ICDF(c0 + p);
5441 : }
5442 0 : cdf_head[last_head_val] = AOM_ICDF(CDF_PROB_TOP);
5443 0 : }
5444 :
5445 0 : static void av1_default_coef_cdfs(FRAME_CONTEXT *fc) {
5446 : int i, j, k, l;
5447 0 : for (i = 0; i < PLANE_TYPES; ++i)
5448 0 : for (j = 0; j < REF_TYPES; ++j)
5449 0 : for (k = 0; k < COEF_BANDS; ++k)
5450 0 : for (l = 0; l < BAND_COEFF_CONTEXTS(k); ++l) {
5451 : #if CONFIG_CHROMA_2X2
5452 : av1_copy(fc->coef_head_cdfs[TX_2X2][i][j][k][l],
5453 : default_coef_head_cdf_4x4[i][j][k][l]);
5454 : #endif
5455 0 : av1_copy(fc->coef_head_cdfs[TX_4X4][i][j][k][l],
5456 : default_coef_head_cdf_4x4[i][j][k][l]);
5457 0 : av1_copy(fc->coef_head_cdfs[TX_8X8][i][j][k][l],
5458 : default_coef_head_cdf_8x8[i][j][k][l]);
5459 0 : av1_copy(fc->coef_head_cdfs[TX_16X16][i][j][k][l],
5460 : default_coef_head_cdf_16x16[i][j][k][l]);
5461 0 : av1_copy(fc->coef_head_cdfs[TX_32X32][i][j][k][l],
5462 : default_coef_head_cdf_32x32[i][j][k][l]);
5463 : #if CONFIG_TX64X64
5464 : av1_copy(fc->coef_head_cdfs[TX_64X64][i][j][k][l],
5465 : default_coef_head_cdf_32x32[i][j][k][l]);
5466 : #endif
5467 : }
5468 0 : }
5469 :
5470 0 : void av1_coef_head_cdfs(FRAME_CONTEXT *fc) {
5471 : TX_SIZE t;
5472 : int i, j, k, l;
5473 0 : for (t = 0; t < TX_SIZES; ++t)
5474 0 : for (i = 0; i < PLANE_TYPES; ++i)
5475 0 : for (j = 0; j < REF_TYPES; ++j)
5476 0 : for (k = 0; k < COEF_BANDS; ++k)
5477 0 : for (l = 0; l < BAND_COEFF_CONTEXTS(k); ++l) {
5478 0 : build_head_cdfs(fc->coef_probs[t][i][j][k][l],
5479 0 : k == 0 ? &fc->blockzero_probs[t][i][j][l] : NULL,
5480 0 : fc->coef_head_cdfs[t][i][j][k][l]);
5481 : }
5482 0 : }
5483 :
5484 0 : void av1_coef_pareto_cdfs(FRAME_CONTEXT *fc) {
5485 : /* Build the tail based on a Pareto distribution */
5486 : TX_SIZE t;
5487 : int i, j, k, l;
5488 0 : for (t = 0; t < TX_SIZES; ++t)
5489 0 : for (i = 0; i < PLANE_TYPES; ++i)
5490 0 : for (j = 0; j < REF_TYPES; ++j)
5491 0 : for (k = 0; k < COEF_BANDS; ++k)
5492 0 : for (l = 0; l < BAND_COEFF_CONTEXTS(k); ++l)
5493 0 : build_tail_cdfs(fc->coef_tail_cdfs[t][i][j][k][l],
5494 0 : fc->coef_head_cdfs[t][i][j][k][l], k == 0);
5495 0 : }
5496 :
5497 0 : void av1_default_coef_probs(AV1_COMMON *cm) {
5498 : #if CONFIG_Q_ADAPT_PROBS
5499 : const int index = AOMMIN(
5500 : ROUND_POWER_OF_TWO(cm->base_qindex, 8 - QCTX_BIN_BITS), QCTX_BINS - 1);
5501 : av1_copy(cm->fc->coef_probs, default_qctx_coef_probs[index]);
5502 : #else
5503 : #if CONFIG_CHROMA_2X2
5504 : av1_copy(cm->fc->coef_probs[TX_2X2], default_coef_probs_4x4);
5505 : #endif
5506 0 : av1_copy(cm->fc->coef_probs[TX_4X4], default_coef_probs_4x4);
5507 0 : av1_copy(cm->fc->coef_probs[TX_8X8], default_coef_probs_8x8);
5508 0 : av1_copy(cm->fc->coef_probs[TX_16X16], default_coef_probs_16x16);
5509 0 : av1_copy(cm->fc->coef_probs[TX_32X32], default_coef_probs_32x32);
5510 : #if CONFIG_TX64X64
5511 : av1_copy(cm->fc->coef_probs[TX_64X64], default_coef_probs_64x64);
5512 : #endif // CONFIG_TX64X64
5513 : #endif // CONFIG_Q_ADAPT_PROBS
5514 0 : av1_copy(cm->fc->blockzero_probs, av1_default_blockzero_probs);
5515 : /* Load the head tokens */
5516 0 : av1_default_coef_cdfs(cm->fc);
5517 0 : av1_coef_pareto_cdfs(cm->fc);
5518 0 : }
5519 :
5520 : #if !CONFIG_LV_MAP
5521 0 : static void adapt_coef_probs(AV1_COMMON *cm, TX_SIZE tx_size,
5522 : unsigned int count_sat,
5523 : unsigned int update_factor) {
5524 0 : const FRAME_CONTEXT *pre_fc = cm->pre_fc;
5525 0 : av1_coeff_probs_model *const probs = cm->fc->coef_probs[tx_size];
5526 0 : const av1_coeff_probs_model *const pre_probs = pre_fc->coef_probs[tx_size];
5527 0 : const av1_coeff_count_model *const counts =
5528 0 : (const av1_coeff_count_model *)cm->counts.coef[tx_size];
5529 0 : const unsigned int(*eob_counts)[REF_TYPES][COEF_BANDS][COEFF_CONTEXTS] =
5530 : (const unsigned int(*)[REF_TYPES][COEF_BANDS][COEFF_CONTEXTS])
5531 0 : cm->counts.eob_branch[tx_size];
5532 0 : const av1_blockz_probs_model *const pre_blockz_probs =
5533 0 : pre_fc->blockzero_probs[tx_size];
5534 0 : av1_blockz_probs_model *const blockz_probs = cm->fc->blockzero_probs[tx_size];
5535 0 : const av1_blockz_count_model *const blockz_counts =
5536 0 : (const av1_blockz_count_model *)&cm->counts.blockz_count[tx_size][0];
5537 : int i, j, k, l, m;
5538 : #if CONFIG_RECT_TX
5539 0 : assert(!is_rect_tx(tx_size));
5540 : #endif // CONFIG_RECT_TX
5541 :
5542 0 : for (i = 0; i < PLANE_TYPES; ++i)
5543 0 : for (j = 0; j < REF_TYPES; ++j)
5544 0 : for (k = 0; k < COEF_BANDS; ++k)
5545 0 : for (l = 0; l < BAND_COEFF_CONTEXTS(k); ++l) {
5546 0 : const int n0 = counts[i][j][k][l][ZERO_TOKEN];
5547 0 : const int n1 = counts[i][j][k][l][ONE_TOKEN];
5548 0 : const int n2 = counts[i][j][k][l][TWO_TOKEN];
5549 0 : const int neob = counts[i][j][k][l][EOB_MODEL_TOKEN];
5550 0 : const unsigned int branch_ct[UNCONSTRAINED_NODES][2] = {
5551 0 : { neob, eob_counts[i][j][k][l] - neob }, { n0, n1 + n2 }, { n1, n2 }
5552 : };
5553 0 : for (m = 0; m < UNCONSTRAINED_NODES; ++m)
5554 0 : probs[i][j][k][l][m] =
5555 0 : av1_merge_probs(pre_probs[i][j][k][l][m], branch_ct[m],
5556 : count_sat, update_factor);
5557 : }
5558 :
5559 0 : for (i = 0; i < PLANE_TYPES; ++i) {
5560 0 : for (j = 0; j < REF_TYPES; ++j) {
5561 0 : for (k = 0; k < BLOCKZ_CONTEXTS; ++k) {
5562 0 : const int n0 = blockz_counts[i][j][k][0];
5563 0 : const int n1 = blockz_counts[i][j][k][1];
5564 0 : const unsigned int branch_ct[2] = { n0, n1 };
5565 0 : blockz_probs[i][j][k] = av1_merge_probs(
5566 0 : pre_blockz_probs[i][j][k], branch_ct, count_sat, update_factor);
5567 : }
5568 : }
5569 : }
5570 0 : }
5571 : #endif // !CONFIG_LV_MAP
5572 :
5573 0 : void av1_adapt_coef_probs(AV1_COMMON *cm) {
5574 : unsigned int count_sat, update_factor;
5575 :
5576 0 : if (!frame_is_intra_only(cm) && cm->last_frame_type == KEY_FRAME) {
5577 0 : update_factor = COEF_MAX_UPDATE_FACTOR_AFTER_KEY; /* adapt quickly */
5578 0 : count_sat = COEF_COUNT_SAT_AFTER_KEY;
5579 : } else {
5580 0 : update_factor = COEF_MAX_UPDATE_FACTOR;
5581 0 : count_sat = COEF_COUNT_SAT;
5582 : }
5583 :
5584 : #if CONFIG_LV_MAP
5585 : av1_adapt_txb_probs(cm, count_sat, update_factor);
5586 : #else
5587 : TX_SIZE tx_size;
5588 0 : for (tx_size = 0; tx_size < TX_SIZES; tx_size++)
5589 0 : adapt_coef_probs(cm, tx_size, count_sat, update_factor);
5590 : #endif
5591 0 : }
5592 :
5593 : #if CONFIG_EC_ADAPT
5594 0 : static void av1_average_cdf(aom_cdf_prob *cdf_ptr[], aom_cdf_prob *fc_cdf_ptr,
5595 : int cdf_size, const int num_tiles) {
5596 : int i;
5597 0 : for (i = 0; i < cdf_size;) {
5598 : do {
5599 0 : int sum = 0;
5600 : int j;
5601 0 : assert(i < cdf_size);
5602 0 : for (j = 0; j < num_tiles; ++j) sum += AOM_ICDF(cdf_ptr[j][i]);
5603 0 : fc_cdf_ptr[i] = AOM_ICDF(sum / num_tiles);
5604 0 : } while (fc_cdf_ptr[i++] != AOM_ICDF(CDF_PROB_TOP));
5605 : // Zero symbol counts for the next frame
5606 0 : assert(i < cdf_size);
5607 0 : fc_cdf_ptr[i++] = 0;
5608 : // Skip trailing zeros until the start of the next CDF.
5609 0 : for (; i < cdf_size && fc_cdf_ptr[i] == 0; ++i) {
5610 : }
5611 : }
5612 0 : }
5613 :
5614 : #define AVERAGE_TILE_CDFS(cname) \
5615 : for (i = 0; i < num_tiles; ++i) \
5616 : cdf_ptr[i] = (aom_cdf_prob *)&ec_ctxs[i]->cname; \
5617 : fc_cdf_ptr = (aom_cdf_prob *)&fc->cname; \
5618 : cdf_size = (int)sizeof(fc->cname) / sizeof(aom_cdf_prob); \
5619 : av1_average_cdf(cdf_ptr, fc_cdf_ptr, cdf_size, num_tiles);
5620 :
5621 0 : void av1_average_tile_coef_cdfs(FRAME_CONTEXT *fc, FRAME_CONTEXT *ec_ctxs[],
5622 : aom_cdf_prob *cdf_ptr[], int num_tiles) {
5623 : int i, cdf_size;
5624 :
5625 : aom_cdf_prob *fc_cdf_ptr;
5626 :
5627 0 : AVERAGE_TILE_CDFS(coef_head_cdfs)
5628 0 : AVERAGE_TILE_CDFS(coef_tail_cdfs)
5629 0 : }
5630 :
5631 0 : void av1_average_tile_mv_cdfs(FRAME_CONTEXT *fc, FRAME_CONTEXT *ec_ctxs[],
5632 : aom_cdf_prob *cdf_ptr[], int num_tiles) {
5633 : int i, k, cdf_size;
5634 :
5635 : aom_cdf_prob *fc_cdf_ptr;
5636 :
5637 : int j;
5638 0 : for (j = 0; j < NMV_CONTEXTS; ++j) {
5639 0 : AVERAGE_TILE_CDFS(nmvc[j].joint_cdf)
5640 :
5641 0 : for (k = 0; k < 2; ++k) {
5642 0 : AVERAGE_TILE_CDFS(nmvc[j].comps[k].class_cdf);
5643 0 : AVERAGE_TILE_CDFS(nmvc[j].comps[k].class0_fp_cdf);
5644 0 : AVERAGE_TILE_CDFS(nmvc[j].comps[k].fp_cdf);
5645 : }
5646 : }
5647 0 : }
5648 :
5649 0 : void av1_average_tile_intra_cdfs(FRAME_CONTEXT *fc, FRAME_CONTEXT *ec_ctxs[],
5650 : aom_cdf_prob *cdf_ptr[], int num_tiles) {
5651 : int i, cdf_size;
5652 :
5653 : aom_cdf_prob *fc_cdf_ptr;
5654 :
5655 0 : AVERAGE_TILE_CDFS(tx_size_cdf);
5656 :
5657 : #if CONFIG_VAR_TX
5658 : // FIXME: txfm_partition probs
5659 : #endif
5660 :
5661 : // FIXME: skip probs
5662 :
5663 0 : AVERAGE_TILE_CDFS(intra_ext_tx_cdf)
5664 0 : AVERAGE_TILE_CDFS(inter_ext_tx_cdf);
5665 :
5666 0 : AVERAGE_TILE_CDFS(seg.tree_cdf)
5667 0 : AVERAGE_TILE_CDFS(uv_mode_cdf)
5668 :
5669 0 : AVERAGE_TILE_CDFS(partition_cdf)
5670 :
5671 : #if CONFIG_DELTA_Q
5672 0 : AVERAGE_TILE_CDFS(delta_q_cdf)
5673 : #if CONFIG_EXT_DELTA_Q
5674 0 : AVERAGE_TILE_CDFS(delta_lf_cdf)
5675 : #endif
5676 : #endif
5677 : #if CONFIG_EXT_INTRA && CONFIG_INTRA_INTERP
5678 : AVERAGE_TILE_CDFS(intra_filter_cdf)
5679 : #endif // CONFIG_EXT_INTRA && CONFIG_INTRA_INTERP
5680 0 : }
5681 :
5682 0 : void av1_average_tile_inter_cdfs(AV1_COMMON *cm, FRAME_CONTEXT *fc,
5683 : FRAME_CONTEXT *ec_ctxs[],
5684 : aom_cdf_prob *cdf_ptr[], int num_tiles) {
5685 : int i, cdf_size;
5686 :
5687 : aom_cdf_prob *fc_cdf_ptr;
5688 :
5689 : // FIXME: comp_inter_cdf not defined
5690 :
5691 : // FIXME: comp_ref_cdf and comp_bwd_ref not defined
5692 :
5693 : // FIXME: single_ref_cdf not defined
5694 :
5695 : // FIXME: cdfs not defined for newmv_mode, zeromv_mode, drl_mode, new2mv_mode
5696 :
5697 : // FIXME: cdfs not defined for motion_mode_prob, obmc_prob
5698 :
5699 : // FIXME: cdfs not defined for super_tx
5700 :
5701 : // FIXME: CONFIG_EXT_INTER cdfs not defined for inter_compound_mode,
5702 : // interintra_mode etc
5703 :
5704 0 : AVERAGE_TILE_CDFS(y_mode_cdf)
5705 :
5706 0 : if (cm->interp_filter == SWITCHABLE) {
5707 0 : AVERAGE_TILE_CDFS(switchable_interp_cdf)
5708 : }
5709 0 : }
5710 :
5711 : #if CONFIG_PVQ
5712 : // Averaging PVQ's expected values for symbol coding
5713 : static void av1_average_pvq_ex(int *cxt_ptr[], int *fc_cxt_ptr, int cxt_size,
5714 : const int num_tiles) {
5715 : int i, j;
5716 : for (i = 0; i < cxt_size; ++i) {
5717 : int sum = 0;
5718 : for (j = 0; j < num_tiles; ++j) sum += cxt_ptr[j][i];
5719 : fc_cxt_ptr[i] = sum / num_tiles;
5720 : }
5721 : }
5722 :
5723 : #define AVERAGE_TILE_PVQ_EX(cname) \
5724 : for (i = 0; i < num_tiles; ++i) cxt_ptr[i] = (int *)&ec_ctxs[i]->cname; \
5725 : fc_cxt_ptr = (int *)&fc->cname; \
5726 : cxt_size = (int)sizeof(fc->cname) / sizeof(int); \
5727 : av1_average_pvq_ex(cxt_ptr, fc_cxt_ptr, cxt_size, num_tiles);
5728 :
5729 : void av1_default_pvq_probs(AV1_COMMON *cm) {
5730 : od_adapt_ctx *adapt = &cm->fc->pvq_context;
5731 :
5732 : // Init with flat probabilities.
5733 : od_adapt_ctx_reset(adapt, 0);
5734 :
5735 : // TODO(yushin): Prepare offline cdf and context table for PVQ,
5736 : // i.e. od_adapt_ctx, then load them from table,
5737 : // for example od_adapt_ctx default_pvq_context.
5738 : // Then do sth like this:
5739 : // av1_copy(cm->fc->pvq_context, default_pvq_context);
5740 : }
5741 :
5742 : void av1_average_tile_pvq_cdfs(FRAME_CONTEXT *fc, FRAME_CONTEXT *ec_ctxs[],
5743 : const int num_tiles) {
5744 : int i, j, cdf_size, cxt_size;
5745 :
5746 : aom_cdf_prob *cdf_ptr[MAX_TILE_ROWS * MAX_TILE_COLS];
5747 : aom_cdf_prob *fc_cdf_ptr;
5748 : int *cxt_ptr[MAX_TILE_ROWS * MAX_TILE_COLS];
5749 : int *fc_cxt_ptr;
5750 :
5751 : AVERAGE_TILE_PVQ_EX(pvq_context.ex_dc)
5752 : AVERAGE_TILE_PVQ_EX(pvq_context.ex_g)
5753 :
5754 : for (j = 0; j < OD_NPLANES_MAX; j++) {
5755 : AVERAGE_TILE_CDFS(pvq_context.model_dc[j].cdf)
5756 : }
5757 :
5758 : AVERAGE_TILE_CDFS(pvq_context.skip_cdf)
5759 :
5760 : AVERAGE_TILE_PVQ_EX(pvq_context.pvq.pvq_codeword_ctx.pvq_adapt)
5761 : AVERAGE_TILE_CDFS(pvq_context.pvq.pvq_codeword_ctx.pvq_k1_cdf)
5762 : AVERAGE_TILE_CDFS(pvq_context.pvq.pvq_codeword_ctx.pvq_split_cdf)
5763 :
5764 : for (j = 0; j < 3; j++) {
5765 : AVERAGE_TILE_CDFS(pvq_context.pvq.pvq_param_model[j].cdf)
5766 : }
5767 :
5768 : AVERAGE_TILE_PVQ_EX(pvq_context.pvq.pvq_ext)
5769 : AVERAGE_TILE_PVQ_EX(pvq_context.pvq.pvq_exg)
5770 : AVERAGE_TILE_CDFS(pvq_context.pvq.pvq_gaintheta_cdf)
5771 : AVERAGE_TILE_CDFS(pvq_context.pvq.pvq_skip_dir_cdf)
5772 : }
5773 : #endif // CONFIG_PVQ
5774 : #endif // CONFIG_EC_ADAPT
|