OSDN Git Service

57490da0ba33f910e066fb8a9f144fa5ef1e6b80
[android-x86/hardware-intel-common-vaapi.git] / src / gen9_avc_const_def.c
1 /*
2  * Copyright @ 2017 Intel Corporation
3  *
4  * Permission is hereby granted, free of charge, to any person obtaining a
5  * copy of this software and associated documentation files (the
6  * "Software"), to deal in the Software without restriction, including
7  * without limitation the rights to use, copy, modify, merge, publish,
8  * distribute, sub license, and/or sell copies of the Software, and to
9  * permit persons to whom the Software is furnished to do so, subject to
10  * the following conditions:
11  *
12  * The above copyright notice and this permission notice (including the
13  * next paragraph) shall be included in all copies or substantial portions
14  * of the Software.
15  *
16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
17  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
19  * IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
20  * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
21  * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
22  * SOFTWAR OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23  *
24  * Authors:
25  *    Pengfei Qu <Pengfei.qu@intel.com>
26  *
27  */
28
29
30 #include "gen9_avc_const_def.h"
31
32 /* Gen9  */
33 /*
34 init const table for scaling/sfd/curbe
35 */
36
37 const char gen9_avc_sfd_cost_table_p_frame[AVC_QP_MAX] =
38 {
39     44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 44, 60, 60, 60, 60,
40     73, 73, 73, 76, 76, 76, 88, 89, 89, 91, 92, 93, 104, 104, 106, 107, 108, 109, 120,
41     120, 122, 123, 124, 125, 136, 136, 138, 139, 140, 141, 143, 143
42 };
43
44 const char gen9_avc_sfd_cost_table_b_frame[AVC_QP_MAX] =
45 {
46     57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 57, 73, 73, 73, 73,
47     77, 77, 77, 89, 89, 89, 91, 93, 93, 95, 105, 106, 107, 108, 110, 111, 121, 122,
48     123, 124, 125, 127, 137, 138, 139, 140, 142, 143, 143, 143, 143, 143
49 };
50
51 /*
52 MBBRC const: mv mode cost  ,skip value,scaling factor
53 */
54 const unsigned int gen9_avc_old_intra_mode_cost[AVC_QP_MAX] =
55 {
56     0x1e03000a, 0x1e03000a, 0x1e03000a, 0x1e03000a, 0x1e03000a, 0x1e03000a, 0x1e03000a, 0x1e03000a,
57     0x1e03000a, 0x1e03000a, 0x1e03000a, 0x1e03000a, 0x1e03000a, 0x1e03000a, 0x1e03000a, 0x1e03000a,
58     0x2e06001a, 0x2e06001a, 0x2e06001a, 0x2e06001a, 0x3b09001f, 0x3b09001f, 0x3b09001f, 0x3e0c002a,
59     0x3e0c002a, 0x3e0c002a, 0x490f002d, 0x4b19002f, 0x4b19002f, 0x4c1b0039, 0x4e1c003a, 0x581e003b,
60     0x591f003d, 0x5a28003e, 0x5b2a0048, 0x5c2b0049, 0x5e2c004a, 0x682e004b, 0x692f004d, 0x6a39004e,
61     0x6b390058, 0x6d3b0059, 0x6e3c005a, 0x783e005b, 0x793f005d, 0x7a48005e, 0x7b4a0068, 0x7c4b0069,
62     0x7e4c006a, 0x884e006b, 0x894f006d, 0x8a59006e
63 };
64
65 const unsigned int gen9_avc_mv_cost_p_skip_adjustment[AVC_QP_MAX] =
66 {
67     0x09060500, 0x09060500, 0x09060500, 0x09060500, 0x09060500, 0x09060500, 0x09060500, 0x09060500,
68     0x09060500, 0x09060500, 0x09060500, 0x09060500, 0x09060500, 0x09060500, 0x09060500, 0x09060500,
69     0x190c0a00, 0x190c0a00, 0x190c0a00, 0x190c0a00, 0x1e190f00, 0x1e190f00, 0x1e190f00, 0x291c1a00,
70     0x291c1a00, 0x291c1a00, 0x2b1f1d00, 0x2e291f00, 0x2e291f00, 0x382b2900, 0x392c2a00, 0x3a2e2b00,
71     0x3b2f2d00, 0x3c382e00, 0x3f3a3800, 0x483b3900, 0x493c3a00, 0x4a3e3b00, 0x4b3f3d00, 0x4d493e00,
72     0x4e494800, 0x584b4900, 0x594c4a00, 0x5a4e4b00, 0x5b4f4d00, 0x5d584e00, 0x5e5a5800, 0x685b5900,
73     0x695c5a00, 0x6a5e5b00, 0x6b5f5d00, 0x6d695e00
74 };
75
76 const unsigned short gen9_avc_skip_value_p[2][2][64] =
77 {
78     {
79         // Block Based Skip = 0 and Transform Flag = 0
80         {
81             0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0006,
82             0x0006, 0x000c, 0x000c, 0x0015, 0x0015, 0x0021, 0x0021, 0x0033,
83             0x0033, 0x004b, 0x004b, 0x0069, 0x0069, 0x0096, 0x0096, 0x00cc,
84             0x00cc, 0x0111, 0x0111, 0x0165, 0x0165, 0x01cb, 0x01cb, 0x0246,
85             0x0246, 0x02d3, 0x02d3, 0x0378, 0x0378, 0x0438, 0x0438, 0x0510,
86             0x0510, 0x0603, 0x0603, 0x0714, 0x0714, 0x0846, 0x0846, 0x0999,
87             0x0999, 0x0b10, 0x0b10, 0x0c3c, 0x0000, 0x0000, 0x0000, 0x0000,
88             0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
89         },
90
91         // Block Based Skip = 0 and Transform Flag = 1
92         {
93             0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0006,
94             0x0006, 0x000c, 0x000c, 0x0015, 0x0015, 0x0021, 0x0021, 0x0033,
95             0x0033, 0x004b, 0x004b, 0x0069, 0x0069, 0x0096, 0x0096, 0x00cc,
96             0x00cc, 0x0111, 0x0111, 0x0165, 0x0165, 0x01cb, 0x01cb, 0x0246,
97             0x0246, 0x02d3, 0x02d3, 0x0378, 0x0378, 0x0438, 0x0438, 0x0510,
98             0x0510, 0x0603, 0x0603, 0x0714, 0x0714, 0x0846, 0x0846, 0x0999,
99             0x0999, 0x0b10, 0x0b10, 0x0c3c, 0x0000, 0x0000, 0x0000, 0x0000,
100             0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
101         }
102     },
103     {
104         // Block Based Skip = 1 and Transform Flag = 0
105         {
106             0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0001,
107             0x0001, 0x0002, 0x0002, 0x0003, 0x0003, 0x0005, 0x0005, 0x0008,
108             0x0008, 0x000c, 0x000c, 0x0011, 0x0011, 0x0019, 0x0019, 0x0022,
109             0x0022, 0x002d, 0x002d, 0x003b, 0x003b, 0x004c, 0x004c, 0x0061,
110             0x0061, 0x0078, 0x0078, 0x0094, 0x0094, 0x00b4, 0x00b4, 0x00d8,
111             0x00d8, 0x0100, 0x0100, 0x012e, 0x012e, 0x0161, 0x0161, 0x0199,
112             0x0199, 0x01d8, 0x01d8, 0x020a, 0x0000, 0x0000, 0x0000, 0x0000,
113             0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
114         },
115
116         // Block Based Skip = 1 and Transform Flag = 1
117         {
118             0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0002,
119             0x0002, 0x0004, 0x0004, 0x0007, 0x0007, 0x000b, 0x000b, 0x0011,
120             0x0011, 0x0019, 0x0019, 0x0023, 0x0023, 0x0032, 0x0032, 0x0044,
121             0x0044, 0x005b, 0x005b, 0x0077, 0x0077, 0x0099, 0x0099, 0x00c2,
122             0x00c2, 0x00f1, 0x00f1, 0x0128, 0x0128, 0x0168, 0x0168, 0x01b0,
123             0x01b0, 0x0201, 0x0201, 0x025c, 0x025c, 0x02c2, 0x02c2, 0x0333,
124             0x0333, 0x03b0, 0x03b0, 0x0414, 0x0000, 0x0000, 0x0000, 0x0000,
125             0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
126         }
127     }
128 };
129
130 const unsigned short gen9_avc_skip_value_b[2][2][64] =
131 {
132     {
133         // Block Based Skip = 0 and Transform Flag = 0
134         {
135             0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0024,
136             0x0024, 0x0060, 0x0060, 0x0099, 0x0099, 0x00cf, 0x00cf, 0x0105,
137             0x0105, 0x0141, 0x0141, 0x0183, 0x0183, 0x01ce, 0x01ce, 0x0228,
138             0x0228, 0x0291, 0x0291, 0x030c, 0x030c, 0x039f, 0x039f, 0x0447,
139             0x0447, 0x050d, 0x050d, 0x05f1, 0x05f1, 0x06f6, 0x06f6, 0x0822,
140             0x0822, 0x0972, 0x0972, 0x0aef, 0x0aef, 0x0c96, 0x0c96, 0x0e70,
141             0x0e70, 0x107a, 0x107a, 0x1284, 0x0000, 0x0000, 0x0000, 0x0000,
142             0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
143         },
144         // Block Based Skip = 0 and Transform Flag = 1
145         {
146             0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0024,
147             0x0024, 0x0060, 0x0060, 0x0099, 0x0099, 0x00cf, 0x00cf, 0x0105,
148             0x0105, 0x0141, 0x0141, 0x0183, 0x0183, 0x01ce, 0x01ce, 0x0228,
149             0x0228, 0x0291, 0x0291, 0x030c, 0x030c, 0x039f, 0x039f, 0x0447,
150             0x0447, 0x050d, 0x050d, 0x05f1, 0x05f1, 0x06f6, 0x06f6, 0x0822,
151             0x0822, 0x0972, 0x0972, 0x0aef, 0x0aef, 0x0c96, 0x0c96, 0x0e70,
152             0x0e70, 0x107a, 0x107a, 0x1284, 0x0000, 0x0000, 0x0000, 0x0000,
153             0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
154         }
155     },
156     {
157         // Block Based Skip = 1 and Transform Flag = 0
158         {
159             0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0006,
160             0x0006, 0x0010, 0x0010, 0x0019, 0x0019, 0x0022, 0x0022, 0x002b,
161             0x002b, 0x0035, 0x0035, 0x0040, 0x0040, 0x004d, 0x004d, 0x005c,
162             0x005c, 0x006d, 0x006d, 0x0082, 0x0082, 0x009a, 0x009a, 0x00b6,
163             0x00b6, 0x00d7, 0x00d7, 0x00fd, 0x00fd, 0x0129, 0x0129, 0x015b,
164             0x015b, 0x0193, 0x0193, 0x01d2, 0x01d2, 0x0219, 0x0219, 0x0268,
165             0x0268, 0x02bf, 0x02bf, 0x0316, 0x0000, 0x0000, 0x0000, 0x0000,
166             0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
167         },
168         // Block Based Skip = 1 and Transform Flag = 1
169         {
170             0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x000c,
171             0x000c, 0x0020, 0x0020, 0x0033, 0x0033, 0x0045, 0x0045, 0x0057,
172             0x0057, 0x006b, 0x006b, 0x0081, 0x0081, 0x009a, 0x009a, 0x00b8,
173             0x00b8, 0x00db, 0x00db, 0x0104, 0x0104, 0x0135, 0x0135, 0x016d,
174             0x016d, 0x01af, 0x01af, 0x01fb, 0x01fb, 0x0252, 0x0252, 0x02b6,
175             0x02b6, 0x0326, 0x0326, 0x03a5, 0x03a5, 0x0432, 0x0432, 0x04d0,
176             0x04d0, 0x057e, 0x057e, 0x062c, 0x0000, 0x0000, 0x0000, 0x0000,
177             0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000
178         }
179     }
180 };
181
182 // QP is from 0 - 51, pad it to 64 since BRC needs array size to be 64 bytes
183 const unsigned char gen9_avc_adaptive_intra_scaling_factor[64] =
184 {
185     0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b,
186     0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0c, 0x0c,
187     0x0c, 0x0c, 0x0d, 0x0d, 0x0d, 0x0d, 0x0e, 0x0e,
188     0x0e, 0x0e, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
189     0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
190     0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
191     0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00,
192     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
193 };
194
195 // QP is from 0 - 51, pad it to 64 since BRC needs array size to be 64 bytes
196 const unsigned char gen9_avc_intra_scaling_factor[64] =
197 {
198     0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c,
199     0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c,
200     0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x10, 0x10, 0x10,
201     0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
202     0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
203     0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10,
204     0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00,
205     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
206 };
207
208 // AVC MBEnc CURBE init data
209 const unsigned int gen9_avc_mbenc_curbe_normal_i_frame_init_data[GEN9_AVC_MBENC_CURBE_SIZE] =
210 {
211     0x00000082, 0x00000000, 0x00003910, 0x00a83000, 0x00000000, 0x28300000, 0x05000000, 0x00000000,
212     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
213     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
214     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
215     0x80800000, 0x00040c24, 0x00000000, 0xffff00ff, 0x40000000, 0x00000080, 0x00003900, 0x28301000,
216     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002,
217     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
218     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
219     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
220     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
221     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
222 };
223
224
225 const unsigned int gen9_avc_mbenc_curbe_normal_p_frame_init_data[GEN9_AVC_MBENC_CURBE_SIZE] =
226 {
227     0x000000a3, 0x00000008, 0x00003910, 0x00ae3000, 0x30000000, 0x28300000, 0x05000000, 0x01400060,
228     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
229     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
230     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
231     0x80010000, 0x00040c24, 0x00000000, 0xffff00ff, 0x60000000, 0x000000a1, 0x00003900, 0x28301000,
232     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x08000002,
233     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
234     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
235     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
236     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
237     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
238 };
239
240 const unsigned int gen9_avc_mbenc_curbe_normal_b_frame_init_data[GEN9_AVC_MBENC_CURBE_SIZE] =
241 {
242     0x000000a3, 0x00200008, 0x00003910, 0x00aa7700, 0x50020000, 0x20200000, 0x05000000, 0xff400000,
243     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
244     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
245     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
246     0x01010000, 0x00040c24, 0x00000000, 0xffff00ff, 0x60000000, 0x000000a1, 0x00003900, 0x28301000,
247     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x08000002,
248     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
249     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
250     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
251     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
252     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
253 };
254
255 // AVC I_DIST CURBE init data
256 const unsigned int gen9_avc_mbenc_curbe_i_frame_dist_init_data[GEN9_AVC_MBENC_CURBE_SIZE] =
257 {
258     0x00000082, 0x00200008, 0x001e3910, 0x00a83000, 0x90000000, 0x28300000, 0x00000000, 0x00000000,
259     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000,
260     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
261     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000100,
262     0x80800000, 0x00000000, 0x00000800, 0xffff00ff, 0x40000000, 0x00000080, 0x00003900, 0x28300000,
263     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
264     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
265     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
266     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
267     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
268     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
269 };
270
271 // AVC ME CURBE init data
272 const unsigned int gen9_avc_me_curbe_init_data[39] =
273 {
274     0x00000000, 0x00200010, 0x00003939, 0x77a43000, 0x00000000, 0x28300000, 0x00000000, 0x00000000,
275     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
276     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
277     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
278     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff
279 };
280
281 /*
282 ME cost table: mv/ref/mode
283 */
284 // AVC MBEnc ModeCost and MVCost tables, index [CodingType][QP] and
285 const unsigned int gen75_avc_mode_mv_cost_table[3][52][8] =
286 {
287     // I-Frame
288     {
289         {0x1e03000a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000},
290         {0x1e03000a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff010101, 0x00000000, 0x00000000},
291         {0x1e03000a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff020202, 0x00000000, 0x00000000},
292         {0x1e03000a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff030303, 0x00000000, 0x00000000},
293         {0x1e03000a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff040404, 0x00000000, 0x00000000},
294         {0x1e03000a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff050505, 0x00000000, 0x00000000},
295         {0x1e03000a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff060606, 0x00000000, 0x00000000},
296         {0x1e03000a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff070707, 0x01010001, 0x01010101},
297         {0x1e03000a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff080808, 0x01010001, 0x01010101},
298         {0x1e03000a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff090909, 0x03030003, 0x03030303},
299         {0x1e03000a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff0a0a0a, 0x03030003, 0x03030303},
300         {0x1e03000a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff0b0b0b, 0x06060006, 0x06060606},
301         {0x1e03000a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff0c0c0c, 0x06060006, 0x06060606},
302         {0x1e03000a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff0d0d0d, 0x08080008, 0x08080808},
303         {0x1e03000a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff0e0e0e, 0x08080008, 0x08080808},
304         {0x1e03000a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff0f0f0f, 0x0b0b000b, 0x0b0b0b0b},
305         {0x2e06001a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff101010, 0x0b0b000b, 0x0b0b0b0b},
306         {0x2e06001a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff111111, 0x0d0d000d, 0x0d0d0d0d},
307         {0x2e06001a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff121212, 0x0d0d000d, 0x0d0d0d0d},
308         {0x2e06001a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff131313, 0x10100010, 0x10101010},
309         {0x3b09001f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff141414, 0x10100010, 0x10101010},
310         {0x3b09001f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff151515, 0x13130013, 0x13131313},
311         {0x3b09001f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff161616, 0x13130013, 0x13131313},
312         {0x3e0c002a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff171717, 0x16160016, 0x16161616},
313         {0x3e0c002a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff181818, 0x16160016, 0x16161616},
314         {0x3e0c002a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff191919, 0x1a1a001a, 0x1a1a1a1a},
315         {0x490f002d, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff1a1a1a, 0x1a1a001a, 0x1a1a1a1a},
316         {0x4b19002f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff1b1b1b, 0x1e1e001e, 0x1e1e1e1e},
317         {0x4b19002f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff1c1c1c, 0x1e1e001e, 0x1e1e1e1e},
318         {0x4c1b0039, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff1d1d1d, 0x22220022, 0x22222222},
319         {0x4e1c003a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff1e1e1e, 0x22220022, 0x22222222},
320         {0x581e003b, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff1f1f1f, 0x27270027, 0x27272727},
321         {0x591f003d, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff202020, 0x27270027, 0x27272727},
322         {0x5a28003e, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff212121, 0x2c2c002c, 0x2c2c2c2c},
323         {0x5b2a0048, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff222222, 0x2c2c002c, 0x2c2c2c2c},
324         {0x5c2b0049, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff232323, 0x32320032, 0x32323232},
325         {0x5e2c004a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff242424, 0x32320032, 0x32323232},
326         {0x682e004b, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff252525, 0x38380038, 0x38383838},
327         {0x692f004d, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff262626, 0x38380038, 0x38383838},
328         {0x6a39004e, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff272727, 0x3e3e003e, 0x3e3e3e3e},
329         {0x6b390058, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff282828, 0x3e3e003e, 0x3e3e3e3e},
330         {0x6d3b0059, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff292929, 0x45450045, 0x45454545},
331         {0x6e3c005a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff2a2a2a, 0x45450045, 0x45454545},
332         {0x783e005b, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff2b2b2b, 0x4d4d004d, 0x4d4d4d4d},
333         {0x793f005d, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff2c2c2c, 0x4d4d004d, 0x4d4d4d4d},
334         {0x7a48005e, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff2d2d2d, 0x55550055, 0x55555555},
335         {0x7b4a0068, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff2e2e2e, 0x55550055, 0x55555555},
336         {0x7c4b0069, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff2f2f2f, 0x5e5e005e, 0x5e5e5e5e},
337         {0x7e4c006a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff303030, 0x5e5e005e, 0x5e5e5e5e},
338         {0x884e006b, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff313131, 0x68680068, 0x68686868},
339         {0x894f006d, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff323232, 0x68680068, 0x68686868},
340         {0x8a59006e, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff333333, 0x73730073, 0x73737373},
341     },
342         // P-Frame
343     {
344         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff000000, 0x00000000, 0x00000000},
345         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff010101, 0x00000000, 0x00000000},
346         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff020202, 0x00000000, 0x00000000},
347         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff030303, 0x00000000, 0x00000000},
348         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff040404, 0x00000000, 0x00000000},
349         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff050505, 0x00000000, 0x00000000},
350         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff060606, 0x00000000, 0x00000000},
351         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff070707, 0x01010001, 0x01010101},
352         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff080808, 0x01010001, 0x01010101},
353         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff090909, 0x03030003, 0x03030303},
354         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff0a0a0a, 0x03030003, 0x03030303},
355         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff0b0b0b, 0x06060006, 0x06060606},
356         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff0c0c0c, 0x06060006, 0x06060606},
357         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff0d0d0d, 0x08080008, 0x08080808},
358         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff0e0e0e, 0x08080008, 0x08080808},
359         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff0f0f0f, 0x0b0b000b, 0x0b0b0b0b},
360         {0x492e2a0e, 0x0d090519, 0x0008000b, 0x190a0802, 0x1f1e1c1a, 0xff101010, 0x0b0b000b, 0x0b0b0b0b},
361         {0x492e2a0e, 0x0d090519, 0x0008000b, 0x190a0802, 0x1f1e1c1a, 0xff111111, 0x0d0d000d, 0x0d0d0d0d},
362         {0x492e2a0e, 0x0d090519, 0x0008000b, 0x190a0802, 0x1f1e1c1a, 0xff121212, 0x0d0d000d, 0x0d0d0d0d},
363         {0x492e2a0e, 0x0d090519, 0x0008000b, 0x190a0802, 0x1f1e1c1a, 0xff131313, 0x10100010, 0x10101010},
364         {0x4d3b2f1b, 0x1a0d071d, 0x000c0018, 0x1e0f0c03, 0x2b2b291f, 0xff141414, 0x10100010, 0x10101010},
365         {0x4d3b2f1b, 0x1a0d071d, 0x000c0018, 0x1e0f0c03, 0x2b2b291f, 0xff151515, 0x13130013, 0x13131313},
366         {0x4d3b2f1b, 0x1a0d071d, 0x000c0018, 0x1e0f0c03, 0x2b2b291f, 0xff161616, 0x13130013, 0x13131313},
367         {0x593e3a1e, 0x1d190a29, 0x0018001b, 0x291a1804, 0x2f2e2c2a, 0xff171717, 0x16160016, 0x16161616},
368         {0x593e3a1e, 0x1d190a29, 0x0018001b, 0x291a1804, 0x2f2e2c2a, 0xff181818, 0x16160016, 0x16161616},
369         {0x593e3a1e, 0x1d190a29, 0x0018001b, 0x291a1804, 0x2f2e2c2a, 0xff191919, 0x1a1a001a, 0x1a1a1a1a},
370         {0x5b493d29, 0x281c0d2b, 0x001a001e, 0x2b1d1a05, 0x39392f2d, 0xff1a1a1a, 0x1a1a001a, 0x1a1a1a1a},
371         {0x5d4b3f2b, 0x2a1e0f2d, 0x001c0028, 0x2e1f1c06, 0x3b3b392f, 0xff1b1b1b, 0x1e1e001e, 0x1e1e1e1e},
372         {0x5d4b3f2b, 0x2a1e0f2d, 0x001c0028, 0x2e1f1c06, 0x3b3b392f, 0xff1c1c1c, 0x1e1e001e, 0x1e1e1e1e},
373         {0x5f4c492c, 0x2c28192f, 0x001e002a, 0x38291e07, 0x3d3c3b39, 0xff1d1d1d, 0x22220022, 0x22222222},
374         {0x694e4a2e, 0x2d291b39, 0x0028002b, 0x392a2808, 0x3f3e3c3a, 0xff1e1e1e, 0x22220022, 0x22222222},
375         {0x6a584b38, 0x2f2a1c3a, 0x0029002c, 0x3a2b2909, 0x48483e3b, 0xff1f1f1f, 0x27270027, 0x27272727},
376         {0x6b594d39, 0x382c1d3b, 0x002a002e, 0x3b2d2a0a, 0x49493f3d, 0xff202020, 0x27270027, 0x27272727},
377         {0x6c5a4e3a, 0x392d1f3c, 0x002b002f, 0x3c2e2b0b, 0x4a4a483e, 0xff212121, 0x2c2c002c, 0x2c2c2c2c},
378         {0x6e5b583b, 0x3b2f293e, 0x002d0039, 0x3f382d0d, 0x4c4b4a48, 0xff222222, 0x2c2c002c, 0x2c2c2c2c},
379         {0x6f5c593c, 0x3c38293f, 0x002e003a, 0x48392e0e, 0x4d4c4b49, 0xff232323, 0x32320032, 0x32323232},
380         {0x795e5a3e, 0x3d392b49, 0x0038003b, 0x493a3818, 0x4f4e4c4a, 0xff242424, 0x32320032, 0x32323232},
381         {0x7a685b48, 0x3f3a2c4a, 0x0039003c, 0x4a3b3919, 0x58584e4b, 0xff252525, 0x38380038, 0x38383838},
382         {0x7b695d49, 0x483c2d4b, 0x003a003e, 0x4b3d3a1a, 0x59594f4d, 0xff262626, 0x38380038, 0x38383838},
383         {0x7d6a5e4a, 0x4a3d2f4c, 0x003c0048, 0x4d3e3c1c, 0x5b5a594e, 0xff272727, 0x3e3e003e, 0x3e3e3e3e},
384         {0x7e6b684b, 0x4a3e384d, 0x003d0049, 0x4e483d1d, 0x5c5b5958, 0xff282828, 0x3e3e003e, 0x3e3e3e3e},
385         {0x886d694d, 0x4c483a4f, 0x003f004a, 0x58493f1f, 0x5e5d5b59, 0xff292929, 0x45450045, 0x45454545},
386         {0x896e6a4e, 0x4d493b59, 0x0048004b, 0x594a4828, 0x5f5e5c5a, 0xff2a2a2a, 0x45450045, 0x45454545},
387         {0x8a786b58, 0x4f4a3c5a, 0x0049004c, 0x5a4b4929, 0x68685e5b, 0xff2b2b2b, 0x4d4d004d, 0x4d4d4d4d},
388         {0x8b796d59, 0x584c3d5b, 0x004a004e, 0x5b4d4a2a, 0x69695f5d, 0xff2c2c2c, 0x4d4d004d, 0x4d4d4d4d},
389         {0x8c7a6e5a, 0x594d3f5c, 0x004b004f, 0x5d4e4b2b, 0x6b6a685e, 0xff2d2d2d, 0x55550055, 0x55555555},
390         {0x8e7b785b, 0x5b4f485e, 0x004d0059, 0x5e584d2d, 0x6c6b6a68, 0xff2e2e2e, 0x55550055, 0x55555555},
391         {0x8f7c795c, 0x5c58495f, 0x004e005a, 0x68594e2e, 0x6d6c6b69, 0xff2f2f2f, 0x5e5e005e, 0x5e5e5e5e},
392         {0x8f7e7a5e, 0x5d594b69, 0x0058005b, 0x695a5838, 0x6f6e6c6a, 0xff303030, 0x5e5e005e, 0x5e5e5e5e},
393         {0x8f887b68, 0x5f5a4c6a, 0x0059005c, 0x6a5b5939, 0x6f6f6e6b, 0xff313131, 0x68680068, 0x68686868},
394         {0x8f897d69, 0x685c4d6b, 0x005a005e, 0x6b5d5a3a, 0x6f6f6f6d, 0xff323232, 0x68680068, 0x68686868},
395         {0x8f8a7e6a, 0x695d4f6c, 0x005b0068, 0x6d5e5b3b, 0x6f6f6f6e, 0xff333333, 0x73730073, 0x73737373},
396     },
397         // B-Frame
398     {
399         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff000000, 0x00000000, 0x00000000},
400         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff010101, 0x00000000, 0x00000000},
401         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff020202, 0x00000000, 0x00000000},
402         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff030303, 0x00000000, 0x00000000},
403         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff040404, 0x00000000, 0x00000000},
404         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff050505, 0x00000000, 0x00000000},
405         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff060606, 0x00000000, 0x00000000},
406         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff070707, 0x01010001, 0x01010101},
407         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff080808, 0x01010001, 0x01010101},
408         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff090909, 0x03030003, 0x03030303},
409         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff0a0a0a, 0x03030003, 0x03030303},
410         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff0b0b0b, 0x06060006, 0x06060606},
411         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff0c0c0c, 0x06060006, 0x06060606},
412         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff0d0d0d, 0x08080008, 0x08080808},
413         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff0e0e0e, 0x08080008, 0x08080808},
414         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff0f0f0f, 0x0b0b000b, 0x0b0b0b0b},
415         {0x4a3a390e, 0x1b190d1c, 0x0008040c, 0x0c040400, 0x281e1c1a, 0xff101010, 0x0b0b000b, 0x0b0b0b0b},
416         {0x4a3a390e, 0x1b190d1c, 0x0008040c, 0x0c040400, 0x281e1c1a, 0xff111111, 0x0d0d000d, 0x0d0d0d0d},
417         {0x4a3a390e, 0x1b190d1c, 0x0008040c, 0x0c040400, 0x281e1c1a, 0xff121212, 0x0d0d000d, 0x0d0d0d0d},
418         {0x4a3a390e, 0x1b190d1c, 0x0008040c, 0x0c040400, 0x281e1c1a, 0xff131313, 0x10100010, 0x10101010},
419         {0x4f3f3d1b, 0x281d1a29, 0x000c0619, 0x19060600, 0x2c2b291f, 0xff141414, 0x10100010, 0x10101010},
420         {0x4f3f3d1b, 0x281d1a29, 0x000c0619, 0x19060600, 0x2c2b291f, 0xff151515, 0x13130013, 0x13131313},
421         {0x4f3f3d1b, 0x281d1a29, 0x000c0619, 0x19060600, 0x2c2b291f, 0xff161616, 0x13130013, 0x13131313},
422         {0x5a4a491e, 0x2b291d2c, 0x0018081c, 0x1c080800, 0x382e2c2a, 0xff171717, 0x16160016, 0x16161616},
423         {0x5a4a491e, 0x2b291d2c, 0x0018081c, 0x1c080800, 0x382e2c2a, 0xff181818, 0x16160016, 0x16161616},
424         {0x5a4a491e, 0x2b291d2c, 0x0018081c, 0x1c080800, 0x382e2c2a, 0xff191919, 0x1a1a001a, 0x1a1a1a1a},
425         {0x5d4d4b29, 0x2d2b282f, 0x001a0a1f, 0x1f0a0a00, 0x3a392f2d, 0xff1a1a1a, 0x1a1a001a, 0x1a1a1a1a},
426         {0x5f4f4d2b, 0x382d2a39, 0x001c0c29, 0x290c0c00, 0x3c3b392f, 0xff1b1b1b, 0x1e1e001e, 0x1e1e1e1e},
427         {0x5f4f4d2b, 0x382d2a39, 0x001c0c29, 0x290c0c00, 0x3c3b392f, 0xff1c1c1c, 0x1e1e001e, 0x1e1e1e1e},
428         {0x69594f2c, 0x392f2b3b, 0x001e0e2b, 0x2b0e0e00, 0x3e3c3b39, 0xff1d1d1d, 0x22220022, 0x22222222},
429         {0x6a5a592e, 0x3b392d3c, 0x0028182c, 0x2c181800, 0x483e3c3a, 0xff1e1e1e, 0x22220022, 0x22222222},
430         {0x6b5b5a38, 0x3c3a2f3e, 0x0029192e, 0x2e191900, 0x49483e3b, 0xff1f1f1f, 0x27270027, 0x27272727},
431         {0x6d5d5b39, 0x3d3b383f, 0x002a1a2f, 0x2f1a1a00, 0x4a493f3d, 0xff202020, 0x27270027, 0x27272727},
432         {0x6e5e5c3a, 0x3e3c3948, 0x002b1b38, 0x381b1b00, 0x4b4a483e, 0xff212121, 0x2c2c002c, 0x2c2c2c2c},
433         {0x78685e3b, 0x493e3b4a, 0x002d1d3a, 0x3a1d1d00, 0x4d4b4a48, 0xff222222, 0x2c2c002c, 0x2c2c2c2c},
434         {0x79695f3c, 0x493f3b4b, 0x002e1e3b, 0x3b1e1e00, 0x4e4c4b49, 0xff232323, 0x32320032, 0x32323232},
435         {0x7a6a693e, 0x4b493d4c, 0x0038283c, 0x3c282800, 0x584e4c4a, 0xff242424, 0x32320032, 0x32323232},
436         {0x7b6b6a48, 0x4c4a3f4e, 0x0039293e, 0x3e292900, 0x59584e4b, 0xff252525, 0x38380038, 0x38383838},
437         {0x7d6d6b49, 0x4d4b484f, 0x003a2a3f, 0x3f2a2a00, 0x5a594f4d, 0xff262626, 0x38380038, 0x38383838},
438         {0x7e6e6c4a, 0x4f4c4959, 0x003c2c49, 0x492c2c00, 0x5c5a594e, 0xff272727, 0x3e3e003e, 0x3e3e3e3e},
439         {0x88786d4b, 0x584d4a59, 0x003d2d49, 0x492d2d00, 0x5d5b5958, 0xff282828, 0x3e3e003e, 0x3e3e3e3e},
440         {0x89796f4d, 0x5a4f4c5b, 0x003f2f4b, 0x4b2f2f00, 0x5f5d5b59, 0xff292929, 0x45450045, 0x45454545},
441         {0x8a7a794e, 0x5b594d5c, 0x0048384c, 0x4c383800, 0x685e5c5a, 0xff2a2a2a, 0x45450045, 0x45454545},
442         {0x8b7b7a58, 0x5c5a4f5e, 0x0049394e, 0x4e393900, 0x69685e5b, 0xff2b2b2b, 0x4d4d004d, 0x4d4d4d4d},
443         {0x8d7d7b59, 0x5d5b585f, 0x004a3a4f, 0x4f3a3a00, 0x6a695f5d, 0xff2c2c2c, 0x4d4d004d, 0x4d4d4d4d},
444         {0x8e7e7c5a, 0x5f5c5968, 0x004b3b58, 0x583b3b00, 0x6b6a685e, 0xff2d2d2d, 0x55550055, 0x55555555},
445         {0x8f887e5b, 0x685e5a6a, 0x004d3d5a, 0x5a3d3d00, 0x6d6b6a68, 0xff2e2e2e, 0x55550055, 0x55555555},
446         {0x8f897f5c, 0x695f5c6b, 0x004e3e5b, 0x5b3e3e00, 0x6e6c6b69, 0xff2f2f2f, 0x5e5e005e, 0x5e5e5e5e},
447         {0x8f8a895e, 0x6b695d6c, 0x0058485c, 0x5c484800, 0x6f6e6c6a, 0xff303030, 0x5e5e005e, 0x5e5e5e5e},
448         {0x8f8b8a68, 0x6c6a5f6e, 0x0059495e, 0x5e494900, 0x6f6f6e6b, 0xff313131, 0x68680068, 0x68686868},
449         {0x8f8d8b69, 0x6d6b686f, 0x005a4a5f, 0x5f4a4a00, 0x6f6f6f6d, 0xff323232, 0x68680068, 0x68686868},
450         {0x8f8e8c6a, 0x6f6c6979, 0x005b4b69, 0x694b4b00, 0x6f6f6f6e, 0xff333333, 0x73730073, 0x73737373},
451     }
452 };
453
454 const unsigned int gen9_avc_mode_mv_cost_table[3][52][8] =
455 {
456     // I-Frame
457     {
458         {0x0d000003, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000},
459         {0x0f000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff010101, 0x00000000, 0x00000000},
460         {0x19000004, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff020202, 0x00000000, 0x00000000},
461         {0x1a000005, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff030303, 0x00000000, 0x00000000},
462         {0x1b000005, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff040404, 0x00000000, 0x00000000},
463         {0x1c000006, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff050505, 0x00000000, 0x00000000},
464         {0x1e000007, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff060606, 0x00000000, 0x00000000},
465         {0x28000008, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff070707, 0x01010001, 0x01010101},
466         {0x29000009, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff080808, 0x01010001, 0x01010101},
467         {0x2a00000a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff090909, 0x03030003, 0x03030303},
468         {0x2b00000b, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff0a0a0a, 0x03030003, 0x03030303},
469         {0x2c00000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff0b0b0b, 0x06060006, 0x06060606},
470         {0x2e00000e, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff0c0c0c, 0x06060006, 0x06060606},
471         {0x38000018, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff0d0d0d, 0x08080008, 0x08080808},
472         {0x39000019, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff0e0e0e, 0x08080008, 0x08080808},
473         {0x3a00001b, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff0f0f0f, 0x0b0b000b, 0x0b0b0b0b},
474         {0x3b00001c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff101010, 0x0b0b000b, 0x0b0b0b0b},
475         {0x3c00001d, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff111111, 0x0d0d000d, 0x0d0d0d0d},
476         {0x3e00001f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff121212, 0x0d0d000d, 0x0d0d0d0d},
477         {0x48020028, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff131313, 0x10100010, 0x10101010},
478         {0x49020029, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff141414, 0x10100010, 0x10101010},
479         {0x4a03002a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff151515, 0x13130013, 0x13131313},
480         {0x4b03002b, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff161616, 0x13130013, 0x13131313},
481         {0x4c04002b, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff171717, 0x16160016, 0x16161616},
482         {0x4e04002c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff181818, 0x16160016, 0x16161616},
483         {0x5805002e, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff191919, 0x1a1a001a, 0x1a1a1a1a},
484         {0x5905002f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff1a1a1a, 0x1a1a001a, 0x1a1a1a1a},
485         {0x5a06002e, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff1b1b1b, 0x1e1e001e, 0x1e1e1e1e},
486         {0x5b07002f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff1c1c1c, 0x1e1e001e, 0x1e1e1e1e},
487         {0x5c080039, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff1d1d1d, 0x22220022, 0x22222222},
488         {0x5e09003a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff1e1e1e, 0x22220022, 0x22222222},
489         {0x6828003a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff1f1f1f, 0x27270027, 0x27272727},
490         {0x6929003b, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff202020, 0x27270027, 0x27272727},
491         {0x6a2a003c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff212121, 0x2c2c002c, 0x2c2c2c2c},
492         {0x6b2c003e, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff222222, 0x2c2c002c, 0x2c2c2c2c},
493         {0x6c3a003e, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff232323, 0x32320032, 0x32323232},
494         {0x6e3b0048, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff242424, 0x32320032, 0x32323232},
495         {0x783c0049, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff252525, 0x38380038, 0x38383838},
496         {0x793e004a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff262626, 0x38380038, 0x38383838},
497         {0x7a3e004b, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff272727, 0x3e3e003e, 0x3e3e3e3e},
498         {0x7b48004c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff282828, 0x3e3e003e, 0x3e3e3e3e},
499         {0x7c49004e, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff292929, 0x45450045, 0x45454545},
500         {0x7e4a0058, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff2a2a2a, 0x45450045, 0x45454545},
501         {0x884d0059, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff2b2b2b, 0x4d4d004d, 0x4d4d4d4d},
502         {0x894f005a, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff2c2c2c, 0x4d4d004d, 0x4d4d4d4d},
503         {0x8a58005b, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff2d2d2d, 0x55550055, 0x55555555},
504         {0x8b59005c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff2e2e2e, 0x55550055, 0x55555555},
505         {0x8c5c005b, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff2f2f2f, 0x5e5e005e, 0x5e5e5e5e},
506         {0x8e5d005c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff303030, 0x5e5e005e, 0x5e5e5e5e},
507         {0x8f5f005d, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff313131, 0x68680068, 0x68686868},
508         {0x8f68005f, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff323232, 0x68680068, 0x68686868},
509         {0x8f690068, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff333333, 0x73730073, 0x73737373}
510     },
511         // P-Frame
512     {
513         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff000000, 0x00000000, 0x00000000},
514         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff010101, 0x00000000, 0x00000000},
515         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff020202, 0x00000000, 0x00000000},
516         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff030303, 0x00000000, 0x00000000},
517         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff040404, 0x00000000, 0x00000000},
518         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff050505, 0x00000000, 0x00000000},
519         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff060606, 0x00000000, 0x00000000},
520         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff070707, 0x01010001, 0x01010101},
521         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff080808, 0x01010001, 0x01010101},
522         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff090909, 0x03030003, 0x03030303},
523         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff0a0a0a, 0x03030003, 0x03030303},
524         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff0b0b0b, 0x06060006, 0x06060606},
525         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff0c0c0c, 0x06060006, 0x06060606},
526         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff0d0d0d, 0x08080008, 0x08080808},
527         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff0e0e0e, 0x08080008, 0x08080808},
528         {0x391e1a07, 0x06040208, 0x00040005, 0x09050401, 0x0f0e0c0a, 0xff0f0f0f, 0x0b0b000b, 0x0b0b0b0b},
529         {0x492e2a0e, 0x0d090519, 0x0008000b, 0x190a0802, 0x1f1e1c1a, 0xff101010, 0x0b0b000b, 0x0b0b0b0b},
530         {0x492e2a0e, 0x0d090519, 0x0008000b, 0x190a0802, 0x1f1e1c1a, 0xff111111, 0x0d0d000d, 0x0d0d0d0d},
531         {0x492e2a0e, 0x0d090519, 0x0008000b, 0x190a0802, 0x1f1e1c1a, 0xff121212, 0x0d0d000d, 0x0d0d0d0d},
532         {0x492e2a0e, 0x0d090519, 0x0008000b, 0x190a0802, 0x1f1e1c1a, 0xff131313, 0x10100010, 0x10101010},
533         {0x4d3b2f1b, 0x1a0d071d, 0x000c0018, 0x1e0f0c03, 0x2b2b291f, 0xff141414, 0x10100010, 0x10101010},
534         {0x4d3b2f1b, 0x1a0d071d, 0x000c0018, 0x1e0f0c03, 0x2b2b291f, 0xff151515, 0x13130013, 0x13131313},
535         {0x4d3b2f1b, 0x1a0d071d, 0x000c0018, 0x1e0f0c03, 0x2b2b291f, 0xff161616, 0x13130013, 0x13131313},
536         {0x593e3a1e, 0x1d190a29, 0x0018001b, 0x291a1804, 0x2f2e2c2a, 0xff171717, 0x16160016, 0x16161616},
537         {0x593e3a1e, 0x1d190a29, 0x0018001b, 0x291a1804, 0x2f2e2c2a, 0xff181818, 0x16160016, 0x16161616},
538         {0x593e3a1e, 0x1d190a29, 0x0018001b, 0x291a1804, 0x2f2e2c2a, 0xff191919, 0x1a1a001a, 0x1a1a1a1a},
539         {0x5b493d29, 0x281c0d2b, 0x001a001e, 0x2b1d1a05, 0x39392f2d, 0xff1a1a1a, 0x1a1a001a, 0x1a1a1a1a},
540         {0x5d4b3f2b, 0x2a1e0f2d, 0x001c0028, 0x2e1f1c06, 0x3b3b392f, 0xff1b1b1b, 0x1e1e001e, 0x1e1e1e1e},
541         {0x5d4b3f2b, 0x2a1e0f2d, 0x001c0028, 0x2e1f1c06, 0x3b3b392f, 0xff1c1c1c, 0x1e1e001e, 0x1e1e1e1e},
542         {0x5f4c492c, 0x2c28192f, 0x001e002a, 0x38291e07, 0x3d3c3b39, 0xff1d1d1d, 0x22220022, 0x22222222},
543         {0x694e4a2e, 0x2d291b39, 0x0028002b, 0x392a2808, 0x3f3e3c3a, 0xff1e1e1e, 0x22220022, 0x22222222},
544         {0x6a584b38, 0x2f2a1c3a, 0x0029002c, 0x3a2b2909, 0x48483e3b, 0xff1f1f1f, 0x27270027, 0x27272727},
545         {0x6b594d39, 0x382c1d3b, 0x002a002e, 0x3b2d2a0a, 0x49493f3d, 0xff202020, 0x27270027, 0x27272727},
546         {0x6c5a4e3a, 0x392d1f3c, 0x002b002f, 0x3c2e2b0b, 0x4a4a483e, 0xff212121, 0x2c2c002c, 0x2c2c2c2c},
547         {0x6e5b583b, 0x3b2f293e, 0x002d0039, 0x3f382d0d, 0x4c4b4a48, 0xff222222, 0x2c2c002c, 0x2c2c2c2c},
548         {0x6f5c593c, 0x3c38293f, 0x002e003a, 0x48392e0e, 0x4d4c4b49, 0xff232323, 0x32320032, 0x32323232},
549         {0x795e5a3e, 0x3d392b49, 0x0038003b, 0x493a3818, 0x4f4e4c4a, 0xff242424, 0x32320032, 0x32323232},
550         {0x7a685b48, 0x3f3a2c4a, 0x0039003c, 0x4a3b3919, 0x58584e4b, 0xff252525, 0x38380038, 0x38383838},
551         {0x7b695d49, 0x483c2d4b, 0x003a003e, 0x4b3d3a1a, 0x59594f4d, 0xff262626, 0x38380038, 0x38383838},
552         {0x7d6a5e4a, 0x4a3d2f4c, 0x003c0048, 0x4d3e3c1c, 0x5b5a594e, 0xff272727, 0x3e3e003e, 0x3e3e3e3e},
553         {0x7e6b684b, 0x4a3e384d, 0x003d0049, 0x4e483d1d, 0x5c5b5958, 0xff282828, 0x3e3e003e, 0x3e3e3e3e},
554         {0x886d694d, 0x4c483a4f, 0x003f004a, 0x58493f1f, 0x5e5d5b59, 0xff292929, 0x45450045, 0x45454545},
555         {0x896e6a4e, 0x4d493b59, 0x0048004b, 0x594a4828, 0x5f5e5c5a, 0xff2a2a2a, 0x45450045, 0x45454545},
556         {0x8a786b58, 0x4f4a3c5a, 0x0049004c, 0x5a4b4929, 0x68685e5b, 0xff2b2b2b, 0x4d4d004d, 0x4d4d4d4d},
557         {0x8b796d59, 0x584c3d5b, 0x004a004e, 0x5b4d4a2a, 0x69695f5d, 0xff2c2c2c, 0x4d4d004d, 0x4d4d4d4d},
558         {0x8c7a6e5a, 0x594d3f5c, 0x004b004f, 0x5d4e4b2b, 0x6b6a685e, 0xff2d2d2d, 0x55550055, 0x55555555},
559         {0x8e7b785b, 0x5b4f485e, 0x004d0059, 0x5e584d2d, 0x6c6b6a68, 0xff2e2e2e, 0x55550055, 0x55555555},
560         {0x8f7c795c, 0x5c58495f, 0x004e005a, 0x68594e2e, 0x6d6c6b69, 0xff2f2f2f, 0x5e5e005e, 0x5e5e5e5e},
561         {0x8f7e7a5e, 0x5d594b69, 0x0058005b, 0x695a5838, 0x6f6e6c6a, 0xff303030, 0x5e5e005e, 0x5e5e5e5e},
562         {0x8f887b68, 0x5f5a4c6a, 0x0059005c, 0x6a5b5939, 0x6f6f6e6b, 0xff313131, 0x68680068, 0x68686868},
563         {0x8f897d69, 0x685c4d6b, 0x005a005e, 0x6b5d5a3a, 0x6f6f6f6d, 0xff323232, 0x68680068, 0x68686868},
564         {0x8f8a7e6a, 0x695d4f6c, 0x005b0068, 0x6d5e5b3b, 0x6f6f6f6e, 0xff333333, 0x73730073, 0x73737373}
565     },
566         // B-Frame
567     {
568         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff000000, 0x00000000, 0x00000000},
569         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff010101, 0x00000000, 0x00000000},
570         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff020202, 0x00000000, 0x00000000},
571         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff030303, 0x00000000, 0x00000000},
572         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff040404, 0x00000000, 0x00000000},
573         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff050505, 0x00000000, 0x00000000},
574         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff060606, 0x00000000, 0x00000000},
575         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff070707, 0x01010001, 0x01010101},
576         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff080808, 0x01010001, 0x01010101},
577         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff090909, 0x03030003, 0x03030303},
578         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff0a0a0a, 0x03030003, 0x03030303},
579         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff0b0b0b, 0x06060006, 0x06060606},
580         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff0c0c0c, 0x06060006, 0x06060606},
581         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff0d0d0d, 0x08080008, 0x08080808},
582         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff0e0e0e, 0x08080008, 0x08080808},
583         {0x3a2a2907, 0x0a08060c, 0x00040206, 0x06020200, 0x180e0c0a, 0xff0f0f0f, 0x0b0b000b, 0x0b0b0b0b},
584         {0x4a3a390e, 0x1b190d1c, 0x0008040c, 0x0c040400, 0x281e1c1a, 0xff101010, 0x0b0b000b, 0x0b0b0b0b},
585         {0x4a3a390e, 0x1b190d1c, 0x0008040c, 0x0c040400, 0x281e1c1a, 0xff111111, 0x0d0d000d, 0x0d0d0d0d},
586         {0x4a3a390e, 0x1b190d1c, 0x0008040c, 0x0c040400, 0x281e1c1a, 0xff121212, 0x0d0d000d, 0x0d0d0d0d},
587         {0x4a3a390e, 0x1b190d1c, 0x0008040c, 0x0c040400, 0x281e1c1a, 0xff131313, 0x10100010, 0x10101010},
588         {0x4f3f3d1b, 0x281d1a29, 0x000c0619, 0x19060600, 0x2c2b291f, 0xff141414, 0x10100010, 0x10101010},
589         {0x4f3f3d1b, 0x281d1a29, 0x000c0619, 0x19060600, 0x2c2b291f, 0xff151515, 0x13130013, 0x13131313},
590         {0x4f3f3d1b, 0x281d1a29, 0x000c0619, 0x19060600, 0x2c2b291f, 0xff161616, 0x13130013, 0x13131313},
591         {0x5a4a491e, 0x2b291d2c, 0x0018081c, 0x1c080800, 0x382e2c2a, 0xff171717, 0x16160016, 0x16161616},
592         {0x5a4a491e, 0x2b291d2c, 0x0018081c, 0x1c080800, 0x382e2c2a, 0xff181818, 0x16160016, 0x16161616},
593         {0x5a4a491e, 0x2b291d2c, 0x0018081c, 0x1c080800, 0x382e2c2a, 0xff191919, 0x1a1a001a, 0x1a1a1a1a},
594         {0x5d4d4b29, 0x2d2b282f, 0x001a0a1f, 0x1f0a0a00, 0x3a392f2d, 0xff1a1a1a, 0x1a1a001a, 0x1a1a1a1a},
595         {0x5f4f4d2b, 0x382d2a39, 0x001c0c29, 0x290c0c00, 0x3c3b392f, 0xff1b1b1b, 0x1e1e001e, 0x1e1e1e1e},
596         {0x5f4f4d2b, 0x382d2a39, 0x001c0c29, 0x290c0c00, 0x3c3b392f, 0xff1c1c1c, 0x1e1e001e, 0x1e1e1e1e},
597         {0x69594f2c, 0x392f2b3b, 0x001e0e2b, 0x2b0e0e00, 0x3e3c3b39, 0xff1d1d1d, 0x22220022, 0x22222222},
598         {0x6a5a592e, 0x3b392d3c, 0x0028182c, 0x2c181800, 0x483e3c3a, 0xff1e1e1e, 0x22220022, 0x22222222},
599         {0x6b5b5a38, 0x3c3a2f3e, 0x0029192e, 0x2e191900, 0x49483e3b, 0xff1f1f1f, 0x27270027, 0x27272727},
600         {0x6d5d5b39, 0x3d3b383f, 0x002a1a2f, 0x2f1a1a00, 0x4a493f3d, 0xff202020, 0x27270027, 0x27272727},
601         {0x6e5e5c3a, 0x3e3c3948, 0x002b1b38, 0x381b1b00, 0x4b4a483e, 0xff212121, 0x2c2c002c, 0x2c2c2c2c},
602         {0x78685e3b, 0x493e3b4a, 0x002d1d3a, 0x3a1d1d00, 0x4d4b4a48, 0xff222222, 0x2c2c002c, 0x2c2c2c2c},
603         {0x79695f3c, 0x493f3b4b, 0x002e1e3b, 0x3b1e1e00, 0x4e4c4b49, 0xff232323, 0x32320032, 0x32323232},
604         {0x7a6a693e, 0x4b493d4c, 0x0038283c, 0x3c282800, 0x584e4c4a, 0xff242424, 0x32320032, 0x32323232},
605         {0x7b6b6a48, 0x4c4a3f4e, 0x0039293e, 0x3e292900, 0x59584e4b, 0xff252525, 0x38380038, 0x38383838},
606         {0x7d6d6b49, 0x4d4b484f, 0x003a2a3f, 0x3f2a2a00, 0x5a594f4d, 0xff262626, 0x38380038, 0x38383838},
607         {0x7e6e6c4a, 0x4f4c4959, 0x003c2c49, 0x492c2c00, 0x5c5a594e, 0xff272727, 0x3e3e003e, 0x3e3e3e3e},
608         {0x88786d4b, 0x584d4a59, 0x003d2d49, 0x492d2d00, 0x5d5b5958, 0xff282828, 0x3e3e003e, 0x3e3e3e3e},
609         {0x89796f4d, 0x5a4f4c5b, 0x003f2f4b, 0x4b2f2f00, 0x5f5d5b59, 0xff292929, 0x45450045, 0x45454545},
610         {0x8a7a794e, 0x5b594d5c, 0x0048384c, 0x4c383800, 0x685e5c5a, 0xff2a2a2a, 0x45450045, 0x45454545},
611         {0x8b7b7a58, 0x5c5a4f5e, 0x0049394e, 0x4e393900, 0x69685e5b, 0xff2b2b2b, 0x4d4d004d, 0x4d4d4d4d},
612         {0x8d7d7b59, 0x5d5b585f, 0x004a3a4f, 0x4f3a3a00, 0x6a695f5d, 0xff2c2c2c, 0x4d4d004d, 0x4d4d4d4d},
613         {0x8e7e7c5a, 0x5f5c5968, 0x004b3b58, 0x583b3b00, 0x6b6a685e, 0xff2d2d2d, 0x55550055, 0x55555555},
614         {0x8f887e5b, 0x685e5a6a, 0x004d3d5a, 0x5a3d3d00, 0x6d6b6a68, 0xff2e2e2e, 0x55550055, 0x55555555},
615         {0x8f897f5c, 0x695f5c6b, 0x004e3e5b, 0x5b3e3e00, 0x6e6c6b69, 0xff2f2f2f, 0x5e5e005e, 0x5e5e5e5e},
616         {0x8f8a895e, 0x6b695d6c, 0x0058485c, 0x5c484800, 0x6f6e6c6a, 0xff303030, 0x5e5e005e, 0x5e5e5e5e},
617         {0x8f8b8a68, 0x6c6a5f6e, 0x0059495e, 0x5e494900, 0x6f6f6e6b, 0xff313131, 0x68680068, 0x68686868},
618         {0x8f8d8b69, 0x6d6b686f, 0x005a4a5f, 0x5f4a4a00, 0x6f6f6f6d, 0xff323232, 0x68680068, 0x68686868},
619         {0x8f8e8c6a, 0x6f6c6979, 0x005b4b69, 0x694b4b00, 0x6f6f6f6e, 0xff333333, 0x73730073, 0x73737373}
620     }
621 };
622 const unsigned char gen75_avc_qp_adjustment_dist_threshold_max_frame_threshold_dist_qp_adjustment_ipb[576] =
623 {
624     0x01, 0x02, 0x03, 0x05, 0x06, 0x01, 0x01, 0x02, 0x03, 0x05, 0x00, 0x00, 0x01, 0x02, 0x03, 0xff,
625     0x00, 0x00, 0x01, 0x02, 0xff, 0x00, 0x00, 0x00, 0x01, 0xfe, 0xfe, 0xff, 0x00, 0x01, 0xfd, 0xfd,
626     0xff, 0xff, 0x00, 0xfb, 0xfd, 0xfe, 0xff, 0xff, 0xfa, 0xfb, 0xfd, 0xfe, 0xff, 0x00, 0x04, 0x1e,
627     0x3c, 0x50, 0x78, 0x8c, 0xc8, 0xff, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
628     0x01, 0x02, 0x03, 0x05, 0x06, 0x01, 0x01, 0x02, 0x03, 0x05, 0x00, 0x01, 0x01, 0x02, 0x03, 0xff,
629     0x00, 0x00, 0x01, 0x02, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x00, 0x01, 0xfe, 0xff,
630     0xff, 0xff, 0x00, 0xfc, 0xfe, 0xff, 0xff, 0x00, 0xfb, 0xfc, 0xfe, 0xff, 0xff, 0x00, 0x04, 0x1e,
631     0x3c, 0x50, 0x78, 0x8c, 0xc8, 0xff, 0x04, 0x05, 0x06, 0x06, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00,
632     0x01, 0x01, 0x02, 0x04, 0x05, 0x01, 0x01, 0x01, 0x02, 0x04, 0x00, 0x00, 0x01, 0x01, 0x02, 0xff,
633     0x00, 0x00, 0x01, 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x01, 0xfe, 0xff,
634     0xff, 0xff, 0x00, 0xfd, 0xfe, 0xff, 0xff, 0x00, 0xfb, 0xfc, 0xfe, 0xff, 0xff, 0x00, 0x02, 0x14,
635     0x28, 0x46, 0x82, 0xa0, 0xc8, 0xff, 0x04, 0x04, 0x05, 0x05, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00,
636     0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x03, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03,
637     0x03, 0x04, 0xff, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x03, 0x03, 0xff, 0xff, 0x00, 0x00, 0x00,
638     0x01, 0x02, 0x02, 0x02, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x02, 0x02, 0xfe, 0xff, 0xff,
639     0x00, 0x00, 0x00, 0x01, 0x01, 0x02, 0xfe, 0xff, 0xff, 0xff, 0x00, 0x00, 0x01, 0x01, 0x02, 0xfe,
640     0xfe, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x01, 0xfe, 0xfe, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01,
641     0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
642     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
643     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
644     0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x03, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03,
645     0x03, 0x04, 0xff, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x03, 0x03, 0xff, 0xff, 0x00, 0x00, 0x00,
646     0x01, 0x02, 0x02, 0x02, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x02, 0x02, 0xfe, 0xff, 0xff,
647     0x00, 0x00, 0x00, 0x01, 0x01, 0x02, 0xfe, 0xff, 0xff, 0xff, 0x00, 0x00, 0x01, 0x01, 0x02, 0xfe,
648     0xfe, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x01, 0xfe, 0xfe, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01,
649     0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
650     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
651     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
652     0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x03, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03,
653     0x03, 0x04, 0xff, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x03, 0x03, 0xff, 0xff, 0x00, 0x00, 0x00,
654     0x01, 0x02, 0x02, 0x02, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x02, 0x02, 0xfe, 0xff, 0xff,
655     0x00, 0x00, 0x00, 0x01, 0x01, 0x02, 0xfe, 0xff, 0xff, 0xff, 0x00, 0x00, 0x01, 0x01, 0x02, 0xfe,
656     0xfe, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x01, 0xfe, 0xfe, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01,
657     0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
658     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
659     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
660 };
661
662 const unsigned char gen9_avc_qp_adjustment_dist_threshold_max_frame_threshold_dist_qp_adjustment_ipb[576] =
663 {
664     0x01, 0x02, 0x03, 0x05, 0x06, 0x01, 0x01, 0x02, 0x03, 0x05, 0x00, 0x00, 0x01, 0x02, 0x03, 0xff,
665     0x00, 0x00, 0x01, 0x02, 0xff, 0x00, 0x00, 0x00, 0x01, 0xfe, 0xfe, 0xff, 0x00, 0x01, 0xfd, 0xfd,
666     0xff, 0xff, 0x00, 0xfb, 0xfd, 0xfe, 0xff, 0xff, 0xfa, 0xfb, 0xfd, 0xfe, 0xff, 0x00, 0x04, 0x1e,
667     0x3c, 0x50, 0x78, 0x8c, 0xc8, 0xff, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00,
668     0x01, 0x02, 0x03, 0x05, 0x06, 0x01, 0x01, 0x02, 0x03, 0x05, 0x00, 0x01, 0x01, 0x02, 0x03, 0xff,
669     0x00, 0x00, 0x01, 0x02, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x00, 0x01, 0xfe, 0xff,
670     0xff, 0xff, 0x00, 0xfc, 0xfe, 0xff, 0xff, 0x00, 0xfb, 0xfc, 0xfe, 0xff, 0xff, 0x00, 0x04, 0x1e,
671     0x3c, 0x50, 0x78, 0x8c, 0xc8, 0xff, 0x04, 0x05, 0x06, 0x06, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00,
672     0x01, 0x01, 0x02, 0x04, 0x05, 0x01, 0x01, 0x01, 0x02, 0x04, 0x00, 0x00, 0x01, 0x01, 0x02, 0xff,
673     0x00, 0x00, 0x01, 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x01, 0xfe, 0xff,
674     0xff, 0xff, 0x00, 0xfd, 0xfe, 0xff, 0xff, 0x00, 0xfb, 0xfc, 0xfe, 0xff, 0xff, 0x00, 0x02, 0x14,
675     0x28, 0x46, 0x82, 0xa0, 0xc8, 0xff, 0x04, 0x04, 0x05, 0x05, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00,
676     0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x03, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03,
677     0x03, 0x04, 0xff, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x03, 0x03, 0xff, 0xff, 0x00, 0x00, 0x00,
678     0x01, 0x02, 0x02, 0x02, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x02, 0x02, 0xfe, 0xff, 0xff,
679     0x00, 0x00, 0x00, 0x01, 0x01, 0x02, 0xfe, 0xff, 0xff, 0xff, 0x00, 0x00, 0x01, 0x01, 0x02, 0xfe,
680     0xfe, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x01, 0xfe, 0xfe, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01,
681     0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
682     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
683     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
684     0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x03, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03,
685     0x03, 0x04, 0xff, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x03, 0x03, 0xff, 0xff, 0x00, 0x00, 0x00,
686     0x01, 0x02, 0x02, 0x02, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x02, 0x02, 0xfe, 0xff, 0xff,
687     0x00, 0x00, 0x00, 0x01, 0x01, 0x02, 0xfe, 0xff, 0xff, 0xff, 0x00, 0x00, 0x01, 0x01, 0x02, 0xfe,
688     0xfe, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x01, 0xfe, 0xfe, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01,
689     0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
690     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
691     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
692     0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x03, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03,
693     0x03, 0x04, 0xff, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x03, 0x03, 0xff, 0xff, 0x00, 0x00, 0x00,
694     0x01, 0x02, 0x02, 0x02, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x02, 0x02, 0xfe, 0xff, 0xff,
695     0x00, 0x00, 0x00, 0x01, 0x01, 0x02, 0xfe, 0xff, 0xff, 0xff, 0x00, 0x00, 0x01, 0x01, 0x02, 0xfe,
696     0xfe, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x01, 0xfe, 0xfe, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01,
697     0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
698     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
699     0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
700 };
701
702 // SkipVal (DW offset 9) in the following table needs to be changed by Driver based on the BlockbasedSkip and Transform Flag.
703 // Kernel indexes this table based on the MB QP.
704 const unsigned int gen9_avc_mb_brc_const_data[3][AVC_QP_MAX][16] =
705 {
706     //I-slice
707     {
708         //ModeCOST(0), ModeCOST(1), ModeCOST(2), MVCOST(3),   MVCOST(4),   QP(5),       FTQ Thds(6), FTQ Thds(7), RefCost(8),  SkipVal(9),  IntraSF(10) ,Zero(11),  Zero(12),   Zero(13),   Zero(14) ,  Zero(15)
709         {0x0d000003,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff000000,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
710         {0x0f000004,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff010101,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
711         {0x19000004,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff020202,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
712         {0x1a000005,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff030303,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
713         {0x1b000005,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff040404,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
714         {0x1c000006,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff050505,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
715         {0x1e000007,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff060606,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
716         {0x28000008,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff070707,  0x01010001,  0x01010101,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
717         {0x29000009,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff080808,  0x01010001,  0x01010101,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
718         {0x2a00000a,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff090909,  0x03030003,  0x03030303,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
719         {0x2b00000b,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff0a0a0a,  0x03030003,  0x03030303,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
720         {0x2c00000c,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff0b0b0b,  0x06060006,  0x06060606,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
721         {0x2e00000e,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff0c0c0c,  0x06060006,  0x06060606,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
722         {0x38000018,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff0d0d0d,  0x08080008,  0x08080808,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
723         {0x39000019,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff0e0e0e,  0x08080008,  0x08080808,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
724         {0x3a00001b,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff0f0f0f,  0x0b0b000b,  0x0b0b0b0b,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
725         {0x3b00001c,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff101010,  0x0b0b000b,  0x0b0b0b0b,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
726         {0x3c00001d,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff111111,  0x0d0d000d,  0x0d0d0d0d,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
727         {0x3e00001f,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff121212,  0x0d0d000d,  0x0d0d0d0d,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
728         {0x48020028,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff131313,  0x10100010,  0x10101010,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
729         {0x49020029,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff141414,  0x10100010,  0x10101010,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
730         {0x4a03002a,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff151515,  0x13130013,  0x13131313,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
731         {0x4b03002b,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff161616,  0x13130013,  0x13131313,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
732         {0x4c04002b,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff171717,  0x16160016,  0x16161616,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
733         {0x4e04002c,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff181818,  0x16160016,  0x16161616,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
734         {0x5805002e,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff191919,  0x1a1a001a,  0x1a1a1a1a,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
735         {0x5905002f,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff1a1a1a,  0x1a1a001a,  0x1a1a1a1a,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
736         {0x5a06002e,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff1b1b1b,  0x1e1e001e,  0x1e1e1e1e,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
737         {0x5b07002f,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff1c1c1c,  0x1e1e001e,  0x1e1e1e1e,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
738         {0x5c080039,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff1d1d1d,  0x22220022,  0x22222222,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
739         {0x5e09003a,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff1e1e1e,  0x22220022,  0x22222222,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
740         {0x6828003a,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff1f1f1f,  0x27270027,  0x27272727,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
741         {0x6929003b,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff202020,  0x27270027,  0x27272727,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
742         {0x6a2a003c,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff212121,  0x2c2c002c,  0x2c2c2c2c,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
743         {0x6b2c003e,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff222222,  0x2c2c002c,  0x2c2c2c2c,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
744         {0x6c3a003e,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff232323,  0x32320032,  0x32323232,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
745         {0x6e3b0048,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff242424,  0x32320032,  0x32323232,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
746         {0x783c0049,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff252525,  0x38380038,  0x38383838,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
747         {0x793e004a,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff262626,  0x38380038,  0x38383838,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
748         {0x7a3e004b,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff272727,  0x3e3e003e,  0x3e3e3e3e,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
749         {0x7b48004c,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff282828,  0x3e3e003e,  0x3e3e3e3e,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
750         {0x7c49004e,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff292929,  0x45450045,  0x45454545,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
751         {0x7e4a0058,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff2a2a2a,  0x45450045,  0x45454545,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
752         {0x884d0059,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff2b2b2b,  0x4d4d004d,  0x4d4d4d4d,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
753         {0x894f005a,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff2c2c2c,  0x4d4d004d,  0x4d4d4d4d,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
754         {0x8a58005b,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff2d2d2d,  0x55550055,  0x55555555,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
755         {0x8b59005c,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff2e2e2e,  0x55550055,  0x55555555,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
756         {0x8c5c005b,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff2f2f2f,  0x5e5e005e,  0x5e5e5e5e,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
757         {0x8e5d005c,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff303030,  0x5e5e005e,  0x5e5e5e5e,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
758         {0x8f5f005d,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff313131,  0x68680068,  0x68686868,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
759         {0x8f68005f,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff323232,  0x68680068,  0x68686868,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
760         {0x8f690068,   0x00000000,  0x00000000,  0x00000000,  0x00000000,  0xff333333,  0x73730073,  0x73737373,  0x00000000,  0x00000000,  0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000}
761     },
762     //P-slice
763     {
764         //ModeCOST(0), ModeCOST(1), ModeCOST(2), MVCOST(3),   MVCOST(4),   QP(5),       FTQ Thds(6), FTQ Thds(7), RefCost(8),  SkipVal(9),  IntraSF(10) ,Zero(11),  Zero(12),   Zero(13),   Zero(14) ,  Zero(15)
765         {0x391e1a07,   0x06040208,  0x00040005,  0x09050401,  0x0f0e0c0a,  0xff000000,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
766         {0x391e1a07,   0x06040208,  0x00040005,  0x09050401,  0x0f0e0c0a,  0xff010101,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
767         {0x391e1a07,   0x06040208,  0x00040005,  0x09050401,  0x0f0e0c0a,  0xff020202,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
768         {0x391e1a07,   0x06040208,  0x00040005,  0x09050401,  0x0f0e0c0a,  0xff030303,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
769         {0x391e1a07,   0x06040208,  0x00040005,  0x09050401,  0x0f0e0c0a,  0xff040404,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
770         {0x391e1a07,   0x06040208,  0x00040005,  0x09050401,  0x0f0e0c0a,  0xff050505,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
771         {0x391e1a07,   0x06040208,  0x00040005,  0x09050401,  0x0f0e0c0a,  0xff060606,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
772         {0x391e1a07,   0x06040208,  0x00040005,  0x09050401,  0x0f0e0c0a,  0xff070707,  0x01010001,  0x01010101,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
773         {0x391e1a07,   0x06040208,  0x00040005,  0x09050401,  0x0f0e0c0a,  0xff080808,  0x01010001,  0x01010101,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
774         {0x391e1a07,   0x06040208,  0x00040005,  0x09050401,  0x0f0e0c0a,  0xff090909,  0x03030003,  0x03030303,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
775         {0x391e1a07,   0x06040208,  0x00040005,  0x09050401,  0x0f0e0c0a,  0xff0a0a0a,  0x03030003,  0x03030303,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
776         {0x391e1a07,   0x06040208,  0x00040005,  0x09050401,  0x0f0e0c0a,  0xff0b0b0b,  0x06060006,  0x06060606,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
777         {0x391e1a07,   0x06040208,  0x00040005,  0x09050401,  0x0f0e0c0a,  0xff0c0c0c,  0x06060006,  0x06060606,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
778         {0x391e1a07,   0x06040208,  0x00040005,  0x09050401,  0x0f0e0c0a,  0xff0d0d0d,  0x08080008,  0x08080808,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
779         {0x391e1a07,   0x06040208,  0x00040005,  0x09050401,  0x0f0e0c0a,  0xff0e0e0e,  0x08080008,  0x08080808,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
780         {0x391e1a07,   0x06040208,  0x00040005,  0x09050401,  0x0f0e0c0a,  0xff0f0f0f,  0x0b0b000b,  0x0b0b0b0b,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
781         {0x492e2a0e,   0x0d090519,  0x0008000b,  0x190a0802,  0x1f1e1c1a,  0xff101010,  0x0b0b000b,  0x0b0b0b0b,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
782         {0x492e2a0e,   0x0d090519,  0x0008000b,  0x190a0802,  0x1f1e1c1a,  0xff111111,  0x0d0d000d,  0x0d0d0d0d,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
783         {0x492e2a0e,   0x0d090519,  0x0008000b,  0x190a0802,  0x1f1e1c1a,  0xff121212,  0x0d0d000d,  0x0d0d0d0d,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
784         {0x492e2a0e,   0x0d090519,  0x0008000b,  0x190a0802,  0x1f1e1c1a,  0xff131313,  0x10100010,  0x10101010,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
785         {0x4d3b2f1b,   0x1a0d071d,  0x000c0018,  0x1e0f0c03,  0x2b2b291f,  0xff141414,  0x10100010,  0x10101010,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
786         {0x4d3b2f1b,   0x1a0d071d,  0x000c0018,  0x1e0f0c03,  0x2b2b291f,  0xff151515,  0x13130013,  0x13131313,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
787         {0x4d3b2f1b,   0x1a0d071d,  0x000c0018,  0x1e0f0c03,  0x2b2b291f,  0xff161616,  0x13130013,  0x13131313,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
788         {0x593e3a1e,   0x1d190a29,  0x0018001b,  0x291a1804,  0x2f2e2c2a,  0xff171717,  0x16160016,  0x16161616,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
789         {0x593e3a1e,   0x1d190a29,  0x0018001b,  0x291a1804,  0x2f2e2c2a,  0xff181818,  0x16160016,  0x16161616,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
790         {0x593e3a1e,   0x1d190a29,  0x0018001b,  0x291a1804,  0x2f2e2c2a,  0xff191919,  0x1a1a001a,  0x1a1a1a1a,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
791         {0x5b493d29,   0x281c0d2b,  0x001a001e,  0x2b1d1a05,  0x39392f2d,  0xff1a1a1a,  0x1a1a001a,  0x1a1a1a1a,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
792         {0x5d4b3f2b,   0x2a1e0f2d,  0x001c0028,  0x2e1f1c06,  0x3b3b392f,  0xff1b1b1b,  0x1e1e001e,  0x1e1e1e1e,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
793         {0x5d4b3f2b,   0x2a1e0f2d,  0x001c0028,  0x2e1f1c06,  0x3b3b392f,  0xff1c1c1c,  0x1e1e001e,  0x1e1e1e1e,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
794         {0x5f4c492c,   0x2c28192f,  0x001e002a,  0x38291e07,  0x3d3c3b39,  0xff1d1d1d,  0x22220022,  0x22222222,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
795         {0x694e4a2e,   0x2d291b39,  0x0028002b,  0x392a2808,  0x3f3e3c3a,  0xff1e1e1e,  0x22220022,  0x22222222,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
796         {0x6a584b38,   0x2f2a1c3a,  0x0029002c,  0x3a2b2909,  0x48483e3b,  0xff1f1f1f,  0x27270027,  0x27272727,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
797         {0x6b594d39,   0x382c1d3b,  0x002a002e,  0x3b2d2a0a,  0x49493f3d,  0xff202020,  0x27270027,  0x27272727,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
798         {0x6c5a4e3a,   0x392d1f3c,  0x002b002f,  0x3c2e2b0b,  0x4a4a483e,  0xff212121,  0x2c2c002c,  0x2c2c2c2c,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
799         {0x6e5b583b,   0x3b2f293e,  0x002d0039,  0x3f382d0d,  0x4c4b4a48,  0xff222222,  0x2c2c002c,  0x2c2c2c2c,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
800         {0x6f5c593c,   0x3c38293f,  0x002e003a,  0x48392e0e,  0x4d4c4b49,  0xff232323,  0x32320032,  0x32323232,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
801         {0x795e5a3e,   0x3d392b49,  0x0038003b,  0x493a3818,  0x4f4e4c4a,  0xff242424,  0x32320032,  0x32323232,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
802         {0x7a685b48,   0x3f3a2c4a,  0x0039003c,  0x4a3b3919,  0x58584e4b,  0xff252525,  0x38380038,  0x38383838,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
803         {0x7b695d49,   0x483c2d4b,  0x003a003e,  0x4b3d3a1a,  0x59594f4d,  0xff262626,  0x38380038,  0x38383838,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
804         {0x7d6a5e4a,   0x4a3d2f4c,  0x003c0048,  0x4d3e3c1c,  0x5b5a594e,  0xff272727,  0x3e3e003e,  0x3e3e3e3e,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
805         {0x7e6b684b,   0x4a3e384d,  0x003d0049,  0x4e483d1d,  0x5c5b5958,  0xff282828,  0x3e3e003e,  0x3e3e3e3e,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
806         {0x886d694d,   0x4c483a4f,  0x003f004a,  0x58493f1f,  0x5e5d5b59,  0xff292929,  0x45450045,  0x45454545,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
807         {0x896e6a4e,   0x4d493b59,  0x0048004b,  0x594a4828,  0x5f5e5c5a,  0xff2a2a2a,  0x45450045,  0x45454545,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
808         {0x8a786b58,   0x4f4a3c5a,  0x0049004c,  0x5a4b4929,  0x68685e5b,  0xff2b2b2b,  0x4d4d004d,  0x4d4d4d4d,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
809         {0x8b796d59,   0x584c3d5b,  0x004a004e,  0x5b4d4a2a,  0x69695f5d,  0xff2c2c2c,  0x4d4d004d,  0x4d4d4d4d,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
810         {0x8c7a6e5a,   0x594d3f5c,  0x004b004f,  0x5d4e4b2b,  0x6b6a685e,  0xff2d2d2d,  0x55550055,  0x55555555,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
811         {0x8e7b785b,   0x5b4f485e,  0x004d0059,  0x5e584d2d,  0x6c6b6a68,  0xff2e2e2e,  0x55550055,  0x55555555,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
812         {0x8f7c795c,   0x5c58495f,  0x004e005a,  0x68594e2e,  0x6d6c6b69,  0xff2f2f2f,  0x5e5e005e,  0x5e5e5e5e,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
813         {0x8f7e7a5e,   0x5d594b69,  0x0058005b,  0x695a5838,  0x6f6e6c6a,  0xff303030,  0x5e5e005e,  0x5e5e5e5e,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
814         {0x8f887b68,   0x5f5a4c6a,  0x0059005c,  0x6a5b5939,  0x6f6f6e6b,  0xff313131,  0x68680068,  0x68686868,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
815         {0x8f897d69,   0x685c4d6b,  0x005a005e,  0x6b5d5a3a,  0x6f6f6f6d,  0xff323232,  0x68680068,  0x68686868,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
816         {0x8f8a7e6a,   0x695d4f6c,  0x005b0068,  0x6d5e5b3b,  0x6f6f6f6e,  0xff333333,  0x73730073,  0x73737373,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000}
817     },
818     //B-slice
819     {
820         //ModeCOST(0), ModeCOST(1), ModeCOST(2), MVCOST(3),   MVCOST(4),   QP(5),       FTQ Thds(6), FTQ Thds(7), RefCost(8),  SkipVal(9),  IntraSF(10) ,Zero(11),  Zero(12),   Zero(13),   Zero(14) ,  Zero(15)
821         {0x3a2a2907,   0x0a08060c,  0x00040206,  0x06020200,  0x180e0c0a,  0xff000000,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
822         {0x3a2a2907,   0x0a08060c,  0x00040206,  0x06020200,  0x180e0c0a,  0xff010101,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
823         {0x3a2a2907,   0x0a08060c,  0x00040206,  0x06020200,  0x180e0c0a,  0xff020202,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
824         {0x3a2a2907,   0x0a08060c,  0x00040206,  0x06020200,  0x180e0c0a,  0xff030303,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
825         {0x3a2a2907,   0x0a08060c,  0x00040206,  0x06020200,  0x180e0c0a,  0xff040404,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
826         {0x3a2a2907,   0x0a08060c,  0x00040206,  0x06020200,  0x180e0c0a,  0xff050505,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
827         {0x3a2a2907,   0x0a08060c,  0x00040206,  0x06020200,  0x180e0c0a,  0xff060606,  0x00000000,  0x00000000,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
828         {0x3a2a2907,   0x0a08060c,  0x00040206,  0x06020200,  0x180e0c0a,  0xff070707,  0x01010001,  0x01010101,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
829         {0x3a2a2907,   0x0a08060c,  0x00040206,  0x06020200,  0x180e0c0a,  0xff080808,  0x01010001,  0x01010101,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
830         {0x3a2a2907,   0x0a08060c,  0x00040206,  0x06020200,  0x180e0c0a,  0xff090909,  0x03030003,  0x03030303,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
831         {0x3a2a2907,   0x0a08060c,  0x00040206,  0x06020200,  0x180e0c0a,  0xff0a0a0a,  0x03030003,  0x03030303,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
832         {0x3a2a2907,   0x0a08060c,  0x00040206,  0x06020200,  0x180e0c0a,  0xff0b0b0b,  0x06060006,  0x06060606,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
833         {0x3a2a2907,   0x0a08060c,  0x00040206,  0x06020200,  0x180e0c0a,  0xff0c0c0c,  0x06060006,  0x06060606,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
834         {0x3a2a2907,   0x0a08060c,  0x00040206,  0x06020200,  0x180e0c0a,  0xff0d0d0d,  0x08080008,  0x08080808,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
835         {0x3a2a2907,   0x0a08060c,  0x00040206,  0x06020200,  0x180e0c0a,  0xff0e0e0e,  0x08080008,  0x08080808,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
836         {0x3a2a2907,   0x0a08060c,  0x00040206,  0x06020200,  0x180e0c0a,  0xff0f0f0f,  0x0b0b000b,  0x0b0b0b0b,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
837         {0x4a3a390e,   0x1b190d1c,  0x0008040c,  0x0c040400,  0x281e1c1a,  0xff101010,  0x0b0b000b,  0x0b0b0b0b,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
838         {0x4a3a390e,   0x1b190d1c,  0x0008040c,  0x0c040400,  0x281e1c1a,  0xff111111,  0x0d0d000d,  0x0d0d0d0d,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
839         {0x4a3a390e,   0x1b190d1c,  0x0008040c,  0x0c040400,  0x281e1c1a,  0xff121212,  0x0d0d000d,  0x0d0d0d0d,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
840         {0x4a3a390e,   0x1b190d1c,  0x0008040c,  0x0c040400,  0x281e1c1a,  0xff131313,  0x10100010,  0x10101010,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
841         {0x4f3f3d1b,   0x281d1a29,  0x000c0619,  0x19060600,  0x2c2b291f,  0xff141414,  0x10100010,  0x10101010,  0x00000000,  0x00000000,  0x0000000c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
842         {0x4f3f3d1b,   0x281d1a29,  0x000c0619,  0x19060600,  0x2c2b291f,  0xff151515,  0x13130013,  0x13131313,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
843         {0x4f3f3d1b,   0x281d1a29,  0x000c0619,  0x19060600,  0x2c2b291f,  0xff161616,  0x13130013,  0x13131313,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
844         {0x5a4a491e,   0x2b291d2c,  0x0018081c,  0x1c080800,  0x382e2c2a,  0xff171717,  0x16160016,  0x16161616,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
845         {0x5a4a491e,   0x2b291d2c,  0x0018081c,  0x1c080800,  0x382e2c2a,  0xff181818,  0x16160016,  0x16161616,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
846         {0x5a4a491e,   0x2b291d2c,  0x0018081c,  0x1c080800,  0x382e2c2a,  0xff191919,  0x1a1a001a,  0x1a1a1a1a,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
847         {0x5d4d4b29,   0x2d2b282f,  0x001a0a1f,  0x1f0a0a00,  0x3a392f2d,  0xff1a1a1a,  0x1a1a001a,  0x1a1a1a1a,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
848         {0x5f4f4d2b,   0x382d2a39,  0x001c0c29,  0x290c0c00,  0x3c3b392f,  0xff1b1b1b,  0x1e1e001e,  0x1e1e1e1e,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
849         {0x5f4f4d2b,   0x382d2a39,  0x001c0c29,  0x290c0c00,  0x3c3b392f,  0xff1c1c1c,  0x1e1e001e,  0x1e1e1e1e,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
850         {0x69594f2c,   0x392f2b3b,  0x001e0e2b,  0x2b0e0e00,  0x3e3c3b39,  0xff1d1d1d,  0x22220022,  0x22222222,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
851         {0x6a5a592e,   0x3b392d3c,  0x0028182c,  0x2c181800,  0x483e3c3a,  0xff1e1e1e,  0x22220022,  0x22222222,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
852         {0x6b5b5a38,   0x3c3a2f3e,  0x0029192e,  0x2e191900,  0x49483e3b,  0xff1f1f1f,  0x27270027,  0x27272727,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
853         {0x6d5d5b39,   0x3d3b383f,  0x002a1a2f,  0x2f1a1a00,  0x4a493f3d,  0xff202020,  0x27270027,  0x27272727,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
854         {0x6e5e5c3a,   0x3e3c3948,  0x002b1b38,  0x381b1b00,  0x4b4a483e,  0xff212121,  0x2c2c002c,  0x2c2c2c2c,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
855         {0x78685e3b,   0x493e3b4a,  0x002d1d3a,  0x3a1d1d00,  0x4d4b4a48,  0xff222222,  0x2c2c002c,  0x2c2c2c2c,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
856         {0x79695f3c,   0x493f3b4b,  0x002e1e3b,  0x3b1e1e00,  0x4e4c4b49,  0xff232323,  0x32320032,  0x32323232,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
857         {0x7a6a693e,   0x4b493d4c,  0x0038283c,  0x3c282800,  0x584e4c4a,  0xff242424,  0x32320032,  0x32323232,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
858         {0x7b6b6a48,   0x4c4a3f4e,  0x0039293e,  0x3e292900,  0x59584e4b,  0xff252525,  0x38380038,  0x38383838,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
859         {0x7d6d6b49,   0x4d4b484f,  0x003a2a3f,  0x3f2a2a00,  0x5a594f4d,  0xff262626,  0x38380038,  0x38383838,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
860         {0x7e6e6c4a,   0x4f4c4959,  0x003c2c49,  0x492c2c00,  0x5c5a594e,  0xff272727,  0x3e3e003e,  0x3e3e3e3e,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
861         {0x88786d4b,   0x584d4a59,  0x003d2d49,  0x492d2d00,  0x5d5b5958,  0xff282828,  0x3e3e003e,  0x3e3e3e3e,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
862         {0x89796f4d,   0x5a4f4c5b,  0x003f2f4b,  0x4b2f2f00,  0x5f5d5b59,  0xff292929,  0x45450045,  0x45454545,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
863         {0x8a7a794e,   0x5b594d5c,  0x0048384c,  0x4c383800,  0x685e5c5a,  0xff2a2a2a,  0x45450045,  0x45454545,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
864         {0x8b7b7a58,   0x5c5a4f5e,  0x0049394e,  0x4e393900,  0x69685e5b,  0xff2b2b2b,  0x4d4d004d,  0x4d4d4d4d,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
865         {0x8d7d7b59,   0x5d5b585f,  0x004a3a4f,  0x4f3a3a00,  0x6a695f5d,  0xff2c2c2c,  0x4d4d004d,  0x4d4d4d4d,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
866         {0x8e7e7c5a,   0x5f5c5968,  0x004b3b58,  0x583b3b00,  0x6b6a685e,  0xff2d2d2d,  0x55550055,  0x55555555,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
867         {0x8f887e5b,   0x685e5a6a,  0x004d3d5a,  0x5a3d3d00,  0x6d6b6a68,  0xff2e2e2e,  0x55550055,  0x55555555,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
868         {0x8f897f5c,   0x695f5c6b,  0x004e3e5b,  0x5b3e3e00,  0x6e6c6b69,  0xff2f2f2f,  0x5e5e005e,  0x5e5e5e5e,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
869         {0x8f8a895e,   0x6b695d6c,  0x0058485c,  0x5c484800,  0x6f6e6c6a,  0xff303030,  0x5e5e005e,  0x5e5e5e5e,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
870         {0x8f8b8a68,   0x6c6a5f6e,  0x0059495e,  0x5e494900,  0x6f6f6e6b,  0xff313131,  0x68680068,  0x68686868,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
871         {0x8f8d8b69,   0x6d6b686f,  0x005a4a5f,  0x5f4a4a00,  0x6f6f6f6d,  0xff323232,  0x68680068,  0x68686868,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000},
872         {0x8f8e8c6a,   0x6f6c6979,  0x005b4b69,  0x694b4b00,  0x6f6f6f6e,  0xff333333,  0x73730073,  0x73737373,  0x00000000,  0x00000000,  0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000}
873     }
874 };
875
876 // AVC MBEnc RefCost tables, index [CodingType][QP]
877 // QP is from 0 - 51, pad it to 64 since BRC needs each subarray size to be 128bytes
878 const unsigned short gen9_avc_ref_cost[3][64] =
879 {
880     // I-frame
881     {
882         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
883         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
884         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
885         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
886         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
887         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
888         0x0000, 0x0000, 0x0000, 0x0000
889     },
890     // P-slice
891     {
892         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
893         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
894         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
895         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
896         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
897         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
898         0x0000, 0x0000, 0x0000, 0x0000
899     },
900     //B-slice
901     {
902         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
903         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
904         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
905         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
906         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
907         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
908         0x0000, 0x0000, 0x0000, 0x0000
909     }
910 };
911
912 const bool gen9_avc_mbbrc_enable[PRESET_NUM] =
913 {
914     false, true, true, false, false, false, false, false
915 };
916
917 const unsigned int gen9_avc_super_hme[PRESET_NUM] =
918 {
919     0, 1, 1, 1, 1, 1, 1, 1
920 };
921
922 const unsigned int gen9_avc_ultra_hme[PRESET_NUM] =
923 {
924     0, 1, 1, 1, 1, 1, 1, 0
925 };
926
927 // 1 for P, 3 for P & B
928 const unsigned int gen9_avc_all_fractional[PRESET_NUM] =
929 {
930     0, 3, 3, 3, 3, 3, 3, 0
931 };
932
933 const unsigned char gen9_avc_max_ref_id0_progressive_4k[PRESET_NUM] =
934 {
935     0, 3, 3, 2, 2, 2, 0, 0
936 };
937
938 const unsigned char gen9_avc_max_ref_id0[PRESET_NUM] =
939 {
940     0, 7, 5, 2, 2, 2, 0, 0
941 };
942
943 const unsigned char gen9_avc_max_b_ref_id0[PRESET_NUM] =
944 {
945     0, 3, 3, 1, 1, 1, 0, 0
946 };
947
948 const unsigned char gen9_avc_max_ref_id1[PRESET_NUM] =
949 {
950     0, 1, 1, 1, 1, 1, 0, 0
951 };
952
953 const unsigned int gen9_avc_inter_rounding_p[PRESET_NUM] =
954 {
955     // gen9 and gen95
956     0, 3, 3, 3, 3, 3, 3, 3
957 };
958
959 const unsigned int gen9_avc_inter_rounding_b_ref[PRESET_NUM] =
960 {
961     // gen9 and gen95
962     0, 2, 2, 2, 2, 2, 2, 2
963 };
964
965 const unsigned int gen9_avc_inter_rounding_b[PRESET_NUM] =
966 {
967     // gen9 and gen95
968     0, 0, 0, 0, 0, 0, 0, 0
969 };
970
971 // This applies only for progressive pictures. For interlaced, CAF is currently not disabled.
972 const unsigned int gen9_avc_disable_all_fractional_check_for_high_res[PRESET_NUM] =
973 {
974     0, 0, 0, 1, 1, 1, 1, 1
975 };
976
977 const unsigned char gen9_avc_adaptive_inter_rounding_p[AVC_QP_MAX] =
978 {
979 //QP =  0   1   2   3   4   5   6   7   8   9   10  11  12
980         4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  //QP=[0~12]
981         4,  4,  4,  4,  4,  3,  3,  3,  3,  3,  3,  3,  3,  //QP=[13~25]
982         3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  //QP=[26~38]
983         3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3   //QP=[39~51]
984 };
985
986 const unsigned char gen9_avc_adaptive_inter_rounding_b[AVC_QP_MAX] =
987 {
988 //QP =  0   1   2   3   4   5   6   7   8   9   10  11  12
989         4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  4,  //QP=[0~12]
990         4,  3,  3,  3,  3,  3,  3,  0,  0,  0,  0,  0,  0,  //QP=[13~25]
991         0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  //QP=[26~38]
992         0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0   //QP=[39~51]
993 };
994
995 const unsigned char gen9_avc_adaptive_inter_rounding_p_without_b[AVC_QP_MAX] =
996 {
997 //QP =  0   1   2   3   4   5   6   7   8   9   10  11  12
998         3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  3,  //QP=[0~12]
999         3,  3,  3,  3,  3,  3,  3,  3,  1,  0,  0,  0,  0,  //QP=[13~25]
1000         0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  //QP=[26~38]
1001         0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0   //QP=[39~51]
1002 };
1003
1004 const unsigned int gen9_avc_trellis_quantization_enable[PRESET_NUM] =
1005 {
1006     //gen9 and gen95
1007     0, 1, 0, 0, 0, 0, 0, 0
1008 };
1009
1010 const unsigned int gen9_avc_trellis_quantization_rounding[PRESET_NUM] =
1011 {
1012     0, 6, 0, 0, 0, 0, 0, 0
1013 };
1014
1015 const unsigned int gen9_avc_enable_adaptive_trellis_quantization[PRESET_NUM] =
1016 {
1017     //gen9 and gen95
1018     0, 1, 0, 0, 0, 0, 0, 0
1019 };
1020
1021 const unsigned int gen9_avc_super_combine_dist[PRESET_NUM + 1] =
1022 {
1023     0, 1, 1, 5, 5, 5, 9, 9, 0
1024 };
1025
1026 const unsigned char gen9_avc_b_me_method[PRESET_NUM + 1] =
1027 {
1028     0, 4, 4, 6, 6, 6, 6, 4, 7
1029 };
1030
1031 const unsigned char gen9_avc_p_me_method[PRESET_NUM + 1] =
1032 {
1033     0, 4, 4, 6, 6, 6, 6, 4, 7
1034 };
1035
1036 const unsigned int gen9_avc_enable_adaptive_search[PRESET_NUM] =
1037 {
1038     0, 1, 1, 1, 1, 1, 0, 0
1039 };
1040
1041 const unsigned int gen9_avc_max_len_sp[PRESET_NUM] =
1042 {
1043     0, 57, 57, 25, 25, 25, 16, 9
1044 };
1045
1046 const unsigned int gen9_avc_max_ftq_based_skip[PRESET_NUM] =
1047 {
1048     0, 3, 3, 3, 3, 3, 3, 0
1049 };
1050
1051 const unsigned int gen9_avc_mr_disable_qp_check[PRESET_NUM] =
1052 {
1053     0, 1, 0, 0, 0, 0, 0, 0
1054 };
1055
1056 const unsigned int gen9_avc_multi_pred[PRESET_NUM] =
1057 {
1058     0, 3, 3, 0, 0, 0, 0, 0
1059 };
1060
1061 const unsigned int gen9_avc_hme_b_combine_len[PRESET_NUM] =
1062 {
1063     0, 8, 8, 8, 8, 8, 8, 8
1064 };
1065 const unsigned int gen9_avc_hme_combine_len[PRESET_NUM] =
1066 {
1067     0, 8, 8, 8, 8, 8, 16, 8
1068 };
1069
1070 const unsigned int gen9_avc_search_x[PRESET_NUM] =
1071 {
1072     0, 48, 48, 48, 48, 48, 48, 28
1073 };
1074 const unsigned int gen9_avc_search_y[PRESET_NUM] =
1075 {
1076     0, 40, 40, 40, 40, 40, 40, 28
1077 };
1078
1079 const unsigned int gen9_avc_b_search_x[PRESET_NUM] =
1080 {
1081     0, 32, 32, 32, 32, 32, 32, 24
1082 };
1083 const unsigned int gen9_avc_b_search_y[PRESET_NUM] =
1084 {
1085     0, 32, 32, 32, 32, 32, 32, 24
1086 };
1087
1088 const unsigned char gen9_avc_enable_adaptive_tx_decision[PRESET_NUM] =
1089 {
1090     0, 1, 1, 1, 1, 1, 1, 0
1091 };
1092
1093 const unsigned char gen9_avc_kernel_mode[PRESET_NUM] =
1094 {
1095     1,  0,  0, 1, 1, 1, 1, 2
1096 };
1097
1098
1099 /* Gen95  */
1100 const unsigned int gen95_avc_trellis_quantization_rounding[PRESET_NUM] =
1101 {
1102     0, 3, 0, 0, 0, 0, 0, 0
1103 };
1104
1105 // AVC MBEnc CURBE init data
1106 const unsigned int gen95_avc_mbenc_curbe_normal_i_frame_init_data[GEN9_AVC_MBENC_CURBE_SIZE] =
1107 {
1108     0x00000082, 0x00000000, 0x00003910, 0x00a83000, 0x00000000, 0x28300000, 0x05000000, 0x00000000,
1109     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1110     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1111     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1112     0x80800000, 0x00040c24, 0x00000000, 0xffff00ff, 0x40000000, 0x00000080, 0x00003900, 0x28300000,
1113     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000002,
1114     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1115     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1116     0x00000000, 0x00000000, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1117     0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0xffffffff, 0xffffffff,
1118     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0x00000000, 0x00000000, 0x00000000
1119 };
1120
1121
1122 const unsigned int gen95_avc_mbenc_curbe_normal_p_frame_init_data[GEN9_AVC_MBENC_CURBE_SIZE] =
1123 {
1124     0x000000a3, 0x00000008, 0x00003910, 0x00ae3000, 0x30000000, 0x28300000, 0x05000000, 0x01400060,
1125     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1126     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1127     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1128     0x80010000, 0x00040c24, 0x00000000, 0xffff00ff, 0x60000000, 0x000000a1, 0x00003900, 0x28300000,
1129     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x08000002,
1130     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1131     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1132     0x00000000, 0x00000000, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1133     0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0xffffffff, 0xffffffff,
1134     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0x00000000, 0x00000000, 0x00000000
1135 };
1136
1137 const unsigned int gen95_avc_mbenc_curbe_normal_b_frame_init_data[GEN9_AVC_MBENC_CURBE_SIZE] =
1138 {
1139     0x000000a3, 0x00200008, 0x00003910, 0x00aa7700, 0x50020000, 0x20200000, 0x05000000, 0xff400000,
1140     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1141     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1142     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1143     0x01010000, 0x00040c24, 0x00000000, 0xffff00ff, 0x60000000, 0x000000a1, 0x00003900, 0x28300000,
1144     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x08000002,
1145     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1146     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1147     0x00000000, 0x00000000, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1148     0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0xffffffff, 0xffffffff,
1149     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0x00000000, 0x00000000, 0x00000000
1150 };
1151
1152 // AVC I_DIST CURBE init data
1153 const unsigned int gen95_avc_mbenc_curbe_i_frame_dist_init_data[GEN9_AVC_MBENC_CURBE_SIZE] =
1154 {
1155     0x00000082, 0x00200008, 0x001e3910, 0x00a83000, 0x90000000, 0x28300000, 0x00000000, 0x00000000,
1156     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xff000000, 0x00000000, 0x00000000,
1157     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1158     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000100,
1159     0x80800000, 0x00000000, 0x00000800, 0xffff00ff, 0x40000000, 0x00000080, 0x00003900, 0x28300000,
1160     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1161     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
1162     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xffffffff, 0xffffffff, 0xffffffff,
1163     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1164     0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff, 0xffffffff,
1165     0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000
1166 };
1167
1168 // Lambda values for Trellis Quantization
1169 const unsigned int gen95_avc_tq_lambda_i_frame[AVC_QP_MAX][2] =
1170 {
1171     {0x00070000, 0x00060000},
1172     {0x00080000, 0x00080000},
1173     {0x000a0000, 0x00090000},
1174     {0x000d0000, 0x000c0000},
1175     {0x00110000, 0x000f0000},
1176     {0x00150000, 0x00130000},
1177     {0x001b0000, 0x00180000},
1178     {0x00220000, 0x001f0000},
1179     {0x002b0000, 0x00270000},
1180     {0x00360000, 0x00310000},
1181     {0x00440000, 0x003e0000},
1182     {0x00550000, 0x004e0000},
1183     {0x006c0000, 0x00630000},
1184     {0x00870000, 0x007d0000},
1185     {0x00ab0000, 0x009d0000},
1186     {0x00d70000, 0x00c70000},
1187     {0x010f0000, 0x00fb0000},
1188     {0x01560000, 0x013d0000},
1189     {0x01af0000, 0x01900000},
1190     {0x021f0000, 0x01f90000},
1191     {0x02ac0000, 0x027e0000},
1192     {0x035e0000, 0x03260000},
1193     {0x043e0000, 0x03fa0000},
1194     {0x057a0000, 0x05070000},
1195     {0x06f90000, 0x065a0000},
1196     {0x08770000, 0x08060000},
1197     {0x0af50000, 0x0a240000},
1198     {0x0d720000, 0x0cd10000},
1199     {0x10ef0000, 0x10340000},
1200     {0x156a0000, 0x147b0000},
1201     {0x1ae50000, 0x19e50000},
1202     {0x225d0000, 0x20be0000},
1203     {0x2ad50000, 0x29670000},
1204     {0x36490000, 0x345c0000},
1205     {0x443b0000, 0x423a0000},
1206     {0x56290000, 0x53c50000},
1207     {0x6c930000, 0x69f90000},
1208     {0x88770000, 0x86130000},
1209     {0xabd30000, 0xa9a40000},
1210     {0xd8a60000, 0xd6aa0000},
1211
1212     // Rounding offsets
1213     {0xfffa0000, 0xfffa0000},
1214     {0xfffa0000, 0xfffa0000},
1215     {0xfffa0000, 0xfffa0000},
1216     {0xfffa0000, 0xfffa0000},
1217     {0xfffa0000, 0xfffa0000},
1218     {0xfffa0000, 0xfffa0000},
1219     {0xfffa0000, 0xfffa0000},
1220     {0xfffa0000, 0xfffa0000},
1221     {0xfffa0000, 0xfffa0000},
1222     {0xfffa0000, 0xfffa0000},
1223     {0xfffa0000, 0xfffa0000},
1224     {0xfffa0000, 0xfffa0000}
1225 };
1226
1227 const unsigned int gen95_avc_tq_lambda_p_frame[AVC_QP_MAX][2] =
1228 {
1229     {0x00070009, 0x00060009},
1230     {0x0008000c, 0x0008000c},
1231     {0x000a000f, 0x0009000f},
1232     {0x000d0013, 0x000c0013},
1233     {0x00110018, 0x000f0018},
1234     {0x0015001e, 0x0013001e},
1235     {0x001b0026, 0x00180026},
1236     {0x00220030, 0x001f0030},
1237     {0x002b003c, 0x0027003c},
1238     {0x0036004c, 0x0031004c},
1239     {0x00440060, 0x003e0060},
1240     {0x00550079, 0x004e0079},
1241     {0x006c0099, 0x00630099},
1242     {0x008700c1, 0x007d00c1},
1243     {0x00ab00f3, 0x009d00f3},
1244     {0x00d70132, 0x00c70133},
1245     {0x010f0181, 0x00fb0183},
1246     {0x015601e5, 0x013d01e8},
1247     {0x01af0264, 0x01900268},
1248     {0x021f0303, 0x01f90309},
1249     {0x02ac03cb, 0x027e03d5},
1250     {0x035e04c8, 0x032604d5},
1251     {0x043e0606, 0x03fa061a},
1252     {0x057a07c7, 0x050707b3},
1253     {0x06f909e6, 0x065a09b8},
1254     {0x08770c05, 0x08060c45},
1255     {0x0af50f8e, 0x0a240f7e},
1256     {0x0d721317, 0x0cd1138f},
1257     {0x10ef180a, 0x103418b2},
1258     {0x156a1e67, 0x147b1f30},
1259     {0x1ae5262e, 0x19e52762},
1260     {0x225d30c9, 0x20be31bd},
1261     {0x2ad53cce, 0x29673ed2},
1262     {0x36494d11, 0x345c4f59},
1263     {0x443b60dd, 0x423a643c},
1264     {0x56297a51, 0x53c57e9f},
1265     {0x6c939a22, 0x69f99ff9},
1266     {0x8877c1ba, 0x8613ca1e},
1267     {0xabd3ffef, 0xa9a4ffef},
1268     {0xd8a6ffef, 0xd6aaffef},
1269     {0xfffaffef, 0xfffaffef},
1270     {0xfffaffef, 0xfffaffef},
1271     {0xfffaffef, 0xfffaffef},
1272     {0xfffaffef, 0xfffaffef},
1273     {0xfffaffef, 0xfffaffef},
1274     {0xfffaffef, 0xfffaffef},
1275     {0xfffaffef, 0xfffaffef},
1276     {0xfffaffef, 0xfffaffef},
1277     {0xfffaffef, 0xfffaffef},
1278     {0xfffaffef, 0xfffaffef},
1279     {0xfffaffef, 0xfffaffef},
1280     {0xfffaffef, 0xfffaffef}
1281 };
1282
1283 const unsigned int gen95_avc_tq_lambda_b_frame[AVC_QP_MAX][2] =
1284 {
1285     {0x00070009, 0x00060009},
1286     {0x0008000c, 0x0008000c},
1287     {0x000a000f, 0x0009000f},
1288     {0x000d0013, 0x000c0013},
1289     {0x00110018, 0x000f0018},
1290     {0x0015001e, 0x0013001e},
1291     {0x001b0026, 0x00180026},
1292     {0x00220030, 0x001f0030},
1293     {0x002b003c, 0x0027003c},
1294     {0x0036004c, 0x0031004c},
1295     {0x00440060, 0x003e0060},
1296     {0x00550079, 0x004e0079},
1297     {0x006c0099, 0x00630099},
1298     {0x008700c1, 0x007d00c1},
1299     {0x00ab00f3, 0x009d00f3},
1300     {0x00d70132, 0x00c70133},
1301     {0x010f0181, 0x00fb0183},
1302     {0x015601e5, 0x013d01e8},
1303     {0x01af0264, 0x01900268},
1304     {0x021f0303, 0x01f90309},
1305     {0x02ac03cb, 0x027e03d5},
1306     {0x035e04c8, 0x032604d5},
1307     {0x043e0606, 0x03fa061a},
1308     {0x057a07c7, 0x050707b3},
1309     {0x06f909e6, 0x065a09b8},
1310     {0x08770c05, 0x08060c45},
1311     {0x0af50f8e, 0x0a240f7e},
1312     {0x0d721317, 0x0cd1138f},
1313     {0x10ef180a, 0x103418b2},
1314     {0x156a1e67, 0x147b1f30},
1315     {0x1ae5262e, 0x19e52762},
1316     {0x225d30c9, 0x20be31bd},
1317     {0x2ad53cce, 0x29673ed2},
1318     {0x36494d11, 0x345c4f59},
1319     {0x443b60dd, 0x423a643c},
1320     {0x56297a51, 0x53c57e9f},
1321     {0x6c939a22, 0x69f99ff9},
1322     {0x8877c1ba, 0x8613ca1e},
1323     {0xabd3ffef, 0xa9a4ffef},
1324     {0xd8a6ffef, 0xd6aaffef},
1325     {0xfffaffef, 0xfffaffef},
1326     {0xfffaffef, 0xfffaffef},
1327     {0xfffaffef, 0xfffaffef},
1328     {0xfffaffef, 0xfffaffef},
1329     {0xfffaffef, 0xfffaffef},
1330     {0xfffaffef, 0xfffaffef},
1331     {0xfffaffef, 0xfffaffef},
1332     {0xfffaffef, 0xfffaffef},
1333     {0xfffaffef, 0xfffaffef},
1334     {0xfffaffef, 0xfffaffef},
1335     {0xfffaffef, 0xfffaffef},
1336     {0xfffaffef, 0xfffaffef}
1337 };
1338
1339 const unsigned short gen95_avc_lambda_data[256] = {
1340      9,     7,     9,     6,    12,     8,    12,     8,    15,    10,    15,     9,    19,    13,    19,    12,    24,
1341     17,    24,    15,    30,    21,    30,    19,    38,    27,    38,    24,    48,    34,    48,    31,    60,    43,
1342     60,    39,    76,    54,    76,    49,    96,    68,    96,    62,   121,    85,   121,    78,   153,   108,   153,
1343     99,   193,   135,   193,   125,   243,   171,   243,   157,   306,   215,   307,   199,   385,   271,   387,   251,
1344    485,   342,   488,   317,   612,   431,   616,   400,   771,   543,   777,   505,   971,   684,   981,   638,  1224,
1345    862,  1237,   806,  1542,  1086,  1562,  1018,  1991,  1402,  1971,  1287,  2534,  1785,  2488,  1626,  3077,  2167,
1346   3141,  2054,  3982,  2805,  3966,  2596,  4887,  3442,  5007,  3281,  6154,  4335,  6322,  4148,  7783,  5482,  7984,
1347   5243,  9774,  6885, 10082,  6629, 12489,  8797, 12733,  8382, 15566, 10965, 16082, 10599, 19729, 13897, 20313, 13404,
1348  24797, 17467, 25660, 16954, 31313, 22057, 32415, 21445, 39458, 27795, 40953, 27129, 49594, 34935, 51742, 34323, 61440,
1349  43987, 61440, 43428, 61440, 55462, 61440, 54954, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440,
1350  61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440,
1351  61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440, 61440,
1352  61440, 61440, 61440, 61440,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1353      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1354      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1355      0,
1356 };
1357
1358 const unsigned char gen95_avc_ftq25[64] = //27 value 4 dummy
1359 {
1360     0,                                      //qp=0
1361     0, 0, 0, 0, 0, 0,                       //qp=1,2;3,4;5,6;
1362     1, 1, 3, 3, 6, 6, 8, 8, 11, 11,         //qp=7,8;9,10;11,12;13,14;15;16
1363     13, 13, 16, 16, 19, 19, 22, 22, 26, 26, //qp=17,18;19,20;21,22;23,24;25,26
1364     30, 30, 34, 34, 39, 39, 44, 44, 50, 50, //qp=27,28;29,30;31,32;33,34;35,36
1365     56, 56, 62, 62, 69, 69, 77, 77, 85, 85, //qp=37,38;39,40;41,42;43,44;45,46
1366     94, 94, 104, 104, 115, 115,             //qp=47,48;49,50;51
1367     0, 0, 0, 0, 0, 0, 0, 0                  //dummy
1368 };