Mercurial > libavcodec.hg
annotate wmadata.h @ 4209:ec6d49d9c19d libavcodec
Overlap filtering was done in reverse order
author | kostya |
---|---|
date | Fri, 17 Nov 2006 06:09:32 +0000 |
parents | c8c591fe26f8 |
children | 0efc832d9102 |
rev | line source |
---|---|
3699
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
2967
diff
changeset
|
1 /* |
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
2967
diff
changeset
|
2 * WMA compatible decoder |
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
2967
diff
changeset
|
3 * copyright (c) 2002 The FFmpeg Project |
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
2967
diff
changeset
|
4 * |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3699
diff
changeset
|
5 * This file is part of FFmpeg. |
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3699
diff
changeset
|
6 * |
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3699
diff
changeset
|
7 * FFmpeg is free software; you can redistribute it and/or |
3699
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
2967
diff
changeset
|
8 * modify it under the terms of the GNU Lesser General Public |
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
2967
diff
changeset
|
9 * License as published by the Free Software Foundation; either |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3699
diff
changeset
|
10 * version 2.1 of the License, or (at your option) any later version. |
3699
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
2967
diff
changeset
|
11 * |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3699
diff
changeset
|
12 * FFmpeg is distributed in the hope that it will be useful, |
3699
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
2967
diff
changeset
|
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
2967
diff
changeset
|
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
2967
diff
changeset
|
15 * Lesser General Public License for more details. |
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
2967
diff
changeset
|
16 * |
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
2967
diff
changeset
|
17 * You should have received a copy of the GNU Lesser General Public |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3699
diff
changeset
|
18 * License along with FFmpeg; if not, write to the Free Software |
3699
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
2967
diff
changeset
|
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
2967
diff
changeset
|
20 */ |
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
2967
diff
changeset
|
21 |
1106 | 22 /** |
23 * @file wmadata.h | |
24 * Various WMA tables. | |
25 */ | |
783 | 26 |
27 static const uint16_t wma_critical_freqs[25] = { | |
28 100, 200, 300, 400, 510, 630, 770, 920, | |
29 1080, 1270, 1480, 1720, 2000, 2320, 2700, 3150, | |
30 3700, 4400, 5300, 6400, 7700, 9500, 12000, 15500, | |
31 24500, | |
32 }; | |
33 | |
34 /* first value is number of bands */ | |
35 static const uint8_t exponent_band_22050[3][25] = { | |
36 { 10, 4, 8, 4, 8, 8, 12, 20, 24, 24, 16, }, | |
37 { 14, 4, 8, 8, 4, 12, 12, 16, 24, 16, 20, 24, 32, 40, 36, }, | |
38 { 23, 4, 4, 4, 8, 4, 4, 8, 8, 8, 8, 8, 12, 12, 16, 16, 24, 24, 32, 44, 48, 60, 84, 72, }, | |
39 }; | |
40 | |
41 static const uint8_t exponent_band_32000[3][25] = { | |
42 { 11, 4, 4, 8, 4, 4, 12, 16, 24, 20, 28, 4, }, | |
43 { 15, 4, 8, 4, 4, 8, 8, 16, 20, 12, 20, 20, 28, 40, 56, 8, }, | |
44 { 16, 8, 4, 8, 8, 12, 16, 20, 24, 40, 32, 32, 44, 56, 80, 112, 16, }, | |
45 }; | |
46 | |
47 static const uint8_t exponent_band_44100[3][25] = { | |
48 { 12, 4, 4, 4, 4, 4, 8, 8, 8, 12, 16, 20, 36, }, | |
49 { 15, 4, 8, 4, 8, 8, 4, 8, 8, 12, 12, 12, 24, 28, 40, 76, }, | |
50 { 17, 4, 8, 8, 4, 12, 12, 8, 8, 24, 16, 20, 24, 32, 40, 60, 80, 152, }, | |
51 }; | |
52 | |
53 static const uint16_t hgain_huffcodes[37] = { | |
54 0x00003, 0x002e7, 0x00001, 0x005cd, 0x0005d, 0x005c9, 0x0005e, 0x00003, | |
55 0x00016, 0x0000b, 0x00001, 0x00006, 0x00001, 0x00006, 0x00004, 0x00005, | |
56 0x00004, 0x00007, 0x00003, 0x00007, 0x00004, 0x0000a, 0x0000a, 0x00002, | |
57 0x00003, 0x00000, 0x00005, 0x00002, 0x0005f, 0x00004, 0x00003, 0x00002, | |
58 0x005c8, 0x000b8, 0x005ca, 0x005cb, 0x005cc, | |
59 }; | |
60 | |
61 static const uint8_t hgain_huffbits[37] = { | |
62 10, 12, 10, 13, 9, 13, 9, 8, | |
63 7, 5, 5, 4, 4, 3, 3, 3, | |
64 4, 3, 4, 4, 5, 5, 6, 8, | |
65 7, 10, 8, 10, 9, 8, 9, 9, | |
66 13, 10, 13, 13, 13, | |
67 }; | |
68 | |
69 static const float lsp_codebook[NB_LSP_COEFS][16] = { | |
70 { 1.98732877, 1.97944528, 1.97179088, 1.96260549, 1.95038374, 1.93336114, 1.90719232, 1.86191415, }, | |
71 { 1.97260000, 1.96083160, 1.94982586, 1.93806164, 1.92516608, 1.91010199, 1.89232331, 1.87149812, | |
72 1.84564818, 1.81358067, 1.77620070, 1.73265264, 1.67907855, 1.60959081, 1.50829650, 1.33120330, }, | |
73 { 1.90109110, 1.86482426, 1.83419671, 1.80168452, 1.76650116, 1.72816320, 1.68502700, 1.63738256, | |
74 1.58501580, 1.51795181, 1.43679906, 1.33950585, 1.24176208, 1.12260729, 0.96749668, 0.74048265, }, | |
75 { 1.76943864, 1.67822463, 1.59946365, 1.53560582, 1.47470796, 1.41210167, 1.34509536, 1.27339507, | |
76 1.19303814, 1.09765169, 0.98818722, 0.87239446, 0.74369172, 0.59768184, 0.43168630, 0.17977021, }, | |
77 { 1.43428349, 1.32038354, 1.21074086, 1.10577988, 1.00561746, 0.90335924, 0.80437489, 0.70709671, | |
78 0.60427395, 0.49814048, 0.38509539, 0.27106800, 0.14407416, 0.00219910, -0.16725141, -0.36936085, }, | |
79 { 0.99895687, 0.84188166, 0.70753739, 0.57906595, 0.47055563, 0.36966965, 0.26826648, 0.17163380, | |
80 0.07208392, -0.03062936, -1.40037388, -0.25128968, -0.37213937, -0.51075646, -0.64887512, -0.80308031, }, | |
81 { 0.26515280, 0.06313551, -0.08872080, -0.21103548, -0.31069678, -0.39680323, -0.47223474, -0.54167135, | |
82 -0.61444740, -0.68943343, -0.76580211, -0.85170082, -0.95289061, -1.06514703, -1.20510707, -1.37617746, }, | |
83 { -0.53940301, -0.73770929, -0.88424876, -1.01117930, -1.13389091, -1.26830073, -1.42041987, -1.62033919, | |
84 -1.10158808, -1.16512566, -1.23337128, -1.30414401, -1.37663312, -1.46853845, -1.57625798, -1.66893638, }, | |
85 { -0.38601997, -0.56009350, -0.66978483, -0.76028471, -0.83846064, -0.90868087, -0.97408881, -1.03694962, }, | |
86 { -1.56144989, -1.65944032, -1.72689685, -1.77857740, -1.82203011, -1.86220079, -1.90283983, -1.94820479, }, | |
87 }; | |
88 | |
89 static const uint32_t scale_huffcodes[121] = { | |
90 0x3ffe8, 0x3ffe6, 0x3ffe7, 0x3ffe5, 0x7fff5, 0x7fff1, 0x7ffed, 0x7fff6, | |
91 0x7ffee, 0x7ffef, 0x7fff0, 0x7fffc, 0x7fffd, 0x7ffff, 0x7fffe, 0x7fff7, | |
92 0x7fff8, 0x7fffb, 0x7fff9, 0x3ffe4, 0x7fffa, 0x3ffe3, 0x1ffef, 0x1fff0, | |
93 0x0fff5, 0x1ffee, 0x0fff2, 0x0fff3, 0x0fff4, 0x0fff1, 0x07ff6, 0x07ff7, | |
94 0x03ff9, 0x03ff5, 0x03ff7, 0x03ff3, 0x03ff6, 0x03ff2, 0x01ff7, 0x01ff5, | |
95 0x00ff9, 0x00ff7, 0x00ff6, 0x007f9, 0x00ff4, 0x007f8, 0x003f9, 0x003f7, | |
96 0x003f5, 0x001f8, 0x001f7, 0x000fa, 0x000f8, 0x000f6, 0x00079, 0x0003a, | |
97 0x00038, 0x0001a, 0x0000b, 0x00004, 0x00000, 0x0000a, 0x0000c, 0x0001b, | |
98 0x00039, 0x0003b, 0x00078, 0x0007a, 0x000f7, 0x000f9, 0x001f6, 0x001f9, | |
99 0x003f4, 0x003f6, 0x003f8, 0x007f5, 0x007f4, 0x007f6, 0x007f7, 0x00ff5, | |
100 0x00ff8, 0x01ff4, 0x01ff6, 0x01ff8, 0x03ff8, 0x03ff4, 0x0fff0, 0x07ff4, | |
101 0x0fff6, 0x07ff5, 0x3ffe2, 0x7ffd9, 0x7ffda, 0x7ffdb, 0x7ffdc, 0x7ffdd, | |
102 0x7ffde, 0x7ffd8, 0x7ffd2, 0x7ffd3, 0x7ffd4, 0x7ffd5, 0x7ffd6, 0x7fff2, | |
103 0x7ffdf, 0x7ffe7, 0x7ffe8, 0x7ffe9, 0x7ffea, 0x7ffeb, 0x7ffe6, 0x7ffe0, | |
104 0x7ffe1, 0x7ffe2, 0x7ffe3, 0x7ffe4, 0x7ffe5, 0x7ffd7, 0x7ffec, 0x7fff4, | |
105 0x7fff3, | |
106 }; | |
107 | |
108 static const uint8_t scale_huffbits[121] = { | |
109 18, 18, 18, 18, 19, 19, 19, 19, | |
110 19, 19, 19, 19, 19, 19, 19, 19, | |
111 19, 19, 19, 18, 19, 18, 17, 17, | |
112 16, 17, 16, 16, 16, 16, 15, 15, | |
113 14, 14, 14, 14, 14, 14, 13, 13, | |
114 12, 12, 12, 11, 12, 11, 10, 10, | |
115 10, 9, 9, 8, 8, 8, 7, 6, | |
116 6, 5, 4, 3, 1, 4, 4, 5, | |
117 6, 6, 7, 7, 8, 8, 9, 9, | |
118 10, 10, 10, 11, 11, 11, 11, 12, | |
119 12, 13, 13, 13, 14, 14, 16, 15, | |
120 16, 15, 18, 19, 19, 19, 19, 19, | |
121 19, 19, 19, 19, 19, 19, 19, 19, | |
122 19, 19, 19, 19, 19, 19, 19, 19, | |
123 19, 19, 19, 19, 19, 19, 19, 19, | |
124 19, | |
125 }; | |
126 | |
127 static const uint32_t coef0_huffcodes[666] = { | |
128 0x00258, 0x0003d, 0x00000, 0x00005, 0x00008, 0x00008, 0x0000c, 0x0001b, | |
129 0x0001f, 0x00015, 0x00024, 0x00032, 0x0003a, 0x00026, 0x0002c, 0x0002f, | |
130 0x0004a, 0x0004d, 0x00061, 0x00070, 0x00073, 0x00048, 0x00052, 0x0005a, | |
131 0x0005d, 0x0006e, 0x00099, 0x0009e, 0x000c1, 0x000ce, 0x000e4, 0x000f0, | |
132 0x00093, 0x0009e, 0x000a2, 0x000a1, 0x000b8, 0x000d2, 0x000d3, 0x0012e, | |
133 0x00130, 0x000de, 0x0012d, 0x0019b, 0x001e4, 0x00139, 0x0013a, 0x0013f, | |
134 0x0014f, 0x0016d, 0x001a2, 0x0027c, 0x0027e, 0x00332, 0x0033c, 0x0033f, | |
135 0x0038b, 0x00396, 0x003c5, 0x00270, 0x0027c, 0x0025a, 0x00395, 0x00248, | |
136 0x004bd, 0x004fb, 0x00662, 0x00661, 0x0071b, 0x004e6, 0x004ff, 0x00666, | |
137 0x0071c, 0x0071a, 0x0071f, 0x00794, 0x00536, 0x004e2, 0x0078e, 0x004ee, | |
138 0x00518, 0x00535, 0x004fb, 0x0078d, 0x00530, 0x00680, 0x0068f, 0x005cb, | |
139 0x00965, 0x006a6, 0x00967, 0x0097f, 0x00682, 0x006ae, 0x00cd0, 0x00e28, | |
140 0x00f13, 0x00f1f, 0x009f5, 0x00cd3, 0x00f11, 0x00926, 0x00964, 0x00f32, | |
141 0x00f12, 0x00f30, 0x00966, 0x00d0b, 0x00a68, 0x00b91, 0x009c7, 0x00b73, | |
142 0x012fa, 0x0131d, 0x013f9, 0x01ca0, 0x0199c, 0x01c7a, 0x0198c, 0x01248, | |
143 0x01c74, 0x01c64, 0x0139e, 0x012fd, 0x00a77, 0x012fc, 0x01c7b, 0x012ca, | |
144 0x014cc, 0x014d2, 0x014e3, 0x014dc, 0x012dc, 0x03344, 0x02598, 0x0263c, | |
145 0x0333b, 0x025e6, 0x01a1c, 0x01e3c, 0x014e2, 0x033d4, 0x01a11, 0x03349, | |
146 0x03cce, 0x014e1, 0x01a34, 0x0273e, 0x02627, 0x0273f, 0x038ee, 0x03971, | |
147 0x03c67, 0x03c61, 0x0333d, 0x038c2, 0x0263f, 0x038cd, 0x02638, 0x02e41, | |
148 0x0351f, 0x03348, 0x03c66, 0x03562, 0x02989, 0x027d5, 0x0333c, 0x02e4f, | |
149 0x0343b, 0x02ddf, 0x04bc8, 0x029c0, 0x02e57, 0x04c72, 0x025b7, 0x03547, | |
150 0x03540, 0x029d3, 0x04c45, 0x025bb, 0x06600, 0x04c73, 0x04bce, 0x0357b, | |
151 0x029a6, 0x029d2, 0x0263e, 0x0298a, 0x07183, 0x06602, 0x07958, 0x04b66, | |
152 0x0537d, 0x05375, 0x04fe9, 0x04b67, 0x0799f, 0x04bc9, 0x051fe, 0x06a3b, | |
153 0x05bb6, 0x04fa8, 0x0728f, 0x05376, 0x0492c, 0x0537e, 0x0795a, 0x06a3c, | |
154 0x0e515, 0x07887, 0x0683a, 0x051f9, 0x051fd, 0x0cc6a, 0x06a8a, 0x0cc6d, | |
155 0x05bb3, 0x0683b, 0x051fc, 0x05378, 0x0728e, 0x07886, 0x05bb7, 0x0f2a4, | |
156 0x0795b, 0x0683c, 0x09fc1, 0x0683d, 0x0b752, 0x09678, 0x0a3e8, 0x06ac7, | |
157 0x051f0, 0x0b759, 0x06af3, 0x04b6b, 0x0f2a0, 0x0f2ad, 0x096c3, 0x0e518, | |
158 0x0b75c, 0x0d458, 0x0cc6b, 0x0537c, 0x067aa, 0x04fea, 0x0343a, 0x0cc71, | |
159 0x0967f, 0x09fc4, 0x096c2, 0x0e516, 0x0f2a1, 0x0d45c, 0x0d45d, 0x0d45e, | |
160 0x12fb9, 0x0967e, 0x1982f, 0x09883, 0x096c4, 0x0b753, 0x12fb8, 0x0f2a8, | |
161 0x1ca21, 0x096c5, 0x0e51a, 0x1ca27, 0x12f3c, 0x0d471, 0x0f2aa, 0x0b75b, | |
162 0x12fbb, 0x0f2a9, 0x0f2ac, 0x0d45a, 0x0b74f, 0x096c8, 0x16e91, 0x096ca, | |
163 0x12fbf, 0x0d0a7, 0x13103, 0x0d516, 0x16e99, 0x12cbd, 0x0a3ea, 0x19829, | |
164 0x0b755, 0x29ba7, 0x1ca28, 0x29ba5, 0x16e93, 0x1982c, 0x19828, 0x25994, | |
165 0x0a3eb, 0x1ca29, 0x16e90, 0x1ca25, 0x1982d, 0x1ca26, 0x16e9b, 0x0b756, | |
166 0x0967c, 0x25997, 0x0b75f, 0x198d3, 0x0b757, 0x19a2a, 0x0d45b, 0x0e517, | |
167 0x1ca24, 0x1ca23, 0x1ca22, 0x0b758, 0x16e97, 0x0cd14, 0x13100, 0x00007, | |
168 0x0003b, 0x0006b, 0x00097, 0x00138, 0x00125, 0x00173, 0x00258, 0x00335, | |
169 0x0028e, 0x004c6, 0x00715, 0x00729, 0x004ef, 0x00519, 0x004ed, 0x00532, | |
170 0x0068c, 0x00686, 0x00978, 0x00e5d, 0x00e31, 0x009f4, 0x00b92, 0x012f8, | |
171 0x00d06, 0x00a67, 0x00d44, 0x00a76, 0x00d59, 0x012cd, 0x01c78, 0x01c75, | |
172 0x0199f, 0x0198f, 0x01c67, 0x014c6, 0x01c79, 0x01c76, 0x00b94, 0x00d1b, | |
173 0x01e32, 0x01e31, 0x01ab0, 0x01a05, 0x01aa1, 0x0333a, 0x025e5, 0x02626, | |
174 0x03541, 0x03544, 0x03421, 0x03546, 0x02e55, 0x02e56, 0x0492d, 0x02dde, | |
175 0x0299b, 0x02ddc, 0x0357a, 0x0249c, 0x0668b, 0x1c77f, 0x1ca20, 0x0d45f, | |
176 0x09886, 0x16e9a, 0x0f2a7, 0x0b751, 0x0a3ee, 0x0cf59, 0x0cf57, 0x0b754, | |
177 0x0d0a6, 0x16e98, 0x0b760, 0x06ac6, 0x0a3f0, 0x12fbe, 0x13104, 0x0f2a5, | |
178 0x0a3ef, 0x0d472, 0x12cba, 0x1982e, 0x16e9c, 0x1c77e, 0x198d0, 0x13105, | |
179 0x16e92, 0x0b75d, 0x0d459, 0x0001a, 0x000c0, 0x0016c, 0x003cd, 0x00350, | |
180 0x0067b, 0x0051e, 0x006a9, 0x009f4, 0x00b72, 0x00d09, 0x01249, 0x01e3d, | |
181 0x01ca1, 0x01a1f, 0x01721, 0x01a8a, 0x016e8, 0x03347, 0x01a35, 0x0249d, | |
182 0x0299a, 0x02596, 0x02e4e, 0x0298b, 0x07182, 0x04c46, 0x025ba, 0x02e40, | |
183 0x027d6, 0x04fe8, 0x06607, 0x05310, 0x09884, 0x072e1, 0x06a3d, 0x04b6a, | |
184 0x04c7a, 0x06603, 0x04c7b, 0x03428, 0x06605, 0x09664, 0x09fc0, 0x071de, | |
185 0x06601, 0x05bb2, 0x09885, 0x0a3e2, 0x1c61f, 0x12cbb, 0x0b750, 0x0cf58, | |
186 0x0967d, 0x25995, 0x668ad, 0x0b75a, 0x09fc2, 0x0537f, 0x0b75e, 0x13fae, | |
187 0x12fbc, 0x00031, 0x001c4, 0x004c5, 0x005b8, 0x00cf4, 0x0096f, 0x00d46, | |
188 0x01e57, 0x01a04, 0x02625, 0x03346, 0x028f9, 0x04c47, 0x072e0, 0x04b69, | |
189 0x03420, 0x07957, 0x06639, 0x0799e, 0x07959, 0x07881, 0x04b68, 0x09fc3, | |
190 0x09fd6, 0x0cc70, 0x0a3f1, 0x12cbe, 0x0e30e, 0x0e51b, 0x06af2, 0x12cbc, | |
191 0x1c77d, 0x0f2ab, 0x12fbd, 0x1aa2f, 0x0a3ec, 0x0d473, 0x05377, 0x0a3e9, | |
192 0x1982b, 0x0e300, 0x12f3f, 0x0cf5f, 0x096c0, 0x38c3c, 0x16e94, 0x16e95, | |
193 0x12f3d, 0x29ba4, 0x29ba6, 0x1c77c, 0x6a8ba, 0x3545c, 0x33457, 0x668ac, | |
194 0x6a8bb, 0x16e9d, 0x0e519, 0x25996, 0x12f3e, 0x00036, 0x0033e, 0x006ad, | |
195 0x00d03, 0x012c8, 0x0124a, 0x03c42, 0x03ccd, 0x06606, 0x07880, 0x06852, | |
196 0x06a3a, 0x05bb4, 0x0f2a2, 0x09fc7, 0x12cb9, 0x0cc6c, 0x0a6e8, 0x096c1, | |
197 0x0004a, 0x00355, 0x012f9, 0x014e8, 0x01abe, 0x025b6, 0x0492e, 0x09fc6, | |
198 0x051ff, 0x0cc6f, 0x096cb, 0x0d071, 0x198d1, 0x12cb8, 0x38c3d, 0x13faf, | |
199 0x096c9, 0x0009d, 0x00539, 0x012ce, 0x0341f, 0x029c1, 0x04b33, 0x0a3e3, | |
200 0x0d070, 0x16e96, 0x0b763, 0x000a0, 0x009ce, 0x038cc, 0x0343d, 0x051fa, | |
201 0x09888, 0x12fba, 0x000df, 0x00a75, 0x029a7, 0x09fc5, 0x0e301, 0x0967b, | |
202 0x001e7, 0x012c9, 0x051fb, 0x09889, 0x0f2a6, 0x0016f, 0x01cb9, 0x0cf5a, | |
203 0x12cbf, 0x09679, 0x00272, 0x01a15, 0x0967a, 0x003cb, 0x025f6, 0x0b762, | |
204 0x0028d, 0x03c60, 0x0cf5e, 0x00352, 0x03ccc, 0x0072f, 0x07186, 0x004ec, | |
205 0x05379, 0x0068e, 0x09887, 0x006a7, 0x06af1, 0x00e29, 0x0cf5b, 0x00f31, | |
206 0x0d470, 0x009c6, 0x013fb, 0x13102, 0x019a5, 0x13101, 0x01983, 0x01c65, | |
207 0x0124f, 0x014c7, 0x01726, 0x01abf, 0x03304, 0x02624, 0x03c41, 0x027d7, | |
208 0x02ddd, 0x02e54, 0x0343c, 0x06604, 0x07181, 0x0663a, 0x04fa9, 0x0663b, | |
209 0x05311, 0x0537a, 0x06839, 0x05bb5, 0x0492f, 0x06af0, 0x096c7, 0x0cc6e, | |
210 0x0537b, 0x0cf5c, 0x0cf56, 0x198d2, 0x0cf5d, 0x0a3ed, 0x0f2a3, 0x1982a, | |
211 0x0b761, 0x096c6, | |
212 }; | |
213 | |
214 static const uint8_t coef0_huffbits[666] = { | |
215 11, 6, 2, 3, 4, 5, 5, 5, | |
216 5, 6, 6, 6, 6, 7, 7, 7, | |
217 7, 7, 7, 7, 7, 8, 8, 8, | |
218 8, 8, 8, 8, 8, 8, 8, 8, | |
219 9, 9, 9, 9, 9, 9, 9, 9, | |
220 9, 9, 9, 9, 9, 10, 10, 10, | |
221 10, 10, 10, 10, 10, 10, 10, 10, | |
222 10, 10, 10, 11, 11, 11, 10, 11, | |
223 11, 11, 11, 11, 11, 11, 11, 11, | |
224 11, 11, 11, 11, 12, 12, 11, 12, | |
225 12, 12, 12, 11, 12, 12, 12, 12, | |
226 12, 12, 12, 12, 12, 12, 12, 12, | |
227 12, 12, 12, 12, 12, 13, 13, 12, | |
228 12, 12, 13, 13, 13, 13, 13, 13, | |
229 13, 13, 13, 13, 13, 13, 13, 14, | |
230 13, 13, 13, 13, 13, 13, 13, 14, | |
231 14, 14, 14, 14, 14, 14, 14, 14, | |
232 14, 14, 14, 13, 14, 14, 14, 14, | |
233 14, 14, 14, 14, 14, 14, 14, 14, | |
234 14, 14, 14, 14, 14, 14, 14, 15, | |
235 15, 14, 14, 15, 15, 15, 14, 15, | |
236 15, 15, 15, 15, 15, 15, 15, 15, | |
237 15, 15, 15, 15, 15, 15, 15, 15, | |
238 15, 15, 14, 15, 15, 15, 15, 16, | |
239 16, 16, 15, 16, 15, 15, 16, 16, | |
240 16, 16, 15, 16, 16, 16, 15, 16, | |
241 16, 15, 16, 16, 16, 16, 16, 16, | |
242 16, 16, 16, 16, 15, 15, 16, 16, | |
243 15, 16, 16, 16, 17, 17, 17, 16, | |
244 16, 17, 16, 16, 16, 16, 17, 16, | |
245 17, 17, 16, 16, 15, 15, 15, 16, | |
246 17, 16, 17, 16, 16, 17, 17, 17, | |
247 17, 17, 17, 16, 17, 17, 17, 16, | |
248 17, 17, 16, 17, 17, 17, 16, 17, | |
249 17, 16, 16, 17, 17, 17, 18, 17, | |
250 17, 17, 17, 17, 18, 18, 17, 17, | |
251 17, 19, 17, 19, 18, 17, 17, 18, | |
252 17, 17, 18, 17, 17, 17, 18, 17, | |
253 17, 18, 17, 17, 17, 17, 17, 16, | |
254 17, 17, 17, 17, 18, 16, 17, 4, | |
255 6, 8, 9, 9, 10, 10, 10, 10, | |
256 11, 11, 11, 11, 12, 12, 12, 12, | |
257 12, 12, 12, 12, 12, 13, 13, 13, | |
258 13, 13, 13, 13, 13, 13, 13, 13, | |
259 13, 13, 13, 14, 13, 13, 13, 13, | |
260 13, 13, 14, 14, 14, 14, 14, 14, | |
261 15, 15, 15, 15, 15, 15, 16, 15, | |
262 15, 15, 15, 15, 15, 17, 17, 17, | |
263 16, 18, 16, 17, 17, 16, 16, 17, | |
264 17, 18, 17, 16, 17, 17, 17, 16, | |
265 17, 17, 18, 17, 18, 17, 17, 17, | |
266 18, 17, 17, 5, 8, 10, 10, 11, | |
267 11, 12, 12, 12, 13, 13, 14, 13, | |
268 13, 14, 14, 14, 14, 14, 14, 15, | |
269 15, 15, 15, 15, 15, 15, 15, 15, | |
270 15, 15, 15, 16, 16, 15, 16, 16, | |
271 15, 15, 15, 15, 15, 16, 16, 15, | |
272 15, 16, 16, 17, 17, 18, 17, 16, | |
273 17, 18, 19, 17, 16, 16, 17, 17, | |
274 17, 6, 9, 11, 12, 12, 13, 13, | |
275 13, 14, 14, 14, 15, 15, 15, 16, | |
276 15, 15, 15, 15, 15, 15, 16, 16, | |
277 16, 16, 17, 18, 16, 16, 16, 18, | |
278 17, 16, 17, 18, 17, 17, 16, 17, | |
279 17, 16, 17, 16, 17, 18, 18, 18, | |
280 17, 19, 19, 17, 20, 19, 18, 19, | |
281 20, 18, 16, 18, 17, 7, 10, 12, | |
282 13, 13, 14, 14, 14, 15, 15, 16, | |
283 16, 16, 16, 16, 18, 16, 17, 17, | |
284 8, 11, 13, 14, 14, 15, 16, 16, | |
285 16, 16, 17, 17, 17, 18, 18, 17, | |
286 17, 8, 12, 14, 15, 15, 15, 17, | |
287 17, 18, 17, 9, 12, 14, 15, 16, | |
288 16, 17, 9, 13, 15, 16, 16, 17, | |
289 9, 13, 16, 16, 16, 10, 13, 16, | |
290 18, 17, 10, 14, 17, 10, 14, 17, | |
291 11, 14, 16, 11, 14, 11, 15, 12, | |
292 16, 12, 16, 12, 16, 12, 16, 12, | |
293 17, 13, 13, 17, 13, 17, 13, 13, | |
294 14, 14, 14, 14, 14, 14, 14, 15, | |
295 15, 15, 15, 15, 15, 15, 16, 15, | |
296 16, 16, 16, 16, 16, 16, 17, 16, | |
297 16, 16, 16, 17, 16, 17, 16, 17, | |
298 17, 17, | |
299 }; | |
300 | |
301 static const uint32_t coef1_huffcodes[555] = { | |
302 0x00115, 0x00002, 0x00001, 0x00000, 0x0000d, 0x00007, 0x00013, 0x0001d, | |
303 0x00008, 0x0000c, 0x00023, 0x0002b, 0x0003f, 0x00017, 0x0001b, 0x00043, | |
304 0x00049, 0x00050, 0x00055, 0x00054, 0x00067, 0x00064, 0x0007b, 0x0002d, | |
305 0x00028, 0x0002a, 0x00085, 0x00089, 0x0002b, 0x00035, 0x00090, 0x00091, | |
306 0x00094, 0x00088, 0x000c1, 0x000c6, 0x000f2, 0x000e3, 0x000c5, 0x000e2, | |
307 0x00036, 0x000f0, 0x000a7, 0x000cd, 0x000fb, 0x00059, 0x00116, 0x00103, | |
308 0x00108, 0x0012b, 0x0012d, 0x00188, 0x0012e, 0x0014c, 0x001c3, 0x00187, | |
309 0x001e7, 0x0006f, 0x00094, 0x00069, 0x001e6, 0x001ca, 0x00147, 0x00195, | |
310 0x000a7, 0x00213, 0x00209, 0x00303, 0x00295, 0x00289, 0x0028c, 0x0028d, | |
311 0x00312, 0x00330, 0x0029b, 0x00308, 0x00328, 0x0029a, 0x0025e, 0x003c5, | |
312 0x00384, 0x0039f, 0x00397, 0x00296, 0x0032e, 0x00332, 0x003c6, 0x003e6, | |
313 0x0012d, 0x000d1, 0x00402, 0x000dd, 0x00161, 0x0012b, 0x00127, 0x0045d, | |
314 0x00601, 0x004ab, 0x0045f, 0x00410, 0x004bf, 0x00528, 0x0045c, 0x00424, | |
315 0x00400, 0x00511, 0x00618, 0x0073d, 0x0063a, 0x00614, 0x0073c, 0x007c0, | |
316 0x007cf, 0x00802, 0x00966, 0x00964, 0x00951, 0x008a0, 0x00346, 0x00803, | |
317 0x00a52, 0x0024a, 0x007c1, 0x0063f, 0x00126, 0x00406, 0x00789, 0x008a2, | |
318 0x00960, 0x00967, 0x00c05, 0x00c70, 0x00c79, 0x00a5d, 0x00c26, 0x00c4d, | |
319 0x00372, 0x008a5, 0x00c08, 0x002c5, 0x00f11, 0x00cc4, 0x00f8e, 0x00e16, | |
320 0x00496, 0x00e77, 0x00f9c, 0x00c25, 0x00f1e, 0x00c27, 0x00f1f, 0x00e17, | |
321 0x00ccd, 0x00355, 0x00c09, 0x00c78, 0x00f90, 0x00521, 0x00357, 0x00356, | |
322 0x0068e, 0x00f9d, 0x00c04, 0x00e58, 0x00a20, 0x00a2c, 0x00c4c, 0x0052f, | |
323 0x00f8d, 0x01178, 0x01053, 0x01097, 0x0180f, 0x0180d, 0x012fb, 0x012aa, | |
324 0x0202a, 0x00a40, 0x018ed, 0x01ceb, 0x01455, 0x018e3, 0x012a1, 0x00354, | |
325 0x00353, 0x00f1c, 0x00c7b, 0x00c37, 0x0101d, 0x012cb, 0x01142, 0x0197d, | |
326 0x01095, 0x01e3b, 0x0186b, 0x00588, 0x01c2a, 0x014b8, 0x01e3a, 0x018ec, | |
327 0x01f46, 0x012fa, 0x00a53, 0x01ce8, 0x00a55, 0x01c29, 0x0117b, 0x01052, | |
328 0x012a0, 0x00589, 0x00950, 0x01c2b, 0x00a50, 0x0208b, 0x0180e, 0x02027, | |
329 0x02556, 0x01e20, 0x006e7, 0x01c28, 0x0197a, 0x00684, 0x020a2, 0x01f22, | |
330 0x03018, 0x039cf, 0x03e25, 0x02557, 0x0294c, 0x028a6, 0x00d11, 0x028a9, | |
331 0x02979, 0x00d46, 0x00a56, 0x039ce, 0x030cc, 0x0329a, 0x0149d, 0x0510f, | |
332 0x0451c, 0x02028, 0x03299, 0x01ced, 0x014b9, 0x00f85, 0x00c7a, 0x01800, | |
333 0x00341, 0x012ca, 0x039c8, 0x0329d, 0x00d0d, 0x03e20, 0x05144, 0x00d45, | |
334 0x030d0, 0x0186d, 0x030d5, 0x00d0f, 0x00d40, 0x04114, 0x020a1, 0x0297f, | |
335 0x03e24, 0x032f1, 0x04047, 0x030d4, 0x028a8, 0x00d0e, 0x0451d, 0x04044, | |
336 0x0297e, 0x04042, 0x030d2, 0x030cf, 0x03e21, 0x03e26, 0x028a5, 0x0451a, | |
337 0x00d48, 0x01a16, 0x00d44, 0x04518, 0x0149b, 0x039ca, 0x01498, 0x0403d, | |
338 0x0451b, 0x0149c, 0x032f3, 0x030cb, 0x08073, 0x03e22, 0x0529a, 0x020aa, | |
339 0x039cc, 0x0738a, 0x06530, 0x07389, 0x06193, 0x08071, 0x04043, 0x030ce, | |
340 0x05147, 0x07388, 0x05145, 0x08072, 0x04521, 0x00d47, 0x0297c, 0x030cd, | |
341 0x030ca, 0x0000b, 0x0000c, 0x00083, 0x000e4, 0x00048, 0x00102, 0x001cc, | |
342 0x001f5, 0x00097, 0x0020b, 0x00124, 0x00453, 0x00627, 0x00639, 0x00605, | |
343 0x00517, 0x001b8, 0x00663, 0x00667, 0x007c3, 0x00823, 0x00961, 0x00963, | |
344 0x00e5a, 0x00e59, 0x00a2b, 0x00cbf, 0x00292, 0x00a2d, 0x007d0, 0x00953, | |
345 0x00cc5, 0x00f84, 0x004ab, 0x014a7, 0x0068a, 0x0117a, 0x0052e, 0x01442, | |
346 0x0052c, 0x00c77, 0x00f8f, 0x004aa, 0x01094, 0x01801, 0x012c4, 0x0297b, | |
347 0x00952, 0x01f19, 0x006a5, 0x01149, 0x012c5, 0x01803, 0x022f2, 0x0329b, | |
348 0x04520, 0x0149e, 0x00d13, 0x01f16, 0x01ce9, 0x0101c, 0x006e6, 0x039c9, | |
349 0x06191, 0x07c8e, 0x06192, 0x0ca63, 0x039cd, 0x06190, 0x06884, 0x06885, | |
350 0x07382, 0x00d49, 0x00d41, 0x0450c, 0x0149a, 0x030d1, 0x08077, 0x03e23, | |
351 0x01a15, 0x0e701, 0x0e702, 0x08079, 0x0822a, 0x0a218, 0x07887, 0x0403f, | |
352 0x0520b, 0x0529b, 0x0e700, 0x04519, 0x00007, 0x000e0, 0x000d0, 0x0039b, | |
353 0x003e5, 0x00163, 0x0063e, 0x007c9, 0x00806, 0x00954, 0x01044, 0x01f44, | |
354 0x0197c, 0x01f45, 0x00a51, 0x01f47, 0x00951, 0x0052d, 0x02291, 0x0092f, | |
355 0x00a54, 0x00d12, 0x0297d, 0x00d0c, 0x01499, 0x0329e, 0x032f0, 0x02025, | |
356 0x039c6, 0x00a57, 0x03e46, 0x00d42, 0x0738b, 0x05146, 0x04046, 0x08078, | |
357 0x0510e, 0x07886, 0x02904, 0x04156, 0x04157, 0x06032, 0x030d3, 0x08bce, | |
358 0x04040, 0x0403e, 0x0a414, 0x10457, 0x08075, 0x06887, 0x07c8f, 0x039c7, | |
359 0x07387, 0x08070, 0x08bcf, 0x1482a, 0x10456, 0x1482b, 0x01a17, 0x06886, | |
360 0x0450d, 0x00013, 0x0006b, 0x00615, 0x0080b, 0x0082b, 0x00952, 0x00e5b, | |
361 0x018e2, 0x0186c, 0x01f18, 0x0329f, 0x00d43, 0x03e29, 0x05140, 0x05141, | |
362 0x0ca62, 0x06033, 0x03c42, 0x03e28, 0x0450f, 0x0a21a, 0x07384, 0x0a219, | |
363 0x0e703, 0x0a21b, 0x01a14, 0x07383, 0x045e6, 0x0007a, 0x0012c, 0x00ccc, | |
364 0x0068f, 0x01802, 0x00a52, 0x00953, 0x04045, 0x01a20, 0x0451f, 0x000a4, | |
365 0x00735, 0x01cec, 0x02029, 0x020a3, 0x0451e, 0x00069, 0x00c24, 0x02024, | |
366 0x032f2, 0x05142, 0x00196, 0x00523, 0x000a6, 0x0197b, 0x0030b, 0x0092e, | |
367 0x003e9, 0x03e27, 0x00160, 0x05143, 0x00652, 0x04041, 0x00734, 0x028a7, | |
368 0x0080f, 0x01483, 0x0097c, 0x00340, 0x0068b, 0x00522, 0x01054, 0x01096, | |
369 0x01f17, 0x0202b, 0x01cea, 0x020a0, 0x02978, 0x02026, 0x0297a, 0x039cb, | |
370 0x03e2b, 0x0149f, 0x0329c, 0x07385, 0x08074, 0x0450e, 0x03e2a, 0x05149, | |
371 0x08076, 0x07386, 0x05148, | |
372 }; | |
373 | |
374 static const uint8_t coef1_huffbits[555] = { | |
375 9, 5, 2, 4, 4, 5, 5, 5, | |
376 6, 6, 6, 6, 6, 7, 7, 7, | |
377 7, 7, 7, 7, 7, 7, 7, 8, | |
378 8, 8, 8, 8, 8, 8, 8, 8, | |
379 8, 8, 8, 8, 8, 8, 8, 8, | |
380 9, 8, 8, 8, 8, 9, 9, 9, | |
381 9, 9, 9, 9, 9, 9, 9, 9, | |
382 9, 10, 10, 10, 9, 9, 9, 9, | |
383 10, 10, 10, 10, 10, 10, 10, 10, | |
384 10, 10, 10, 10, 10, 10, 10, 10, | |
385 10, 10, 10, 10, 10, 10, 10, 10, | |
386 11, 11, 11, 11, 11, 11, 11, 11, | |
387 11, 11, 11, 11, 11, 11, 11, 11, | |
388 11, 11, 11, 11, 11, 11, 11, 11, | |
389 11, 12, 12, 12, 12, 12, 12, 12, | |
390 12, 12, 11, 11, 11, 11, 11, 12, | |
391 12, 12, 12, 12, 12, 12, 12, 12, | |
392 13, 12, 12, 12, 12, 12, 12, 12, | |
393 13, 12, 12, 12, 12, 12, 12, 12, | |
394 12, 13, 12, 12, 12, 13, 13, 13, | |
395 13, 12, 12, 12, 12, 12, 12, 13, | |
396 12, 13, 13, 13, 13, 13, 13, 13, | |
397 14, 14, 13, 13, 13, 13, 13, 13, | |
398 13, 12, 12, 12, 13, 13, 13, 13, | |
399 13, 13, 13, 13, 13, 13, 13, 13, | |
400 13, 13, 14, 13, 14, 13, 13, 13, | |
401 13, 13, 14, 13, 14, 14, 13, 14, | |
402 14, 13, 14, 13, 13, 14, 14, 13, | |
403 14, 14, 14, 14, 14, 14, 14, 14, | |
404 14, 15, 14, 14, 14, 14, 15, 15, | |
405 15, 14, 14, 13, 13, 12, 12, 13, | |
406 13, 13, 14, 14, 15, 14, 15, 15, | |
407 14, 13, 14, 15, 15, 15, 14, 14, | |
408 14, 14, 15, 14, 14, 15, 15, 15, | |
409 14, 15, 14, 14, 14, 14, 14, 15, | |
410 15, 16, 15, 15, 15, 14, 15, 15, | |
411 15, 15, 14, 14, 16, 14, 15, 14, | |
412 14, 15, 15, 15, 15, 16, 15, 14, | |
413 15, 15, 15, 16, 15, 15, 14, 14, | |
414 14, 4, 7, 8, 8, 9, 9, 9, | |
415 9, 10, 10, 11, 11, 11, 11, 11, | |
416 11, 12, 11, 11, 11, 12, 12, 12, | |
417 12, 12, 12, 12, 12, 12, 11, 12, | |
418 12, 12, 13, 13, 13, 13, 13, 13, | |
419 13, 12, 12, 13, 13, 13, 13, 14, | |
420 14, 13, 14, 13, 13, 13, 14, 14, | |
421 15, 15, 14, 13, 13, 13, 14, 14, | |
422 15, 15, 15, 16, 14, 15, 17, 17, | |
423 15, 15, 15, 15, 15, 14, 16, 14, | |
424 16, 16, 16, 16, 16, 16, 15, 15, | |
425 17, 15, 16, 15, 6, 8, 10, 10, | |
426 10, 11, 11, 11, 12, 12, 13, 13, | |
427 13, 13, 14, 13, 14, 13, 14, 14, | |
428 14, 14, 14, 15, 15, 14, 14, 14, | |
429 14, 14, 14, 15, 15, 15, 15, 16, | |
430 15, 15, 16, 15, 15, 15, 14, 16, | |
431 15, 15, 18, 17, 16, 17, 15, 14, | |
432 15, 16, 16, 19, 17, 19, 16, 17, | |
433 15, 7, 10, 11, 12, 12, 12, 12, | |
434 13, 13, 13, 14, 15, 14, 15, 15, | |
435 16, 15, 14, 14, 15, 16, 15, 16, | |
436 16, 16, 16, 15, 15, 7, 11, 12, | |
437 13, 13, 14, 14, 15, 15, 15, 8, | |
438 11, 13, 14, 14, 15, 9, 12, 14, | |
439 14, 15, 9, 13, 10, 13, 10, 14, | |
440 10, 14, 11, 15, 11, 15, 11, 14, | |
441 12, 15, 12, 13, 13, 13, 13, 13, | |
442 13, 14, 13, 14, 14, 14, 14, 14, | |
443 14, 15, 14, 15, 16, 15, 14, 15, | |
444 16, 15, 15, | |
445 }; | |
446 | |
447 static const uint32_t coef2_huffcodes[1336] = { | |
448 0x003e6, 0x000f6, 0x00000, 0x00002, 0x00006, 0x0000f, 0x0001b, 0x00028, | |
449 0x00039, 0x0003f, 0x0006b, 0x00076, 0x000b7, 0x000e8, 0x000ef, 0x00169, | |
450 0x001a7, 0x001d4, 0x001dc, 0x002c4, 0x00349, 0x00355, 0x00391, 0x003dc, | |
451 0x00581, 0x005b2, 0x00698, 0x0070c, 0x00755, 0x0073a, 0x00774, 0x007cf, | |
452 0x00b0a, 0x00b66, 0x00d2e, 0x00d5e, 0x00e1b, 0x00eac, 0x00e5a, 0x00f7e, | |
453 0x00fa1, 0x0163e, 0x01a37, 0x01a52, 0x01c39, 0x01ab3, 0x01d5f, 0x01cb6, | |
454 0x01f52, 0x01dd9, 0x02c04, 0x02c2e, 0x02c2d, 0x02c23, 0x03467, 0x034a3, | |
455 0x0351b, 0x03501, 0x03a5d, 0x0351c, 0x03875, 0x03dea, 0x0397b, 0x039db, | |
456 0x03df1, 0x039d8, 0x03bb4, 0x0580a, 0x0584d, 0x05842, 0x05b13, 0x058ea, | |
457 0x0697d, 0x06a06, 0x068cc, 0x06ac7, 0x06a96, 0x072f4, 0x07543, 0x072b4, | |
458 0x07d20, 0x0b003, 0x073b5, 0x07be6, 0x0d180, 0x07bd1, 0x07cb8, 0x07d06, | |
459 0x07d25, 0x0d2f2, 0x0d19a, 0x0d334, 0x0e1dc, 0x0d529, 0x0d584, 0x0e1d2, | |
460 0x0e5e3, 0x0eec4, 0x0e564, 0x0fa49, 0x16001, 0x0eedc, 0x0f7fa, 0x1a32c, | |
461 0x16131, 0x16003, 0x0f9c8, 0x1ef80, 0x1d2a0, 0x1aa4b, 0x0f7ce, 0x1abfe, | |
462 0x1aa50, 0x1a458, 0x1a816, 0x1cae4, 0x1d2fe, 0x1d52e, 0x1aa4c, 0x2c245, | |
463 0x1d2a1, 0x1a35d, 0x1ca1b, 0x1d5d8, 0x1f531, 0x1ca1c, 0x1f389, 0x1f4af, | |
464 0x3a5e7, 0x351fb, 0x2c24b, 0x34bce, 0x2c24d, 0x2c249, 0x2c24a, 0x72dfc, | |
465 0x357ef, 0x35002, 0x3a5e6, 0x39431, 0x5843b, 0x34a77, 0x58431, 0x3a5f3, | |
466 0x3a5dd, 0x3e5e5, 0x356bd, 0x3976e, 0x6a3d2, 0x3500d, 0x694c4, 0x580bd, | |
467 0x3e5e8, 0x74b95, 0x34a6e, 0x3977c, 0x39432, 0x5b0d2, 0x6a3d8, 0x580b8, | |
468 0x5b0cb, 0x5b0d7, 0x72dee, 0x72ded, 0x72dec, 0x74b9c, 0x3977f, 0x72dea, | |
469 0x74b9e, 0x7be7d, 0x580bf, 0x5b0d5, 0x7cba8, 0x74b91, 0x3e5dd, 0xb6171, | |
470 0xd46b3, 0xd46b9, 0x7cba1, 0x74b9f, 0x72de1, 0xe59f5, 0x3e5eb, 0x00004, | |
471 0x00015, 0x00038, 0x00075, 0x000e8, 0x001d3, 0x00347, 0x0039c, 0x00690, | |
472 0x0074a, 0x00b60, 0x00e93, 0x00f74, 0x0163d, 0x01a5a, 0x01d24, 0x01cbe, | |
473 0x01f4b, 0x03468, 0x03562, 0x03947, 0x03e82, 0x05804, 0x05b12, 0x05803, | |
474 0x0696d, 0x06a9e, 0x0697c, 0x06978, 0x06afb, 0x074b2, 0x072f5, 0x073c0, | |
475 0x07541, 0x06944, 0x074b7, 0x070d3, 0x07ba9, 0x0b0b1, 0x0d1af, 0x0e1dd, | |
476 0x0e5e2, 0x0e1a3, 0x0eec3, 0x1612f, 0x0e961, 0x0eeda, 0x0e78e, 0x0fa48, | |
477 0x1612c, 0x0e511, 0x0e565, 0x0e953, 0x1aa4a, 0x0e59d, 0x1d52c, 0x1a811, | |
478 0x1cae7, 0x1abfc, 0x1d52d, 0x1cacf, 0x1cf05, 0x2c254, 0x34a72, 0x1f4ac, | |
479 0x3976b, 0x34a71, 0x2c6d9, 0x2d873, 0x34a6a, 0x357e7, 0x3464c, 0x3e5f5, | |
480 0x58433, 0x1f53a, 0x3500a, 0x357ea, 0x34a73, 0x3942f, 0x357e5, 0x39775, | |
481 0x694cd, 0x39772, 0x7cba5, 0x6a3ef, 0x35483, 0x74b98, 0x5b0c1, 0x39770, | |
482 0x3a5d7, 0x39433, 0x39434, 0x694ce, 0x580be, 0x3e5ff, 0x6a3ec, 0xb616f, | |
483 0xd46b1, 0x6a3d1, 0x72de5, 0x74b6e, 0x72de9, 0x3e700, 0xd46b6, 0x6a3e9, | |
484 0x74b69, 0xe5675, 0xd46b8, 0x7cbaa, 0x3a5d1, 0x0000c, 0x0003c, 0x000eb, | |
485 0x001f1, 0x003a4, 0x006a8, 0x007d5, 0x00d43, 0x00e77, 0x016c5, 0x01cb1, | |
486 0x02c5d, 0x03a55, 0x03a56, 0x03e51, 0x03bb5, 0x05b0a, 0x06a9f, 0x074b8, | |
487 0x07d28, 0x0d187, 0x0d40e, 0x0d52e, 0x0d425, 0x0eae3, 0x0e1d3, 0x1612e, | |
488 0x0e59e, 0x0eec2, 0x0e578, 0x0e51a, 0x0e579, 0x0e515, 0x0e960, 0x0d183, | |
489 0x0d220, 0x0d2cb, 0x0e512, 0x16c3e, 0x16002, 0x16c42, 0x1cae9, 0x3461a, | |
490 0x1d2fa, 0x1a308, 0x1a849, 0x1cf07, 0x1f38f, 0x34b65, 0x2c253, 0x1ef9e, | |
491 0x1cbc3, 0x1cbc1, 0x2c255, 0x1f384, 0x58435, 0x2c5cd, 0x3a5f7, 0x2c252, | |
492 0x3959c, 0x2c6d8, 0x3a5d3, 0x6ad78, 0x6a3f2, 0x7cba9, 0xb6176, 0x72deb, | |
493 0x39764, 0x3e5f6, 0x3a5d8, 0x74a8c, 0x6a3e6, 0x694d1, 0x6ad79, 0x1a4592, | |
494 0xe59fb, 0x7cbb3, 0x5b0cd, 0x00017, 0x000b5, 0x002c3, 0x005b7, 0x00b1c, | |
495 0x00e5c, 0x0163f, 0x01ab2, 0x01efa, 0x0348a, 0x0396e, 0x058da, 0x06963, | |
496 0x06a30, 0x072cd, 0x073cf, 0x07ce7, 0x0d2ca, 0x0d2d8, 0x0e764, 0x0e794, | |
497 0x16008, 0x16167, 0x1617e, 0x1aa49, 0x1a30b, 0x1a813, 0x2c6da, 0x1a580, | |
498 0x1cbc2, 0x0f9ca, 0x1617f, 0x1d2fe, 0x0f7fc, 0x16c40, 0x0e513, 0x0eec5, | |
499 0x0f7c3, 0x1d508, 0x1a81e, 0x1d2fd, 0x39430, 0x35486, 0x3e5fd, 0x2c24c, | |
500 0x2c75a, 0x34a74, 0x3a5f4, 0x3464d, 0x694ca, 0x3a5f1, 0x1d509, 0x1d5c0, | |
501 0x34648, 0x3464e, 0x6a3d5, 0x6a3e8, 0x6a3e7, 0x5b0c3, 0x2c248, 0x1f38a, | |
502 0x3a5f2, 0x6a3e5, 0x00029, 0x00168, 0x0058c, 0x00b67, 0x00f9d, 0x01c3d, | |
503 0x01cbf, 0x02c20, 0x0351d, 0x03df6, 0x06af9, 0x072b5, 0x0b1d7, 0x0b0b2, | |
504 0x0d40a, 0x0d52b, 0x0e952, 0x0e797, 0x163c3, 0x1c3a0, 0x1f386, 0x1ca21, | |
505 0x34655, 0x2c247, 0x1f53b, 0x2c250, 0x2c24f, 0x1f385, 0x1ef5d, 0x1cf15, | |
506 0x1caea, 0x1ab0a, 0x1cf19, 0x1f53d, 0x1d5c2, 0x1d2fb, 0x1ef58, 0x34a78, | |
507 0x357ec, 0x1f533, 0x3a5e1, 0x694d2, 0x58482, 0x3a5ee, 0x2c6dc, 0x357eb, | |
508 0x5b0c4, 0x39778, 0x6a3e1, 0x7cbb4, 0x3a5e1, 0x74b68, 0x3a5ef, 0x3a5d2, | |
509 0x39424, 0x72de2, 0xe59f6, 0xe59f7, 0x3e702, 0x3e5ec, 0x1f38b, 0x0003b, | |
510 0x001f0, 0x00777, 0x00fa8, 0x01cb2, 0x02d84, 0x03a57, 0x03dd6, 0x06917, | |
511 0x06a11, 0x07d07, 0x0eae2, 0x0e796, 0x0f9c9, 0x0f7fb, 0x16166, 0x16160, | |
512 0x1ab1b, 0x1abfa, 0x2d87b, 0x1d2f7, 0x39768, 0x1f38c, 0x34653, 0x34651, | |
513 0x6a3d9, 0x35001, 0x3abbd, 0x38742, 0x39426, 0x34a76, 0x3a5ec, 0x34a75, | |
514 0x35000, 0x35488, 0x1cf10, 0x2c6db, 0x357ed, 0x357e8, 0x357e9, 0x3a5f0, | |
515 0x694c2, 0xb6178, 0x72df5, 0x39425, 0x3942b, 0x74b6d, 0x74b6f, 0xb6177, | |
516 0xb6179, 0x74b6a, 0xb6172, 0x58487, 0x3e5ee, 0x3e5ed, 0x72df2, 0x72df4, | |
517 0x7cbae, 0x6a3ca, 0x70e86, 0x34bcf, 0x6a3c8, 0x00059, 0x00384, 0x00d5b, | |
518 0x01c38, 0x03560, 0x0395b, 0x0584e, 0x06964, 0x073cd, 0x0b1e7, 0x0e798, | |
519 0x0e78d, 0x0fa43, 0x1a848, 0x1a32f, 0x1aa4e, 0x3464a, 0x1f4ab, 0x1f38d, | |
520 0x3a5eb, 0x3a5d4, 0x3548a, 0x6a3c7, 0x5b0d0, 0x6a3c5, 0x7cbb0, 0x694cb, | |
521 0x3a5e5, 0x3e5e2, 0x3942c, 0x2d872, 0x1f4ae, 0x3a5d5, 0x694d3, 0x58481, | |
522 0x35009, 0x39774, 0x58432, 0xb616c, 0x5b0db, 0x3548b, 0xb6174, 0x1d5d95, | |
523 0xb004c, 0x7cbb2, 0x3a5e5, 0x74a8f, 0xe59f9, 0x72df6, 0xe59fd, 0x7cbad, | |
524 0xd427d, 0x72cff, 0x3977a, 0x5b0d9, 0xb616d, 0xb616b, 0x1a4593, 0x7cbaf, | |
525 0x5b0da, 0x00071, 0x003eb, 0x01603, 0x02c6c, 0x03961, 0x068c8, 0x06a31, | |
526 0x072bd, 0x0d2c2, 0x0e51b, 0x0e5e6, 0x1abfb, 0x1d2ff, 0x1cae5, 0x1ef5c, | |
527 0x1ef5e, 0x1cf13, 0x34a6d, 0x3976d, 0xb616a, 0x3e5f2, 0x6a3c4, 0xb6169, | |
528 0x3e5dc, 0x580b9, 0x74b99, 0x75764, 0x58434, 0x3a5d9, 0x6945a, 0x69459, | |
529 0x3548c, 0x3a5e9, 0x69457, 0x72df1, 0x6945e, 0x6a35e, 0x3e701, 0xb6168, | |
530 0x5b0dd, 0x3a5de, 0x6a3c2, 0xd4278, 0x6a3cc, 0x72dfd, 0xb6165, 0x16009a, | |
531 0x7cbb1, 0xd427c, 0xb6162, 0xe765e, 0x1cecbe, 0x7cbb6, 0x69454, 0xb6160, | |
532 0xd427a, 0x1d5d96, 0xb1d6d, 0xe59f4, 0x72de8, 0x3a5db, 0x0007a, 0x006ae, | |
533 0x01c3c, 0x03aba, 0x058e9, 0x072cc, 0x0d2dd, 0x0d22d, 0x0eec1, 0x0eedb, | |
534 0x1d2a2, 0x1ef5b, 0x357e2, 0x3abbf, 0x1d2f9, 0x35004, 0x3a5dc, 0x351fc, | |
535 0x3976c, 0x6a3c6, 0x6a3cb, 0x3e5ea, 0xe59f3, 0x6a3ce, 0x69452, 0xe59f0, | |
536 0x74b90, 0xd4279, 0xd427b, 0x7cbb5, 0x5b0c5, 0x3a5e3, 0x3a5e2, 0x000d0, | |
537 0x00775, 0x01efe, 0x03dd5, 0x0728c, 0x07cb9, 0x0e1a2, 0x0ea85, 0x0eed8, | |
538 0x1a30a, 0x1aa4f, 0x3a5df, 0x35008, 0x3a5e0, 0x3e5f4, 0x3e5f7, 0xb1d6c, | |
539 0x5843e, 0x34a70, 0x72df8, 0x74b6b, 0xd427f, 0x72df0, 0x5b0bf, 0x5b0c0, | |
540 0xd46b0, 0x72def, 0xe59f8, 0x162e64, 0xb1d6f, 0x3a5e0, 0x39427, 0x69166, | |
541 0x6a3e2, 0x6a3e3, 0x74a8d, 0xd427e, 0x1d5d97, 0xd46b4, 0x5b0d8, 0x6a3d3, | |
542 0x000e0, 0x00b63, 0x034cc, 0x06a33, 0x073c9, 0x0e1a0, 0x0f7fd, 0x0f9cc, | |
543 0x1617d, 0x1caeb, 0x1f4a9, 0x3abb3, 0x69450, 0x39420, 0x39777, 0x3e5e0, | |
544 0x6a3d4, 0x6a3ed, 0xb6166, 0xe59f1, 0xb1d6e, 0xe5676, 0x6a3ea, 0xe5674, | |
545 0xb6163, 0xd46b7, 0x7cba6, 0xd46ba, 0x1d5d94, 0xb6164, 0x6a3f1, 0x7cba2, | |
546 0x69451, 0x72dfa, 0xd46bb, 0x72df7, 0x74b94, 0x1cecbf, 0xe59fa, 0x16009b, | |
547 0x6a3e4, 0x000e6, 0x00e94, 0x03876, 0x070ef, 0x0d52a, 0x16015, 0x16014, | |
548 0x1abf9, 0x1cf17, 0x34a79, 0x34650, 0x3e705, 0x6a3d0, 0x58430, 0x74b9d, | |
549 0x7be7e, 0x5b0be, 0x39773, 0x6a3de, 0x000fb, 0x00f7b, 0x03dd7, 0x07bd0, | |
550 0x0e59c, 0x0f9cd, 0x1cf18, 0x1d2ff, 0x34a7a, 0x39429, 0x3500c, 0x72de0, | |
551 0x69456, 0x7be7c, 0xd46b5, 0xd46b2, 0x6a3dd, 0x001a2, 0x0163b, 0x06913, | |
552 0x0b016, 0x0fa42, 0x1a32d, 0x1cf06, 0x34a7c, 0x34a7d, 0xb6161, 0x35481, | |
553 0x3e5fa, 0x7cba0, 0x7be7f, 0x7cba3, 0x7cba7, 0x5b0d3, 0x72de6, 0x6a3dc, | |
554 0x001a9, 0x01ab4, 0x06a34, 0x0d46a, 0x16130, 0x1ef5f, 0x1f532, 0x1f536, | |
555 0x3942e, 0x58436, 0x6a3db, 0x6945b, 0x001c9, 0x01ca0, 0x0728b, 0x0eed9, | |
556 0x1f539, 0x1ca1d, 0x39765, 0x39766, 0x58439, 0x6945d, 0x39767, 0x001d3, | |
557 0x01f2c, 0x07bfc, 0x16161, 0x34652, 0x3a5ed, 0x3548d, 0x58438, 0x6a3da, | |
558 0x002c1, 0x02c5e, 0x0d335, 0x1ab1a, 0x2d874, 0x35006, 0x35484, 0x5b0cc, | |
559 0x74b9a, 0x72df3, 0x6a3d6, 0x002da, 0x034b3, 0x0d5ae, 0x1caee, 0x2d871, | |
560 0x357e3, 0x74b97, 0x72df9, 0x580ba, 0x5b0d4, 0x0034d, 0x0354e, 0x0f750, | |
561 0x1cbc0, 0x3a5e7, 0x3a5e4, 0x00385, 0x03a58, 0x16c41, 0x2c5cf, 0x3e5e1, | |
562 0x74b6c, 0xe5677, 0x6a3df, 0x00390, 0x03e50, 0x163c2, 0x2d876, 0x35482, | |
563 0x5b0d6, 0x5843a, 0x0039f, 0x0585e, 0x1a583, 0x3500f, 0x74b93, 0x39771, | |
564 0x003e4, 0x06912, 0x16c43, 0x357e1, 0x0058a, 0x0696f, 0x1f538, 0x5b0c9, | |
565 0x6a3cf, 0x005b6, 0x06af8, 0x1f534, 0x58483, 0x6a3e0, 0x00695, 0x07d02, | |
566 0x1cae8, 0x58485, 0x006a2, 0x0754a, 0x357ee, 0x3977b, 0x00748, 0x074b2, | |
567 0x34a7b, 0x00729, 0x0b1e0, 0x34649, 0x3e5e3, 0x0073d, 0x0d2c4, 0x3e5e6, | |
568 0x007bb, 0x0b099, 0x39762, 0x5b0ce, 0x6945f, 0x007d1, 0x0d5ab, 0x39779, | |
569 0x007d3, 0x0d52f, 0x39763, 0x6945c, 0x00b1a, 0x0d2c5, 0x35489, 0x00d23, | |
570 0x0eaed, 0x3e5f8, 0x00d32, 0x16016, 0x3e5fb, 0x00d41, 0x0e768, 0x3a5ed, | |
571 0x00e1f, 0x16017, 0x58027, 0x00ead, 0x0fa07, 0x69455, 0x00e54, 0x1612b, | |
572 0x00e55, 0x1a581, 0x00f78, 0x1a32b, 0x580bc, 0x6a3ee, 0x00f79, 0x1abfd, | |
573 0x00f95, 0x1ab18, 0x6a3f0, 0x01637, 0x1aa4d, 0x0162d, 0x1f53c, 0x6a3f3, | |
574 0x01a31, 0x1a810, 0x39769, 0x01a50, 0x1caef, 0x01a36, 0x1a32e, 0x01a67, | |
575 0x1f38e, 0x01a85, 0x1ef59, 0x01aa6, 0x1ef83, 0x01d51, 0x2c012, 0x01d53, | |
576 0x2d879, 0x01d5e, 0x35005, 0x01cba, 0x1cf04, 0x69453, 0x01d2d, 0x351ff, | |
577 0x01f2d, 0x2d86f, 0x01f29, 0x35007, 0x02c22, 0x351fa, 0x02c03, 0x3a5ec, | |
578 0x02c5f, 0x3a5eb, 0x02c58, 0x34a6b, 0x03469, 0x356be, 0x02c59, 0x34a6c, | |
579 0x0346a, 0x3a5ea, 0x034bd, 0x034bf, 0x356bf, 0x0386a, 0x03ab9, 0x5843f, | |
580 0x0386b, 0x3a5f5, 0x03a4b, 0x39421, 0x03aa4, 0x3a5e9, 0x03a5a, 0x03960, | |
581 0x3977e, 0x03de9, 0x03958, 0x03df7, 0x039e1, 0x3e5e4, 0x0395f, 0x69458, | |
582 0x03e91, 0x03df2, 0x39428, 0x058f2, 0x03e80, 0x6a3c3, 0x03e93, 0x694c0, | |
583 0x058b8, 0x5b0ca, 0x0584f, 0x694c1, 0x058f1, 0x068d6, 0x06a10, 0x06ac3, | |
584 0x06a32, 0x070d2, 0x06911, 0x074b1, 0x07494, 0x06ad4, 0x06ad6, 0x072b8, | |
585 0x06afa, 0x074b3, 0x07540, 0x073ce, 0x0b005, 0x074b3, 0x07495, 0x074b9, | |
586 0x0d336, 0x07bff, 0x07763, 0x073c8, 0x07d29, 0x0b622, 0x0d221, 0x0d181, | |
587 0x0b1d1, 0x074b8, 0x0b1d0, 0x0d19b, 0x0d2c3, 0x0b172, 0x0d2dc, 0x0b623, | |
588 0x0d5aa, 0x0d426, 0x0d182, 0x0e795, 0x0e1d1, 0x0d337, 0x0e96c, 0x0e5e4, | |
589 0x0e514, 0x0eaee, 0x16000, 0x0e767, 0x0e1a1, 0x0e78f, 0x16004, 0x0f7c2, | |
590 0x0e799, 0x0e5e7, 0x0e566, 0x0e769, 0x0f751, 0x0eede, 0x0fa06, 0x16005, | |
591 0x0fa9f, 0x1a5e6, 0x0e766, 0x1636f, 0x0eedd, 0x0eec0, 0x1a309, 0x1ceca, | |
592 0x163cd, 0x0f9cb, 0x0eedf, 0x1a582, 0x1612d, 0x0e5e5, 0x1abf8, 0x1a30c, | |
593 0x1ca1f, 0x163cc, 0x1a35c, 0x1ca1e, 0x1aa51, 0x163ac, 0x1a84e, 0x1a53f, | |
594 0x1cf16, 0x1d2fc, 0x1a5b3, 0x1ab19, 0x1a81f, 0x1d5c3, 0x16c3f, 0x1d5c1, | |
595 0x1d2fc, 0x1f4aa, 0x1a812, 0x1f535, 0x1cf12, 0x1a817, 0x1617c, 0x1ab0b, | |
596 0x1d2f8, 0x1ef82, 0x2d87a, 0x1d52f, 0x1f530, 0x1aa48, 0x35487, 0x1d2fd, | |
597 0x1f4ad, 0x1cf11, 0x3461b, 0x35485, 0x1ca20, 0x1caed, 0x1cae6, 0x1abff, | |
598 0x3464f, 0x34a6f, 0x1ef81, 0x3464b, 0x39d96, 0x1f383, 0x1f537, 0x1cf14, | |
599 0x2c5ce, 0x3500e, 0x2c251, 0x1caec, 0x1f387, 0x34654, 0x357e4, 0x2d878, | |
600 0x3500b, 0x35480, 0x3a5e8, 0x3548e, 0x34b64, 0x1f4a8, 0x35003, 0x3e5df, | |
601 0x2d870, 0x357e6, 0x3e5f0, 0x1ef5a, 0x3a5ea, 0x1f388, 0x3e703, 0x2c24e, | |
602 0x3a5e2, 0x351fd, 0x2c6dd, 0x3e704, 0x351fe, 0x2d875, 0x5b0c7, 0x3976a, | |
603 0x3a5e6, 0x39423, 0x58480, 0x2c246, 0x3a5e3, 0x2d877, 0x3e5f1, 0x3abbe, | |
604 0x58489, 0x3e5f9, 0x357e0, 0x3abbc, 0x5b0c6, 0x69167, 0x69165, 0x3e5e9, | |
605 0x39422, 0x3976f, 0x3977d, 0x3e5de, 0x6a3c9, 0x58b98, 0x3a5f6, 0x3a5d0, | |
606 0x58486, 0x6a3c1, 0x3e5fc, 0x5b0dc, 0x3548f, 0x3942d, 0x694c9, 0x58484, | |
607 0x3a5e8, 0x74b9b, 0x74b96, 0x694d0, 0x58488, 0x3a5e4, 0x3942a, 0x72ec2, | |
608 0x39776, 0x5b0d1, 0x5b0cf, 0x3a5d6, 0xe59fc, 0x5b0c8, 0x3e5e7, 0x7cbb7, | |
609 0x70e87, 0x7cbab, 0x5b0c2, 0x694c3, 0x74a8e, 0x3e5f3, 0x6a3cd, 0x72dfe, | |
610 0x73b2e, 0x72ec0, 0x694c5, 0x58437, 0x694c8, 0x72dff, 0x39435, 0x5843d, | |
611 0x6a3d7, 0x72ec1, 0xd22c8, 0x694cf, 0xb6173, 0x3e5fe, 0x580bb, 0xe59f2, | |
612 0xb616e, 0xb6175, 0x3a5da, 0x5b0bd, 0x694cc, 0x5843c, 0x694c7, 0x74b92, | |
613 0x72ec3, 0x694c6, 0xb6170, 0x7cbac, 0xb1733, 0x7cba4, 0xb6167, 0x72de7, | |
614 0x72de4, 0x6a3c0, 0x3e5ef, 0x162e65, 0x72de3, 0x72dfb, 0x6a35f, 0x6a3eb, | |
615 }; | |
616 | |
617 static const uint8_t coef2_huffbits[1336] = { | |
618 11, 9, 2, 3, 4, 4, 5, 6, | |
619 6, 7, 7, 8, 8, 8, 9, 9, | |
620 9, 9, 10, 10, 10, 10, 11, 11, | |
621 11, 11, 11, 11, 11, 12, 12, 12, | |
622 12, 12, 12, 12, 12, 12, 13, 13, | |
623 13, 13, 13, 13, 13, 13, 13, 14, | |
624 14, 14, 14, 14, 14, 14, 14, 14, | |
625 14, 14, 14, 14, 14, 15, 15, 15, | |
626 15, 15, 15, 15, 15, 15, 15, 15, | |
627 15, 15, 15, 15, 15, 16, 15, 16, | |
628 16, 16, 16, 16, 16, 16, 16, 16, | |
629 16, 16, 16, 16, 16, 16, 16, 16, | |
630 17, 17, 17, 17, 17, 17, 17, 17, | |
631 17, 17, 17, 18, 17, 17, 17, 17, | |
632 17, 17, 17, 18, 18, 17, 17, 18, | |
633 17, 17, 18, 17, 18, 18, 18, 18, | |
634 19, 18, 18, 18, 18, 18, 18, 20, | |
635 18, 18, 18, 19, 19, 18, 19, 18, | |
636 19, 19, 18, 19, 19, 18, 19, 19, | |
637 19, 19, 18, 19, 19, 19, 19, 19, | |
638 19, 19, 20, 20, 20, 19, 19, 20, | |
639 19, 20, 19, 19, 20, 19, 19, 20, | |
640 20, 20, 20, 19, 20, 21, 19, 3, | |
641 5, 7, 8, 9, 9, 10, 11, 11, | |
642 12, 12, 12, 13, 13, 13, 13, 14, | |
643 14, 14, 14, 15, 15, 15, 15, 15, | |
644 15, 15, 15, 15, 15, 15, 16, 16, | |
645 15, 15, 15, 15, 16, 16, 16, 16, | |
646 17, 16, 17, 17, 16, 17, 17, 17, | |
647 17, 17, 17, 16, 17, 17, 17, 17, | |
648 18, 17, 17, 18, 18, 18, 18, 18, | |
649 19, 18, 18, 18, 18, 18, 18, 19, | |
650 19, 18, 18, 18, 18, 19, 18, 19, | |
651 19, 19, 20, 19, 18, 19, 19, 19, | |
652 19, 19, 19, 19, 19, 19, 19, 20, | |
653 20, 19, 20, 19, 20, 19, 20, 19, | |
654 19, 21, 20, 20, 19, 4, 7, 8, | |
655 10, 11, 11, 12, 12, 13, 13, 14, | |
656 14, 14, 14, 15, 15, 15, 15, 15, | |
657 16, 16, 16, 16, 16, 16, 16, 17, | |
658 17, 17, 17, 17, 17, 17, 16, 16, | |
659 16, 16, 17, 17, 17, 17, 18, 18, | |
660 18, 17, 17, 18, 18, 18, 18, 18, | |
661 18, 18, 18, 18, 19, 18, 18, 18, | |
662 19, 18, 19, 19, 19, 20, 20, 20, | |
663 19, 19, 19, 19, 19, 19, 19, 21, | |
664 21, 20, 19, 5, 8, 10, 11, 12, | |
665 13, 13, 13, 14, 14, 15, 15, 15, | |
666 15, 16, 16, 16, 16, 16, 17, 17, | |
667 17, 17, 17, 17, 17, 17, 18, 17, | |
668 18, 17, 17, 17, 17, 17, 17, 17, | |
669 17, 17, 17, 17, 19, 18, 19, 18, | |
670 18, 18, 18, 18, 19, 18, 17, 17, | |
671 18, 18, 19, 19, 19, 19, 18, 18, | |
672 18, 19, 6, 9, 11, 12, 13, 13, | |
673 14, 14, 14, 15, 15, 16, 16, 16, | |
674 16, 16, 16, 17, 17, 17, 18, 18, | |
675 18, 18, 18, 18, 18, 18, 18, 18, | |
676 18, 17, 18, 18, 17, 18, 18, 18, | |
677 18, 18, 18, 19, 19, 18, 18, 18, | |
678 19, 19, 19, 20, 19, 19, 18, 19, | |
679 19, 20, 21, 21, 19, 19, 18, 6, | |
680 10, 12, 13, 14, 14, 14, 15, 15, | |
681 15, 16, 16, 17, 17, 17, 17, 17, | |
682 17, 17, 18, 18, 19, 18, 18, 18, | |
683 19, 18, 18, 18, 19, 18, 18, 18, | |
684 18, 18, 18, 18, 18, 18, 18, 18, | |
685 19, 20, 20, 19, 19, 19, 19, 20, | |
686 20, 19, 20, 19, 19, 19, 20, 20, | |
687 20, 19, 19, 18, 19, 7, 10, 12, | |
688 13, 14, 15, 15, 15, 16, 16, 17, | |
689 17, 17, 17, 17, 17, 18, 18, 18, | |
690 18, 19, 18, 19, 19, 19, 20, 19, | |
691 18, 19, 19, 18, 18, 19, 19, 19, | |
692 18, 19, 19, 20, 19, 18, 20, 21, | |
693 20, 20, 19, 19, 21, 20, 21, 20, | |
694 20, 20, 19, 19, 20, 20, 21, 20, | |
695 19, 7, 11, 13, 14, 15, 15, 15, | |
696 16, 16, 17, 17, 17, 17, 18, 18, | |
697 18, 18, 18, 19, 20, 19, 19, 20, | |
698 19, 19, 19, 19, 19, 19, 19, 19, | |
699 18, 18, 19, 20, 19, 19, 19, 20, | |
700 19, 19, 19, 20, 19, 20, 20, 21, | |
701 20, 20, 20, 21, 22, 20, 19, 20, | |
702 20, 21, 20, 21, 20, 19, 8, 11, | |
703 13, 14, 15, 16, 16, 16, 17, 17, | |
704 17, 18, 18, 18, 18, 18, 19, 18, | |
705 19, 19, 19, 19, 21, 19, 19, 21, | |
706 19, 20, 20, 20, 19, 18, 18, 8, | |
707 12, 14, 15, 16, 16, 16, 16, 17, | |
708 17, 17, 19, 18, 18, 19, 19, 20, | |
709 19, 18, 20, 19, 20, 20, 19, 19, | |
710 20, 20, 21, 21, 20, 19, 19, 19, | |
711 19, 19, 19, 20, 21, 20, 19, 19, | |
712 8, 12, 14, 15, 16, 16, 17, 17, | |
713 17, 18, 18, 18, 19, 19, 19, 19, | |
714 19, 19, 20, 21, 20, 21, 19, 21, | |
715 20, 20, 20, 20, 21, 20, 19, 20, | |
716 19, 20, 20, 20, 19, 22, 21, 21, | |
717 19, 9, 12, 14, 15, 16, 17, 17, | |
718 17, 18, 18, 18, 19, 19, 19, 19, | |
719 20, 19, 19, 19, 9, 13, 15, 16, | |
720 17, 17, 18, 18, 18, 19, 18, 20, | |
721 19, 20, 20, 20, 19, 9, 13, 15, | |
722 16, 17, 17, 18, 18, 18, 20, 18, | |
723 19, 20, 20, 20, 20, 19, 20, 19, | |
724 9, 13, 15, 16, 17, 18, 18, 18, | |
725 19, 19, 19, 19, 10, 14, 16, 17, | |
726 18, 18, 19, 19, 19, 19, 19, 10, | |
727 14, 16, 17, 18, 18, 18, 19, 19, | |
728 10, 14, 16, 17, 18, 18, 18, 19, | |
729 19, 20, 19, 10, 14, 16, 18, 18, | |
730 18, 19, 20, 19, 19, 10, 14, 17, | |
731 18, 18, 18, 10, 15, 17, 18, 19, | |
732 19, 21, 19, 11, 15, 17, 18, 18, | |
733 19, 19, 11, 15, 17, 18, 19, 19, | |
734 11, 15, 17, 18, 11, 15, 18, 19, | |
735 19, 11, 15, 18, 19, 19, 11, 16, | |
736 18, 19, 11, 15, 18, 19, 11, 16, | |
737 18, 12, 16, 18, 19, 12, 16, 19, | |
738 12, 16, 19, 19, 19, 12, 16, 19, | |
739 12, 16, 19, 19, 12, 16, 18, 12, | |
740 16, 19, 12, 17, 19, 12, 17, 19, | |
741 12, 17, 19, 12, 17, 19, 13, 17, | |
742 13, 17, 13, 17, 19, 19, 13, 17, | |
743 13, 17, 19, 13, 17, 13, 18, 19, | |
744 13, 17, 19, 13, 18, 13, 17, 13, | |
745 18, 13, 18, 13, 18, 13, 18, 13, | |
746 18, 13, 18, 14, 18, 19, 14, 18, | |
747 14, 18, 14, 18, 14, 18, 14, 19, | |
748 14, 19, 14, 18, 14, 18, 14, 18, | |
749 14, 19, 14, 14, 18, 14, 14, 19, | |
750 14, 18, 14, 19, 14, 19, 14, 15, | |
751 19, 15, 15, 15, 15, 19, 15, 19, | |
752 15, 15, 19, 15, 15, 19, 15, 19, | |
753 15, 19, 15, 19, 15, 15, 15, 15, | |
754 15, 15, 15, 15, 15, 15, 15, 16, | |
755 15, 15, 15, 16, 16, 16, 15, 16, | |
756 16, 16, 16, 16, 16, 16, 16, 16, | |
757 16, 16, 16, 16, 16, 16, 16, 16, | |
758 16, 16, 16, 17, 16, 16, 16, 17, | |
759 17, 16, 17, 17, 16, 17, 17, 17, | |
760 17, 17, 17, 17, 17, 17, 17, 17, | |
761 17, 17, 17, 17, 17, 17, 17, 18, | |
762 17, 17, 17, 17, 17, 17, 17, 17, | |
763 18, 17, 17, 18, 17, 17, 17, 17, | |
764 18, 18, 17, 17, 17, 17, 17, 17, | |
765 17, 18, 17, 18, 18, 17, 17, 17, | |
766 18, 18, 18, 17, 18, 17, 18, 18, | |
767 18, 18, 18, 18, 18, 18, 18, 17, | |
768 18, 18, 18, 18, 19, 18, 18, 18, | |
769 18, 18, 18, 18, 18, 18, 18, 18, | |
770 18, 18, 18, 18, 18, 18, 18, 19, | |
771 18, 18, 19, 18, 18, 18, 19, 18, | |
772 19, 18, 18, 19, 18, 18, 19, 19, | |
773 19, 19, 19, 18, 19, 18, 19, 18, | |
774 19, 19, 18, 18, 19, 19, 19, 19, | |
775 19, 19, 19, 19, 19, 19, 18, 19, | |
776 19, 19, 19, 19, 18, 19, 19, 19, | |
777 19, 19, 19, 19, 19, 19, 19, 20, | |
778 19, 19, 19, 19, 21, 19, 19, 20, | |
779 19, 20, 19, 19, 19, 19, 19, 20, | |
780 20, 20, 19, 19, 19, 20, 19, 19, | |
781 19, 20, 20, 19, 20, 19, 19, 21, | |
782 20, 20, 19, 19, 19, 19, 19, 19, | |
783 20, 19, 20, 20, 20, 20, 20, 20, | |
784 20, 19, 19, 21, 20, 20, 19, 19, | |
785 }; | |
786 | |
787 static const uint32_t coef3_huffcodes[1072] = { | |
788 0x001b2, 0x00069, 0x00000, 0x00004, 0x00006, 0x0000e, 0x00014, 0x00019, | |
789 0x00016, 0x0002b, 0x00030, 0x0003d, 0x0003c, 0x0005a, 0x0005f, 0x0006d, | |
790 0x0007e, 0x0005f, 0x0007f, 0x000b6, 0x000bc, 0x000d8, 0x000f2, 0x000fe, | |
791 0x000bc, 0x000fc, 0x00161, 0x0016e, 0x00174, 0x00176, 0x001a2, 0x001e3, | |
792 0x001f3, 0x00174, 0x0017a, 0x001ea, 0x002a8, 0x002c4, 0x002e6, 0x00314, | |
793 0x00346, 0x00367, 0x003e9, 0x002e5, 0x002ee, 0x003d6, 0x00555, 0x00554, | |
794 0x00557, 0x005c3, 0x005d6, 0x006e0, 0x0062f, 0x006e2, 0x00799, 0x00789, | |
795 0x007fa, 0x005ce, 0x007fe, 0x005ec, 0x007cc, 0x007af, 0x00aa7, 0x00b19, | |
796 0x00b94, 0x00b85, 0x00b9f, 0x00c48, 0x00c45, 0x00dd8, 0x00c4c, 0x00c4b, | |
797 0x00d99, 0x00d1f, 0x00dc2, 0x00f95, 0x00fa2, 0x00bb5, 0x00b9f, 0x00f5d, | |
798 0x00bbf, 0x00f47, 0x0154a, 0x00fd5, 0x00f45, 0x00f7f, 0x0160d, 0x01889, | |
799 0x01757, 0x01722, 0x018b3, 0x0172d, 0x01a39, 0x01a18, 0x01bb3, 0x01b30, | |
800 0x01e63, 0x0173c, 0x01b35, 0x01723, 0x01e80, 0x01fee, 0x01761, 0x01ffc, | |
801 0x01f7f, 0x02c7c, 0x01fa1, 0x0177b, 0x01755, 0x0175a, 0x01fa6, 0x02eab, | |
802 0x0310a, 0x02c69, 0x03669, 0x03127, 0x03103, 0x02e43, 0x03662, 0x03165, | |
803 0x03124, 0x0313b, 0x03111, 0x03668, 0x0343b, 0x03c52, 0x03efc, 0x02e6c, | |
804 0x03fda, 0x03ef8, 0x02e7b, 0x03ee2, 0x03cc5, 0x03d72, 0x058c0, 0x03df8, | |
805 0x02ea9, 0x03e7e, 0x0556d, 0x05c82, 0x03d71, 0x03e7b, 0x03c42, 0x058d7, | |
806 0x03f4e, 0x06200, 0x03d70, 0x05cb2, 0x05c96, 0x05cb0, 0x03f45, 0x05cb1, | |
807 0x02e6d, 0x03110, 0x02f68, 0x05c90, 0x07ca6, 0x07c88, 0x06204, 0x062c8, | |
808 0x078a6, 0x07986, 0x079d5, 0x0b1ad, 0x07989, 0x0b079, 0x05cdd, 0x0aad4, | |
809 0x05de8, 0x07dcd, 0x07987, 0x05d67, 0x05d99, 0x0b91d, 0x07cf1, 0x05d9b, | |
810 0x079d7, 0x0b07b, 0x05c85, 0x05d9a, 0x07dcc, 0x07ebf, 0x07dce, 0x07dfb, | |
811 0x07ec0, 0x07d1a, 0x07a07, 0x05c84, 0x0c471, 0x07cf2, 0x0baef, 0x0b9d2, | |
812 0x05deb, 0x07bd6, 0x0b845, 0x05d98, 0x0b91a, 0x0bae8, 0x0c4e0, 0x0dc31, | |
813 0x0f93d, 0x0bbce, 0x0d1d2, 0x0f7a9, 0x0d9b9, 0x0bbcb, 0x0b900, 0x0aad7, | |
814 0x0babd, 0x0c4e1, 0x0f46f, 0x0c588, 0x0c58b, 0x160e6, 0x0bbcf, 0x0bac3, | |
815 0x0f945, 0x0f7a3, 0x0d1c1, 0x0fb8e, 0x0f7a4, 0x0fb8c, 0x0f40c, 0x0c473, | |
816 0x0fd72, 0x0bbcd, 0x0fffa, 0x0f940, 0x0bbc9, 0x0f7a8, 0x1a1ed, 0x0bbc5, | |
817 0x1f26f, 0x163fd, 0x160c7, 0x1a1f5, 0x0f947, 0x163fc, 0x154b3, 0x0fff6, | |
818 0x163f6, 0x160e9, 0x1a1f0, 0x0bab9, 0x0baba, 0x17086, 0x0b903, 0x0fd75, | |
819 0x0f308, 0x176f3, 0x163ff, 0x0fd7d, 0x1bb78, 0x163fb, 0x188db, 0x1a1f7, | |
820 0x154b2, 0x172fd, 0x163f4, 0x1bb73, 0x172ff, 0x0babc, 0x0f97d, 0x1a1f3, | |
821 0x1bb6d, 0x1ffd5, 0x1a1f4, 0x1f272, 0x17380, 0x17382, 0x1ffe7, 0x0bac8, | |
822 0x0bbc4, 0x188d3, 0x160e0, 0x0fd7b, 0x1725f, 0x172f5, 0x1bb79, 0x1fad9, | |
823 0x1f269, 0x188d0, 0x0bac4, 0x0bac5, 0x31185, 0x188d2, 0x188cc, 0x31187, | |
824 0x3e7fe, 0x188d1, 0x1bb6c, 0x1f268, 0x1fad2, 0x1ffd9, 0x1a1ea, 0x1bb68, | |
825 0x1facb, 0x3fdb2, 0x1e81a, 0x188ce, 0x172fb, 0x1a1ef, 0x1face, 0x1bb70, | |
826 0x0bac1, 0x1bb6b, 0x172f8, 0x1bb66, 0x1ffdf, 0x1bb6a, 0x1ffd7, 0x1f266, | |
827 0x176f8, 0x37653, 0x1fa7e, 0x31182, 0x1fac8, 0x2c7e3, 0x370ee, 0x176ec, | |
828 0x176e9, 0x2e4bc, 0x160c5, 0x3765a, 0x3ce9c, 0x17373, 0x176e8, 0x188d4, | |
829 0x176f1, 0x176ef, 0x37659, 0x1bb7c, 0x1ffde, 0x176f2, 0x3118b, 0x2c7d4, | |
830 0x37651, 0x5ce9f, 0x37650, 0x31191, 0x3f4f6, 0x3f4f5, 0x7a06c, 0x1fac1, | |
831 0x5c97b, 0x2c7e0, 0x79d3a, 0x3e7fd, 0x2c7df, 0x3f4f0, 0x7a06d, 0x376c1, | |
832 0x79d3b, 0x00004, 0x00014, 0x00059, 0x000ab, 0x000b8, 0x00177, 0x001f5, | |
833 0x001f2, 0x00315, 0x003fc, 0x005bd, 0x0062d, 0x006e8, 0x007dd, 0x00b04, | |
834 0x007cd, 0x00b1e, 0x00d1e, 0x00f15, 0x00f3b, 0x00f41, 0x01548, 0x018b0, | |
835 0x0173b, 0x01884, 0x01a1c, 0x01bb4, 0x01f25, 0x017b5, 0x0176d, 0x01ef8, | |
836 0x02e73, 0x03107, 0x03125, 0x03105, 0x02e49, 0x03ce8, 0x03ef9, 0x03e5e, | |
837 0x02e72, 0x03471, 0x03fd9, 0x0623f, 0x078a0, 0x06867, 0x05cb3, 0x06272, | |
838 0x068ec, 0x06e9a, 0x079d4, 0x06e98, 0x0b1aa, 0x06e1a, 0x07985, 0x068ee, | |
839 0x06e9b, 0x05c88, 0x0b1ac, 0x07dfa, 0x05d65, 0x07cf0, 0x07cbf, 0x0c475, | |
840 0x160eb, 0x1bb7e, 0x0f7a6, 0x1fedd, 0x160e3, 0x0fffb, 0x0fb8d, 0x0fff9, | |
841 0x0d1c0, 0x0c58c, 0x1a1e9, 0x0bab8, 0x0f5cf, 0x0fff5, 0x376c5, 0x1a1ec, | |
842 0x160ed, 0x1fede, 0x1fac9, 0x1a1eb, 0x1f224, 0x176ee, 0x0fd79, 0x17080, | |
843 0x17387, 0x1bb7a, 0x1ffe9, 0x176f7, 0x17385, 0x17781, 0x2c7d5, 0x17785, | |
844 0x1ffe3, 0x163f5, 0x1fac2, 0x3e7f9, 0x3118d, 0x3fdb1, 0x1ffe2, 0x1f226, | |
845 0x3118a, 0x2c7d9, 0x31190, 0x3118c, 0x3f4f3, 0x1bb7f, 0x1bb72, 0x31184, | |
846 0xb92f4, 0x3e7fb, 0x6e1d9, 0x1faca, 0x62300, 0x3fdb8, 0x3d037, 0x3e7fc, | |
847 0x62301, 0x3f4f2, 0x1f26a, 0x0000e, 0x00063, 0x000f8, 0x001ee, 0x00377, | |
848 0x003f7, 0x006e3, 0x005cc, 0x00b05, 0x00dd2, 0x00fd4, 0x0172e, 0x0172a, | |
849 0x01e23, 0x01f2d, 0x01763, 0x01769, 0x0176c, 0x02e75, 0x03104, 0x02ec1, | |
850 0x03e58, 0x0583f, 0x03f62, 0x03f44, 0x058c5, 0x0623c, 0x05cf4, 0x07bd7, | |
851 0x05d9d, 0x0aad2, 0x05d66, 0x0b1a9, 0x0b078, 0x07cfe, 0x0b918, 0x0c46f, | |
852 0x0b919, 0x0b847, 0x06e1b, 0x0b84b, 0x0aad8, 0x0fd74, 0x172f4, 0x17081, | |
853 0x0f97c, 0x1f273, 0x0f7a0, 0x0fd7c, 0x172f7, 0x0fd7a, 0x1bb77, 0x172fe, | |
854 0x1f270, 0x0fd73, 0x1bb7b, 0x1a1bc, 0x1bb7d, 0x0bbc3, 0x172f6, 0x0baeb, | |
855 0x0fb8f, 0x3f4f4, 0x3fdb4, 0x376c8, 0x3e7fa, 0x1ffd0, 0x62303, 0xb92f5, | |
856 0x1f261, 0x31189, 0x3fdb5, 0x2c7db, 0x376c9, 0x1fad6, 0x1fad1, 0x00015, | |
857 0x000f0, 0x002e0, 0x0058e, 0x005d7, 0x00c4d, 0x00fa1, 0x00bdb, 0x01756, | |
858 0x01f70, 0x02c19, 0x0313c, 0x0370f, 0x03cc0, 0x02ea8, 0x058c6, 0x058c7, | |
859 0x02eb7, 0x058d0, 0x07d18, 0x0aa58, 0x0b848, 0x05d9e, 0x05d6c, 0x0b84c, | |
860 0x0c589, 0x0b901, 0x163f8, 0x0bac9, 0x0b9c5, 0x0f93c, 0x188d8, 0x0bbc7, | |
861 0x160ec, 0x0fd6f, 0x188d9, 0x160ea, 0x0f7a7, 0x0f944, 0x0baab, 0x0dc3a, | |
862 0x188cf, 0x176fb, 0x2c7d8, 0x2c7d7, 0x1bb75, 0x5ce9e, 0x62302, 0x370ed, | |
863 0x176f4, 0x1ffd1, 0x370ef, 0x3f4f8, 0x376c7, 0x1ffe1, 0x376c6, 0x176ff, | |
864 0x6e1d8, 0x176f6, 0x17087, 0x0f5cd, 0x00035, 0x001a0, 0x0058b, 0x00aac, | |
865 0x00b9a, 0x0175f, 0x01e22, 0x01e8c, 0x01fb2, 0x0310b, 0x058d1, 0x0552e, | |
866 0x05c27, 0x0686e, 0x07ca7, 0x0c474, 0x0dc33, 0x07bf2, 0x05de9, 0x07a35, | |
867 0x0baaa, 0x0b9eb, 0x0fb95, 0x0b9b8, 0x17381, 0x1f262, 0x188cd, 0x17088, | |
868 0x172fa, 0x0f7a2, 0x1fad3, 0x0bac0, 0x3765c, 0x1fedf, 0x1f225, 0x1fad4, | |
869 0x2c7da, 0x5ce9d, 0x3e7f8, 0x1e203, 0x188d7, 0x00054, 0x002c0, 0x007a1, | |
870 0x00f78, 0x01b36, 0x01fa3, 0x0313a, 0x03436, 0x0343a, 0x07d1d, 0x07bd8, | |
871 0x05cdf, 0x0b846, 0x0b189, 0x0d9b8, 0x0fff8, 0x0d9be, 0x0c58a, 0x05dea, | |
872 0x0d1d3, 0x160e4, 0x1f26b, 0x188da, 0x1e202, 0x2c7d2, 0x163fe, 0x31193, | |
873 0x17782, 0x376c2, 0x2c7d1, 0x3fdb0, 0x3765d, 0x2c7d0, 0x1fad0, 0x1e201, | |
874 0x188dd, 0x2c7e2, 0x37657, 0x37655, 0x376c4, 0x376c0, 0x176ea, 0x0006f, | |
875 0x003cf, 0x00dd5, 0x01f23, 0x02c61, 0x02ed0, 0x05d54, 0x0552d, 0x07883, | |
876 0x0b1a8, 0x0b91c, 0x0babf, 0x0b902, 0x0f7aa, 0x0f7a5, 0x1a1e8, 0x1ffd6, | |
877 0x0babe, 0x1a1bf, 0x163f3, 0x1ffd8, 0x1fad7, 0x1f275, 0x1ffdc, 0x0007d, | |
878 0x005bc, 0x01549, 0x02a99, 0x03def, 0x06273, 0x079d6, 0x07d1b, 0x0aad3, | |
879 0x0d0fc, 0x2c7dd, 0x188d6, 0x0bac2, 0x2c7e1, 0x1bb76, 0x1a1bd, 0x31186, | |
880 0x0fd78, 0x1a1be, 0x31183, 0x3fdb6, 0x3f4f1, 0x37652, 0x1fad5, 0x3f4f9, | |
881 0x3e7ff, 0x5ce9c, 0x3765b, 0x31188, 0x17372, 0x000bd, 0x0078b, 0x01f21, | |
882 0x03c43, 0x03ded, 0x0aad6, 0x07ec1, 0x0f942, 0x05c86, 0x17089, 0x0babb, | |
883 0x1ffe8, 0x2c7de, 0x1f26e, 0x1fac4, 0x3f4f7, 0x37656, 0x1fa7d, 0x376c3, | |
884 0x3fdb3, 0x3118f, 0x1fac6, 0x000f8, 0x007ed, 0x01efd, 0x03e7a, 0x05c91, | |
885 0x0aad9, 0x0baec, 0x0dc32, 0x0f46e, 0x1e200, 0x176fa, 0x3765e, 0x3fdb7, | |
886 0x2c7d6, 0x3fdb9, 0x37654, 0x37658, 0x3118e, 0x1ffdb, 0x000f6, 0x00c43, | |
887 0x03106, 0x068ef, 0x0b84d, 0x0b188, 0x0bbcc, 0x1f264, 0x1bb69, 0x17386, | |
888 0x1fac0, 0x00171, 0x00f39, 0x03e41, 0x068ed, 0x0d9bc, 0x0f7a1, 0x1bb67, | |
889 0x1ffdd, 0x176f9, 0x001b9, 0x00f7d, 0x03f63, 0x0d0fd, 0x0b9ea, 0x188dc, | |
890 0x1fac3, 0x1a1f2, 0x31192, 0x1ffe4, 0x001f6, 0x01754, 0x06865, 0x0f309, | |
891 0x160e5, 0x176f5, 0x3765f, 0x1facc, 0x001e9, 0x01a1a, 0x06201, 0x0f105, | |
892 0x176f0, 0x002df, 0x01756, 0x05d6d, 0x163fa, 0x176ed, 0x00342, 0x02e40, | |
893 0x0d0ff, 0x17082, 0x003cd, 0x02a98, 0x0fffc, 0x2c7dc, 0x1fa7f, 0x003fe, | |
894 0x03764, 0x0fffd, 0x176fc, 0x1fac5, 0x002f7, 0x02ed1, 0x0fb97, 0x0058a, | |
895 0x02edc, 0x0bbc8, 0x005d4, 0x0623d, 0x160e8, 0x0062e, 0x05830, 0x163f9, | |
896 0x006eb, 0x06205, 0x1f274, 0x007de, 0x062c9, 0x1f265, 0x005c9, 0x05cde, | |
897 0x1ffd3, 0x005d4, 0x07988, 0x007ce, 0x0b849, 0x00b1b, 0x05c89, 0x1fac7, | |
898 0x00b93, 0x05c83, 0x00b9e, 0x0f14f, 0x00c4a, 0x0b9c7, 0x00dd4, 0x0c470, | |
899 0x1f271, 0x00f38, 0x0fb96, 0x176eb, 0x00fa0, 0x163f7, 0x00bb2, 0x0b91b, | |
900 0x00bbe, 0x0f102, 0x00f44, 0x0f946, 0x1facd, 0x00f79, 0x0d9bd, 0x0154d, | |
901 0x0bbc6, 0x00fd2, 0x160e7, 0x0172b, 0x188cb, 0x0175e, 0x0fd76, 0x0175c, | |
902 0x1bb71, 0x0189f, 0x1a1ee, 0x01f24, 0x1a1f6, 0x01ba7, 0x0bbca, 0x01f7d, | |
903 0x0ffff, 0x01f2e, 0x1bb65, 0x01bb5, 0x172f9, 0x01fef, 0x1f26c, 0x01f3e, | |
904 0x0fd77, 0x01762, 0x1bb6e, 0x01ef9, 0x172fc, 0x01fa0, 0x02ab7, 0x02e4a, | |
905 0x1f267, 0x01fb3, 0x1ffda, 0x02e42, 0x03101, 0x17780, 0x0313d, 0x03475, | |
906 0x17784, 0x03126, 0x1facf, 0x03c51, 0x17783, 0x03e40, 0x1ffe5, 0x03663, | |
907 0x1ffe0, 0x03e8f, 0x1f26d, 0x0343c, 0x03cc1, 0x176fd, 0x03e45, 0x02ec0, | |
908 0x03f61, 0x03dee, 0x03fd8, 0x0583e, 0x02e45, 0x03e59, 0x03d02, 0x05ce8, | |
909 0x05568, 0x176fe, 0x02f69, 0x1fad8, 0x058c1, 0x05c83, 0x1ffe6, 0x06271, | |
910 0x06e1c, 0x062c7, 0x068e1, 0x0552f, 0x06864, 0x06866, 0x06e99, 0x05cbc, | |
911 0x07ca5, 0x078a1, 0x05c82, 0x07dcf, 0x0623b, 0x0623e, 0x068e8, 0x07a36, | |
912 0x05d9c, 0x0b077, 0x07cf3, 0x07a34, 0x07ca4, 0x07d19, 0x079d2, 0x07d1c, | |
913 0x07bd9, 0x0b84a, 0x0fb94, 0x0aad5, 0x0dc30, 0x07bf3, 0x0baee, 0x0b07a, | |
914 0x0c472, 0x0b91e, 0x0d9ba, 0x05d9f, 0x0d0fe, 0x0b9c6, 0x05c87, 0x0f14e, | |
915 0x0baed, 0x0b92e, 0x0f103, 0x0b9c4, 0x0fb91, 0x0d9bb, 0x0b1ab, 0x0c58d, | |
916 0x0fffe, 0x0f93b, 0x0f941, 0x0baea, 0x0b91f, 0x0f5cc, 0x0d9bf, 0x0f943, | |
917 0x0f104, 0x1f260, 0x0fb92, 0x0f93f, 0x0f3a6, 0x0bac7, 0x0f7ab, 0x0bac6, | |
918 0x17383, 0x0fd6d, 0x0bae9, 0x0fd6e, 0x1e74f, 0x188ca, 0x1f227, 0x0fb93, | |
919 0x0fb90, 0x0fff7, 0x17085, 0x17083, 0x160e1, 0x17084, 0x0f93e, 0x160e2, | |
920 0x160c6, 0x1a1f1, 0x1bb6f, 0x17384, 0x0fd70, 0x1f263, 0x188d5, 0x173a6, | |
921 0x0f5ce, 0x163f2, 0x0fd71, 0x1ffd2, 0x160c4, 0x1ffd4, 0x2c7d3, 0x1bb74, | |
922 }; | |
923 | |
924 static const uint8_t coef3_huffbits[1072] = { | |
925 9, 7, 2, 3, 4, 4, 5, 5, | |
926 6, 6, 6, 6, 7, 7, 7, 7, | |
927 7, 8, 8, 8, 8, 8, 8, 8, | |
928 9, 9, 9, 9, 9, 9, 9, 9, | |
929 9, 10, 10, 10, 10, 10, 10, 10, | |
930 10, 10, 10, 11, 11, 11, 11, 11, | |
931 11, 11, 11, 11, 11, 11, 11, 11, | |
932 11, 12, 11, 12, 12, 12, 12, 12, | |
933 12, 12, 12, 12, 12, 12, 12, 12, | |
934 12, 12, 12, 12, 12, 13, 13, 13, | |
935 13, 13, 13, 13, 13, 13, 13, 13, | |
936 13, 13, 13, 13, 13, 13, 13, 13, | |
937 13, 14, 13, 14, 14, 13, 14, 13, | |
938 13, 14, 14, 14, 14, 14, 14, 14, | |
939 14, 14, 14, 14, 14, 14, 14, 14, | |
940 14, 14, 14, 14, 14, 14, 14, 15, | |
941 14, 14, 15, 14, 14, 15, 15, 15, | |
942 15, 15, 15, 15, 15, 15, 14, 15, | |
943 15, 15, 15, 15, 15, 15, 15, 15, | |
944 15, 14, 15, 15, 15, 15, 15, 15, | |
945 15, 15, 15, 16, 15, 16, 16, 16, | |
946 16, 15, 15, 16, 16, 16, 16, 16, | |
947 15, 16, 16, 16, 15, 16, 15, 15, | |
948 16, 15, 16, 16, 16, 16, 16, 16, | |
949 16, 16, 16, 16, 16, 16, 16, 16, | |
950 16, 17, 16, 17, 16, 17, 17, 16, | |
951 17, 16, 17, 16, 16, 17, 17, 17, | |
952 16, 17, 16, 16, 17, 16, 17, 16, | |
953 17, 17, 16, 16, 17, 17, 17, 17, | |
954 17, 17, 17, 17, 16, 17, 17, 16, | |
955 17, 17, 17, 17, 17, 17, 17, 17, | |
956 16, 18, 17, 17, 17, 17, 17, 17, | |
957 17, 17, 17, 17, 17, 17, 16, 17, | |
958 17, 17, 17, 17, 17, 17, 17, 17, | |
959 17, 17, 17, 17, 17, 17, 17, 18, | |
960 17, 17, 17, 17, 18, 17, 17, 18, | |
961 19, 17, 17, 17, 18, 17, 17, 17, | |
962 18, 18, 18, 17, 17, 17, 18, 17, | |
963 17, 17, 17, 17, 17, 17, 17, 17, | |
964 18, 18, 18, 18, 18, 18, 18, 18, | |
965 18, 18, 17, 18, 18, 18, 18, 17, | |
966 18, 18, 18, 17, 17, 18, 18, 18, | |
967 18, 19, 18, 18, 19, 19, 20, 18, | |
968 19, 18, 19, 19, 18, 19, 20, 18, | |
969 19, 4, 6, 7, 8, 9, 9, 9, | |
970 10, 10, 10, 11, 11, 11, 11, 12, | |
971 12, 12, 12, 12, 12, 13, 13, 13, | |
972 13, 13, 13, 13, 13, 14, 14, 14, | |
973 14, 14, 14, 14, 14, 14, 14, 14, | |
974 14, 14, 14, 15, 15, 15, 15, 15, | |
975 15, 15, 15, 15, 16, 15, 15, 15, | |
976 15, 16, 16, 15, 16, 16, 15, 16, | |
977 17, 17, 17, 17, 17, 16, 16, 16, | |
978 16, 16, 17, 17, 17, 16, 18, 17, | |
979 17, 17, 18, 17, 17, 18, 17, 17, | |
980 17, 17, 17, 18, 17, 18, 18, 18, | |
981 17, 17, 18, 19, 18, 18, 17, 17, | |
982 18, 18, 18, 18, 19, 17, 17, 18, | |
983 20, 19, 19, 18, 19, 18, 19, 19, | |
984 19, 19, 17, 5, 7, 9, 10, 10, | |
985 11, 11, 12, 12, 12, 13, 13, 13, | |
986 13, 13, 14, 14, 14, 14, 14, 15, | |
987 14, 15, 15, 15, 15, 15, 16, 16, | |
988 16, 16, 16, 16, 16, 16, 16, 16, | |
989 16, 16, 15, 16, 16, 17, 17, 17, | |
990 16, 17, 17, 17, 17, 17, 17, 17, | |
991 17, 17, 17, 17, 17, 17, 17, 16, | |
992 16, 19, 18, 18, 19, 17, 19, 20, | |
993 17, 18, 18, 18, 18, 18, 18, 6, | |
994 8, 10, 11, 12, 12, 12, 13, 13, | |
995 13, 14, 14, 14, 14, 15, 15, 15, | |
996 15, 15, 15, 16, 16, 16, 16, 16, | |
997 16, 17, 17, 17, 16, 16, 17, 17, | |
998 17, 17, 17, 17, 17, 16, 16, 16, | |
999 17, 18, 18, 18, 17, 19, 19, 18, | |
1000 18, 17, 18, 19, 18, 17, 18, 18, | |
1001 19, 18, 17, 17, 6, 9, 11, 12, | |
1002 13, 13, 13, 14, 14, 14, 15, 15, | |
1003 15, 15, 15, 16, 16, 16, 16, 16, | |
1004 16, 17, 16, 17, 17, 17, 17, 17, | |
1005 17, 17, 18, 17, 18, 17, 17, 18, | |
1006 18, 19, 19, 17, 17, 7, 10, 12, | |
1007 13, 13, 14, 14, 14, 14, 15, 16, | |
1008 16, 16, 16, 16, 16, 16, 16, 16, | |
1009 16, 17, 17, 17, 17, 18, 17, 18, | |
1010 18, 18, 18, 18, 18, 18, 18, 17, | |
1011 17, 18, 18, 18, 18, 18, 18, 7, | |
1012 10, 12, 13, 14, 15, 15, 15, 15, | |
1013 16, 16, 17, 17, 17, 17, 17, 17, | |
1014 17, 17, 17, 17, 18, 17, 17, 8, | |
1015 11, 13, 14, 15, 15, 15, 15, 16, | |
1016 16, 18, 17, 17, 18, 17, 17, 18, | |
1017 17, 17, 18, 18, 19, 18, 18, 19, | |
1018 19, 19, 18, 18, 18, 8, 11, 13, | |
1019 14, 15, 16, 16, 16, 16, 17, 17, | |
1020 17, 18, 17, 18, 19, 18, 18, 18, | |
1021 18, 18, 18, 8, 12, 14, 15, 15, | |
1022 16, 16, 16, 17, 17, 18, 18, 18, | |
1023 18, 18, 18, 18, 18, 17, 9, 12, | |
1024 14, 15, 16, 16, 17, 17, 17, 17, | |
1025 18, 9, 12, 14, 15, 16, 17, 17, | |
1026 17, 18, 9, 13, 15, 16, 17, 17, | |
1027 18, 17, 18, 17, 9, 13, 15, 16, | |
1028 17, 18, 18, 18, 10, 13, 15, 16, | |
1029 18, 10, 14, 16, 17, 18, 10, 14, | |
1030 16, 17, 10, 14, 16, 18, 18, 10, | |
1031 14, 16, 18, 18, 11, 15, 16, 11, | |
1032 15, 17, 11, 15, 17, 11, 15, 17, | |
1033 11, 15, 17, 11, 15, 17, 12, 16, | |
1034 17, 12, 15, 12, 16, 12, 16, 18, | |
1035 12, 16, 12, 16, 12, 16, 12, 16, | |
1036 17, 12, 16, 18, 12, 17, 13, 16, | |
1037 13, 16, 13, 16, 18, 13, 16, 13, | |
1038 17, 13, 17, 13, 17, 13, 17, 13, | |
1039 17, 13, 17, 13, 17, 13, 17, 13, | |
1040 16, 13, 17, 13, 17, 13, 17, 14, | |
1041 17, 14, 17, 14, 17, 14, 14, 14, | |
1042 17, 14, 17, 14, 14, 18, 14, 14, | |
1043 18, 14, 18, 14, 18, 14, 17, 14, | |
1044 17, 14, 17, 14, 14, 18, 14, 15, | |
1045 15, 15, 14, 15, 15, 14, 15, 15, | |
1046 15, 18, 15, 18, 15, 15, 17, 15, | |
1047 15, 15, 15, 15, 15, 15, 15, 15, | |
1048 15, 15, 16, 15, 15, 15, 15, 16, | |
1049 16, 16, 16, 16, 15, 15, 15, 15, | |
1050 16, 16, 16, 16, 16, 16, 16, 16, | |
1051 16, 16, 16, 16, 16, 16, 16, 16, | |
1052 16, 16, 16, 16, 16, 16, 16, 16, | |
1053 16, 16, 16, 16, 16, 17, 16, 16, | |
1054 16, 17, 16, 16, 16, 17, 17, 17, | |
1055 17, 17, 16, 17, 17, 17, 17, 16, | |
1056 16, 16, 17, 17, 17, 17, 16, 17, | |
1057 17, 17, 17, 17, 17, 17, 17, 17, | |
1058 17, 17, 17, 17, 17, 17, 18, 17, | |
1059 }; | |
1060 | |
1061 static const uint32_t coef4_huffcodes[476] = { | |
1062 0x00f01, 0x0001e, 0x00000, 0x00004, 0x00006, 0x0000d, 0x0000a, 0x00017, | |
1063 0x0001d, 0x00017, 0x0002c, 0x00031, 0x00039, 0x0003e, 0x00039, 0x0005a, | |
1064 0x00066, 0x00070, 0x0007b, 0x00070, 0x00077, 0x000af, 0x000c9, 0x000f2, | |
1065 0x000f4, 0x000b2, 0x000e3, 0x0015b, 0x0015d, 0x00181, 0x0019d, 0x001e3, | |
1066 0x001c5, 0x002b5, 0x002db, 0x00338, 0x003c3, 0x003cc, 0x003f0, 0x002cd, | |
1067 0x003fa, 0x003a1, 0x005b4, 0x00657, 0x007ab, 0x0074d, 0x0074c, 0x00ac1, | |
1068 0x00ac5, 0x0076b, 0x00ca8, 0x00f04, 0x00f00, 0x00fe3, 0x00f3c, 0x00f10, | |
1069 0x00f39, 0x00fe6, 0x00e26, 0x00e90, 0x016c5, 0x01827, 0x01954, 0x015c5, | |
1070 0x01958, 0x01f8a, 0x01c4a, 0x02b0f, 0x02b41, 0x02b0e, 0x033c6, 0x03050, | |
1071 0x01c4f, 0x02d88, 0x0305c, 0x03c18, 0x02b4f, 0x02cc2, 0x03a47, 0x05680, | |
1072 0x0569d, 0x06442, 0x06443, 0x06446, 0x0656e, 0x06444, 0x07120, 0x0748a, | |
1073 0x0c1ba, 0x07e22, 0x07aa6, 0x07f25, 0x07aa7, 0x07e20, 0x0c11b, 0x0c118, | |
1074 0x07aa5, 0x0ad0a, 0x0f389, 0x19ebb, 0x0caad, 0x0fe42, 0x0fe40, 0x16c34, | |
1075 0x2b4e5, 0x33d65, 0x16c30, 0x1e7ae, 0x1e25c, 0x18370, 0x1e703, 0x19eba, | |
1076 0x16c37, 0x0e234, 0x16c6e, 0x00004, 0x0002a, 0x00061, 0x00075, 0x000cb, | |
1077 0x000ff, 0x00190, 0x001eb, 0x001d1, 0x002b9, 0x00307, 0x00339, 0x0033f, | |
1078 0x003fb, 0x003b4, 0x0060c, 0x00679, 0x00645, 0x0067d, 0x0078a, 0x007e3, | |
1079 0x00749, 0x00ac4, 0x00ad2, 0x00ae3, 0x00c10, 0x00c16, 0x00ad1, 0x00cf4, | |
1080 0x00fe2, 0x01586, 0x00e9d, 0x019f1, 0x01664, 0x01e26, 0x01d38, 0x02b4d, | |
1081 0x033c5, 0x01fc2, 0x01fc3, 0x01d28, 0x03c1d, 0x0598e, 0x0f094, 0x07aa4, | |
1082 0x0ad38, 0x0ac0c, 0x0c11a, 0x079ea, 0x0c881, 0x0fe44, 0x0b635, 0x0ac0d, | |
1083 0x0b61e, 0x05987, 0x07121, 0x0f382, 0x0f387, 0x0e237, 0x0fe47, 0x0f383, | |
1084 0x0f091, 0x0f385, 0x0e233, 0x182ee, 0x19eb8, 0x1663e, 0x0f093, 0x00014, | |
1085 0x00058, 0x00159, 0x00167, 0x00300, 0x003d4, 0x005b5, 0x0079d, 0x0076a, | |
1086 0x00b67, 0x00b60, 0x00f05, 0x00cf0, 0x00f17, 0x00e95, 0x01822, 0x01913, | |
1087 0x016c2, 0x0182f, 0x01959, 0x01fcb, 0x01e27, 0x01c40, 0x033c7, 0x01e7b, | |
1088 0x01c49, 0x02d89, 0x01e23, 0x01660, 0x03f12, 0x02cc6, 0x033e1, 0x05b34, | |
1089 0x0609a, 0x06569, 0x07488, 0x07e21, 0x0cf5f, 0x0712c, 0x0389d, 0x067cf, | |
1090 0x07f28, 0x1663f, 0x33d67, 0x1663d, 0x1e25d, 0x3c1ab, 0x15c44, 0x16c36, | |
1091 0x0001f, 0x000ec, 0x00323, 0x005b2, 0x0079f, 0x00ac2, 0x00f16, 0x00e9e, | |
1092 0x01956, 0x01e0f, 0x019ea, 0x01666, 0x02b89, 0x02b02, 0x02d8c, 0x03c1b, | |
1093 0x03c19, 0x032b5, 0x03f9c, 0x02ccf, 0x03897, 0x05b35, 0x0ad02, 0x07f29, | |
1094 0x06441, 0x03884, 0x07888, 0x0784e, 0x06568, 0x0c1bb, 0x05986, 0x067cc, | |
1095 0x0fe49, 0x0fe48, 0x0c1bc, 0x0fe41, 0x18371, 0x1663c, 0x0e231, 0x0711e, | |
1096 0x0ad09, 0x0f092, 0x0002d, 0x001db, 0x00781, 0x00c1a, 0x00f55, 0x01580, | |
1097 0x01ea8, 0x02d9b, 0x032af, 0x03f16, 0x03c1c, 0x07834, 0x03c45, 0x0389c, | |
1098 0x067ce, 0x06445, 0x0c1b9, 0x07889, 0x07f3a, 0x0784f, 0x07f2b, 0x0ad0b, | |
1099 0x0f090, 0x0c11d, 0x0e94e, 0x0711f, 0x0e9f1, 0x0f38e, 0x079e9, 0x0ad03, | |
1100 0x0f09b, 0x0caae, 0x0fe46, 0x2b4e6, 0x0e9f0, 0x19eb6, 0x67ac1, 0x67ac0, | |
1101 0x33d66, 0x0f388, 0x00071, 0x003a0, 0x00ca9, 0x01829, 0x01d39, 0x02b43, | |
1102 0x02cc4, 0x06554, 0x0f09a, 0x0b61f, 0x067cd, 0x0711c, 0x0b636, 0x07f2a, | |
1103 0x0b634, 0x0c11f, 0x0cf5e, 0x0b61d, 0x0f06b, 0x0caab, 0x0c1be, 0x0e94c, | |
1104 0x0f099, 0x182ed, 0x0e94f, 0x0c119, 0x0e232, 0x2b4e4, 0x0f38a, 0x19eb4, | |
1105 0x1e25f, 0x0e94d, 0x000b7, 0x00785, 0x016cc, 0x03051, 0x033c4, 0x0656f, | |
1106 0x03891, 0x0711d, 0x0caaf, 0x0f097, 0x07489, 0x0f098, 0x0c880, 0x0caaa, | |
1107 0x0f386, 0x19eb7, 0x16c6f, 0x0f384, 0x182e8, 0x182e9, 0x0e230, 0x1e700, | |
1108 0x33d62, 0x33d63, 0x33d64, 0x16c33, 0x0e216, 0x000fd, 0x00c15, 0x01665, | |
1109 0x03c4a, 0x07f3b, 0x07896, 0x0c11c, 0x0e215, 0x16c32, 0x0f38b, 0x0f38d, | |
1110 0x182ea, 0x1e701, 0x712df, 0x15c46, 0x00194, 0x00fe0, 0x03f13, 0x0748b, | |
1111 0x0f096, 0x0cf80, 0x1e25e, 0xe25bd, 0x33d61, 0x16c31, 0x001f9, 0x01912, | |
1112 0x05710, 0x0f3d0, 0x0c1bf, 0x00301, 0x01e24, 0x0ad08, 0x003cd, 0x01c41, | |
1113 0x0c1bd, 0x00563, 0x03a52, 0x0f3d1, 0x00570, 0x02cce, 0x0e217, 0x0067b, | |
1114 0x0655d, 0x0074b, 0x06447, 0x00c12, 0x074fb, 0x00f08, 0x0b61c, 0x00e22, | |
1115 0x0fe43, 0x016c7, 0x01836, 0x019f2, 0x01c43, 0x01d3f, 0x01fcf, 0x02b4c, | |
1116 0x0304c, 0x032b6, 0x03a46, 0x05607, 0x03f17, 0x02cc5, 0x0609b, 0x0655c, | |
1117 0x07e23, 0x067c1, 0x07f26, 0x07f27, 0x0f095, 0x0e9f3, 0x0cf81, 0x0c11e, | |
1118 0x0caac, 0x0f38f, 0x0e9f2, 0x074fa, 0x0e236, 0x0fe45, 0x1c428, 0x0e235, | |
1119 0x182ef, 0x19eb5, 0x0f3d6, 0x182ec, 0x16c35, 0x0f38c, 0x2b4e7, 0x15c47, | |
1120 0xe25bc, 0x1e702, 0x1c4b6, 0x0e25a, 0x3c1aa, 0x15c45, 0x1c429, 0x19eb9, | |
1121 0x1e7af, 0x182eb, 0x1e0d4, 0x3896e, | |
1122 }; | |
1123 | |
1124 static const uint8_t coef4_huffbits[476] = { | |
1125 12, 6, 2, 3, 4, 4, 5, 5, | |
1126 5, 6, 6, 6, 6, 6, 7, 7, | |
1127 7, 7, 7, 8, 8, 8, 8, 8, | |
1128 8, 9, 9, 9, 9, 9, 9, 9, | |
1129 10, 10, 10, 10, 10, 10, 10, 11, | |
1130 10, 11, 11, 11, 11, 12, 12, 12, | |
1131 12, 12, 12, 12, 12, 12, 12, 12, | |
1132 12, 12, 13, 13, 13, 13, 13, 13, | |
1133 13, 13, 14, 14, 14, 14, 14, 14, | |
1134 14, 14, 14, 14, 14, 15, 15, 15, | |
1135 15, 15, 15, 15, 15, 15, 16, 16, | |
1136 16, 15, 15, 15, 15, 15, 16, 16, | |
1137 15, 16, 16, 17, 16, 16, 16, 17, | |
1138 18, 18, 17, 17, 17, 17, 17, 17, | |
1139 17, 17, 17, 4, 6, 7, 8, 8, | |
1140 8, 9, 9, 10, 10, 10, 10, 10, | |
1141 10, 11, 11, 11, 11, 11, 11, 11, | |
1142 12, 12, 12, 12, 12, 12, 12, 12, | |
1143 12, 13, 13, 13, 14, 13, 14, 14, | |
1144 14, 13, 13, 14, 14, 16, 16, 15, | |
1145 16, 16, 16, 15, 16, 16, 16, 16, | |
1146 16, 16, 16, 16, 16, 17, 16, 16, | |
1147 16, 16, 17, 17, 17, 18, 16, 5, | |
1148 8, 9, 10, 10, 10, 11, 11, 12, | |
1149 12, 12, 12, 12, 12, 13, 13, 13, | |
1150 13, 13, 13, 13, 13, 14, 14, 13, | |
1151 14, 14, 13, 14, 14, 15, 14, 15, | |
1152 15, 15, 16, 15, 16, 16, 15, 15, | |
1153 15, 18, 18, 18, 17, 18, 17, 17, | |
1154 6, 9, 10, 11, 11, 12, 12, 13, | |
1155 13, 13, 13, 14, 14, 14, 14, 14, | |
1156 14, 14, 14, 15, 15, 15, 16, 15, | |
1157 15, 15, 15, 15, 15, 16, 16, 15, | |
1158 16, 16, 16, 16, 17, 18, 17, 16, | |
1159 16, 16, 7, 10, 11, 12, 12, 13, | |
1160 13, 14, 14, 14, 14, 15, 14, 15, | |
1161 15, 15, 16, 15, 15, 15, 15, 16, | |
1162 16, 16, 17, 16, 17, 16, 15, 16, | |
1163 16, 16, 16, 18, 17, 17, 19, 19, | |
1164 18, 16, 7, 11, 12, 13, 14, 14, | |
1165 15, 15, 16, 16, 15, 16, 16, 15, | |
1166 16, 16, 16, 16, 16, 16, 16, 17, | |
1167 16, 17, 17, 16, 17, 18, 16, 17, | |
1168 17, 17, 8, 11, 13, 14, 14, 15, | |
1169 15, 16, 16, 16, 16, 16, 16, 16, | |
1170 16, 17, 17, 16, 17, 17, 17, 17, | |
1171 18, 18, 18, 17, 17, 8, 12, 14, | |
1172 14, 15, 15, 16, 17, 17, 16, 16, | |
1173 17, 17, 20, 17, 9, 12, 14, 16, | |
1174 16, 16, 17, 21, 18, 17, 9, 13, | |
1175 15, 16, 16, 10, 13, 16, 10, 14, | |
1176 16, 11, 15, 16, 11, 15, 17, 11, | |
1177 15, 12, 15, 12, 16, 12, 16, 13, | |
1178 16, 13, 13, 13, 14, 14, 13, 14, | |
1179 14, 14, 15, 15, 14, 15, 15, 15, | |
1180 15, 15, 15, 15, 16, 17, 16, 16, | |
1181 16, 16, 17, 16, 17, 16, 18, 17, | |
1182 17, 17, 16, 17, 17, 16, 18, 17, | |
1183 21, 17, 18, 17, 18, 17, 18, 17, | |
1184 17, 17, 17, 19, | |
1185 }; | |
1186 | |
1187 static const uint32_t coef5_huffcodes[435] = { | |
1188 0x00347, 0x0000b, 0x00001, 0x00001, 0x0000c, 0x00004, 0x00010, 0x00015, | |
1189 0x0001f, 0x0000b, 0x00023, 0x00026, 0x00029, 0x00035, 0x00037, 0x00001, | |
1190 0x00015, 0x0001a, 0x0001d, 0x0001c, 0x0001e, 0x0004e, 0x00049, 0x00051, | |
1191 0x00078, 0x00004, 0x00000, 0x00008, 0x0000d, 0x0007b, 0x00005, 0x00032, | |
1192 0x00095, 0x00091, 0x00096, 0x000a1, 0x000d9, 0x00003, 0x00019, 0x00061, | |
1193 0x00066, 0x00060, 0x00017, 0x0000e, 0x00063, 0x001a0, 0x001b7, 0x001e6, | |
1194 0x001e7, 0x001b6, 0x00018, 0x001e8, 0x00038, 0x00031, 0x00005, 0x0003d, | |
1195 0x00027, 0x001ea, 0x0001a, 0x000c5, 0x000f9, 0x000ff, 0x000db, 0x00250, | |
1196 0x000fc, 0x0025c, 0x00008, 0x00075, 0x003d7, 0x003d3, 0x001b0, 0x0007c, | |
1197 0x003ca, 0x00036, 0x00189, 0x004a6, 0x004a2, 0x004fb, 0x000c0, 0x0007f, | |
1198 0x0009a, 0x00311, 0x0006e, 0x0009b, 0x0068c, 0x006c0, 0x00484, 0x00012, | |
1199 0x000c3, 0x0094f, 0x00979, 0x009f9, 0x00d09, 0x00da6, 0x00da8, 0x00901, | |
1200 0x000c1, 0x00373, 0x00d08, 0x009fa, 0x00d8b, 0x00d85, 0x00d86, 0x000df, | |
1201 0x006e2, 0x000ce, 0x00f24, 0x009fe, 0x001f7, 0x007c1, 0x000cf, 0x009fc, | |
1202 0x009ff, 0x00d89, 0x00da9, 0x009fd, 0x001f8, 0x01a36, 0x0128c, 0x0129d, | |
1203 0x01a37, 0x00196, 0x003ea, 0x00f8b, 0x00d93, 0x01e45, 0x01e58, 0x01e4b, | |
1204 0x01e59, 0x013f1, 0x00309, 0x00265, 0x00308, 0x0243a, 0x027e1, 0x00f89, | |
1205 0x00324, 0x03cbc, 0x03c86, 0x03695, 0x0243c, 0x0243b, 0x0243e, 0x01e4a, | |
1206 0x003a5, 0x03468, 0x03428, 0x03c84, 0x027e0, 0x025e2, 0x01880, 0x00197, | |
1207 0x00325, 0x03cb7, 0x0791e, 0x007ec, 0x06c75, 0x004c8, 0x04bc7, 0x004c6, | |
1208 0x00983, 0x0481e, 0x01b53, 0x0251b, 0x01b58, 0x00984, 0x04fa8, 0x03cbb, | |
1209 0x00f8a, 0x00322, 0x0346a, 0x0243d, 0x00326, 0x03469, 0x0481f, 0x0481d, | |
1210 0x00746, 0x09032, 0x01b50, 0x01d13, 0x0d8e4, 0x0481b, 0x06c74, 0x0796b, | |
1211 0x07969, 0x00985, 0x0d8e3, 0x00986, 0x00fa2, 0x01301, 0x06c7c, 0x00987, | |
1212 0x03cb8, 0x0f4af, 0x00e88, 0x1b1c0, 0x00fce, 0x033eb, 0x03f6a, 0x03f69, | |
1213 0x00fcf, 0x0791f, 0x004c9, 0x04871, 0x00fcd, 0x00982, 0x00fcc, 0x00fa3, | |
1214 0x01d12, 0x0796c, 0x01b47, 0x00321, 0x0796a, 0x0d8e2, 0x04872, 0x04873, | |
1215 0x0000e, 0x00014, 0x0000a, 0x000a0, 0x00012, 0x0007d, 0x001a2, 0x0003b, | |
1216 0x0025f, 0x000dd, 0x0027c, 0x00343, 0x00368, 0x0036b, 0x0003e, 0x001fa, | |
1217 0x00485, 0x001b3, 0x0007f, 0x001b1, 0x0019e, 0x004ba, 0x007ad, 0x00339, | |
1218 0x00066, 0x007a4, 0x00793, 0x006c6, 0x0007e, 0x000f1, 0x00372, 0x009fb, | |
1219 0x00d83, 0x00d8a, 0x00947, 0x009f4, 0x001d0, 0x01b09, 0x01b4b, 0x007ec, | |
1220 0x003e1, 0x000ca, 0x003ec, 0x02539, 0x04fa9, 0x01b57, 0x03429, 0x03d2a, | |
1221 0x00d97, 0x003a7, 0x00dc0, 0x00d96, 0x00dc1, 0x007eb, 0x03cba, 0x00c43, | |
1222 0x00c41, 0x01b52, 0x007ef, 0x00323, 0x03cb9, 0x03c83, 0x007d0, 0x007ed, | |
1223 0x06c7f, 0x09033, 0x03f6c, 0x36383, 0x1e95d, 0x06c78, 0x00747, 0x01b51, | |
1224 0x00022, 0x00016, 0x00039, 0x00252, 0x00079, 0x00486, 0x00338, 0x00369, | |
1225 0x00d88, 0x00026, 0x00d87, 0x00f4b, 0x00d82, 0x00027, 0x001e1, 0x01a15, | |
1226 0x007c7, 0x012f0, 0x001e0, 0x006d0, 0x01a16, 0x01e44, 0x01e5f, 0x03690, | |
1227 0x00d90, 0x00c42, 0x00daf, 0x00d92, 0x00f80, 0x00cfb, 0x0342f, 0x0487f, | |
1228 0x01b46, 0x07968, 0x00d95, 0x00d91, 0x01b55, 0x03f68, 0x04bc6, 0x03cbd, | |
1229 0x00f81, 0x00320, 0x00069, 0x000fe, 0x006d5, 0x0033f, 0x000de, 0x007c6, | |
1230 0x01e40, 0x00d94, 0x00f88, 0x03c8e, 0x03694, 0x00dae, 0x00dad, 0x00267, | |
1231 0x003a6, 0x00327, 0x0487e, 0x007ee, 0x00749, 0x004c7, 0x03692, 0x01b56, | |
1232 0x00fd1, 0x07a56, 0x06c77, 0x09031, 0x00748, 0x06c7a, 0x0796d, 0x033ea, | |
1233 0x06c76, 0x00fd0, 0x36382, 0x1e417, 0x00745, 0x04faf, 0x0d8e1, 0x03f6b, | |
1234 0x1e95c, 0x04fad, 0x0009e, 0x004bd, 0x0067c, 0x01b08, 0x003eb, 0x01b45, | |
1235 0x03691, 0x0d8e5, 0x07904, 0x00981, 0x007ea, 0x019f4, 0x06c7d, 0x04fab, | |
1236 0x04fac, 0x06c7e, 0x01300, 0x06c7b, 0x0006f, 0x003f7, 0x03c85, 0x004c4, | |
1237 0x0001e, 0x006e1, 0x03693, 0x01b44, 0x00241, 0x01e46, 0x0019d, 0x00266, | |
1238 0x004bb, 0x02538, 0x007ac, 0x01b54, 0x00902, 0x04870, 0x00da7, 0x00900, | |
1239 0x00185, 0x06c79, 0x006e3, 0x003e9, 0x01e94, 0x003ed, 0x003f2, 0x0342e, | |
1240 0x0346b, 0x0251a, 0x004c5, 0x01881, 0x0481c, 0x01b59, 0x03c87, 0x04fae, | |
1241 0x007e9, 0x03f6d, 0x0f20a, 0x09030, 0x04faa, 0x0d8e6, 0x03f6f, 0x0481a, | |
1242 0x03f6e, 0x1e416, 0x0d8e7, | |
1243 }; | |
1244 | |
1245 static const uint8_t coef5_huffbits[435] = { | |
1246 10, 4, 2, 4, 4, 5, 5, 5, | |
1247 5, 6, 6, 6, 6, 6, 6, 7, | |
1248 7, 7, 7, 7, 7, 7, 7, 7, | |
1249 7, 8, 8, 8, 8, 7, 8, 8, | |
1250 8, 8, 8, 8, 8, 9, 9, 9, | |
1251 9, 9, 9, 9, 9, 9, 9, 9, | |
1252 9, 9, 10, 9, 10, 10, 10, 10, | |
1253 10, 9, 10, 10, 10, 10, 10, 10, | |
1254 10, 10, 11, 11, 10, 10, 11, 11, | |
1255 10, 11, 11, 11, 11, 11, 12, 12, | |
1256 12, 12, 12, 12, 11, 11, 11, 12, | |
1257 12, 12, 12, 12, 12, 12, 12, 12, | |
1258 12, 12, 12, 12, 12, 12, 12, 13, | |
1259 13, 13, 12, 12, 13, 13, 13, 12, | |
1260 12, 12, 12, 12, 13, 13, 13, 13, | |
1261 13, 14, 14, 14, 14, 13, 13, 13, | |
1262 13, 13, 14, 14, 14, 14, 14, 14, | |
1263 15, 14, 14, 14, 14, 14, 14, 13, | |
1264 14, 14, 14, 14, 14, 14, 15, 14, | |
1265 15, 14, 15, 15, 15, 15, 15, 15, | |
1266 16, 15, 15, 14, 15, 16, 15, 14, | |
1267 14, 15, 14, 14, 15, 14, 15, 15, | |
1268 15, 16, 15, 17, 16, 15, 15, 15, | |
1269 15, 16, 16, 16, 16, 17, 15, 16, | |
1270 14, 16, 16, 17, 16, 16, 16, 16, | |
1271 16, 15, 15, 15, 16, 16, 16, 16, | |
1272 17, 15, 15, 15, 15, 16, 15, 15, | |
1273 4, 7, 8, 8, 9, 9, 9, 10, | |
1274 10, 10, 10, 10, 10, 10, 11, 11, | |
1275 11, 11, 11, 11, 11, 11, 11, 12, | |
1276 12, 11, 11, 11, 12, 12, 12, 12, | |
1277 12, 12, 12, 12, 13, 13, 13, 13, | |
1278 12, 13, 14, 14, 15, 15, 14, 14, | |
1279 14, 14, 14, 14, 14, 15, 14, 14, | |
1280 14, 15, 15, 15, 14, 14, 15, 15, | |
1281 15, 16, 16, 18, 17, 15, 15, 15, | |
1282 6, 9, 10, 10, 11, 11, 12, 12, | |
1283 12, 13, 12, 12, 12, 13, 13, 13, | |
1284 13, 13, 13, 13, 13, 13, 13, 14, | |
1285 14, 14, 14, 14, 14, 14, 14, 15, | |
1286 15, 15, 14, 14, 15, 16, 15, 14, | |
1287 14, 15, 7, 10, 11, 12, 13, 13, | |
1288 13, 14, 14, 14, 14, 14, 14, 14, | |
1289 14, 15, 15, 15, 15, 15, 14, 15, | |
1290 16, 15, 15, 16, 15, 15, 15, 16, | |
1291 15, 16, 18, 17, 15, 15, 16, 16, | |
1292 17, 15, 8, 11, 13, 13, 14, 15, | |
1293 14, 16, 15, 16, 15, 15, 15, 15, | |
1294 15, 15, 17, 15, 9, 12, 14, 15, | |
1295 10, 13, 14, 15, 10, 13, 11, 14, | |
1296 11, 14, 11, 15, 12, 15, 12, 12, | |
1297 13, 15, 13, 14, 13, 14, 14, 14, | |
1298 14, 14, 15, 15, 15, 15, 14, 15, | |
1299 15, 16, 16, 16, 15, 16, 16, 15, | |
1300 16, 17, 16, | |
1301 }; | |
1302 | |
1303 static const uint16_t levels0[60] = { | |
1304 317, 92, 62, 60, 19, 17, 10, 7, | |
1305 6, 5, 5, 3, 3, 3, 2, 2, | |
1306 2, 2, 2, 2, 2, 1, 2, 2, | |
1307 1, 1, 1, 1, 1, 1, 1, 1, | |
1308 1, 1, 1, 1, 1, 1, 1, 1, | |
1309 1, 1, 1, 1, 1, 1, 1, 1, | |
1310 1, 1, 1, 1, 1, 1, 1, 1, | |
1311 1, 1, 1, 1, | |
1312 }; | |
1313 | |
1314 static const uint16_t levels1[40] = { | |
1315 311, 91, 61, 28, 10, 6, 5, 2, | |
1316 2, 2, 2, 2, 2, 2, 2, 1, | |
1317 1, 1, 1, 1, 1, 1, 1, 1, | |
1318 1, 1, 1, 1, 1, 1, 1, 1, | |
1319 1, 1, 1, 1, 1, 1, 1, 1, | |
1320 }; | |
1321 | |
1322 static const uint16_t levels2[340] = { | |
1323 181,110, 78, 63, 61, 62, 60, 61, | |
1324 33, 41, 41, 19, 17, 19, 12, 11, | |
1325 9, 11, 10, 6, 8, 7, 6, 4, | |
1326 5, 5, 4, 4, 3, 4, 3, 5, | |
1327 3, 4, 3, 3, 3, 3, 3, 3, | |
1328 2, 2, 4, 2, 3, 2, 3, 3, | |
1329 2, 2, 2, 2, 2, 2, 2, 2, | |
1330 3, 2, 2, 2, 2, 2, 2, 2, | |
1331 2, 2, 2, 1, 2, 1, 2, 2, | |
1332 2, 2, 1, 2, 1, 1, 1, 2, | |
1333 2, 1, 2, 1, 2, 2, 2, 2, | |
1334 1, 1, 1, 1, 1, 1, 1, 1, | |
1335 1, 1, 1, 1, 1, 1, 1, 1, | |
1336 1, 1, 1, 1, 1, 1, 1, 1, | |
1337 1, 1, 1, 1, 1, 1, 1, 1, | |
1338 1, 1, 1, 1, 1, 1, 1, 1, | |
1339 1, 1, 1, 1, 1, 1, 1, 1, | |
1340 1, 1, 1, 1, 1, 1, 1, 1, | |
1341 1, 1, 1, 1, 1, 1, 1, 1, | |
1342 1, 1, 1, 1, 1, 1, 1, 1, | |
1343 1, 1, 1, 1, 1, 1, 1, 1, | |
1344 1, 1, 1, 1, 1, 1, 1, 1, | |
1345 1, 1, 1, 1, 1, 1, 1, 1, | |
1346 1, 1, 1, 1, 1, 1, 1, 1, | |
1347 1, 1, 1, 1, 1, 1, 1, 1, | |
1348 1, 1, 1, 1, 1, 1, 1, 1, | |
1349 1, 1, 1, 1, 1, 1, 1, 1, | |
1350 1, 1, 1, 1, 1, 1, 1, 1, | |
1351 1, 1, 1, 1, 1, 1, 1, 1, | |
1352 1, 1, 1, 1, 1, 1, 1, 1, | |
1353 1, 1, 1, 1, 1, 1, 1, 1, | |
1354 1, 1, 1, 1, 1, 1, 1, 1, | |
1355 1, 1, 1, 1, 1, 1, 1, 1, | |
1356 1, 1, 1, 1, 1, 1, 1, 1, | |
1357 1, 1, 1, 1, 1, 1, 1, 1, | |
1358 1, 1, 1, 1, 1, 1, 1, 1, | |
1359 1, 1, 1, 1, 1, 1, 1, 1, | |
1360 1, 1, 1, 1, 1, 1, 1, 1, | |
1361 1, 1, 1, 1, 1, 1, 1, 1, | |
1362 1, 1, 1, 1, 1, 1, 1, 1, | |
1363 1, 1, 1, 1, 1, 1, 1, 1, | |
1364 1, 1, 1, 1, 1, 1, 1, 1, | |
1365 1, 1, 1, 1, | |
1366 }; | |
1367 | |
1368 static const uint16_t levels3[180] = { | |
1369 351,122, 76, 61, 41, 42, 24, 30, | |
1370 22, 19, 11, 9, 10, 8, 5, 5, | |
1371 4, 5, 5, 3, 3, 3, 3, 3, | |
1372 3, 3, 2, 2, 3, 2, 2, 2, | |
1373 3, 3, 2, 2, 2, 3, 2, 2, | |
1374 2, 2, 2, 2, 2, 2, 2, 2, | |
1375 2, 2, 2, 2, 2, 2, 1, 1, | |
1376 2, 2, 1, 2, 1, 2, 2, 2, | |
1377 2, 2, 2, 1, 2, 1, 1, 1, | |
1378 1, 1, 1, 1, 1, 1, 1, 2, | |
1379 2, 1, 2, 1, 1, 1, 1, 1, | |
1380 1, 1, 1, 1, 1, 1, 1, 1, | |
1381 1, 1, 1, 1, 1, 1, 1, 1, | |
1382 1, 1, 1, 1, 1, 1, 1, 1, | |
1383 1, 1, 1, 1, 1, 1, 1, 1, | |
1384 1, 1, 1, 1, 1, 1, 1, 1, | |
1385 1, 1, 1, 1, 1, 1, 1, 1, | |
1386 1, 1, 1, 1, 1, 1, 1, 1, | |
1387 1, 1, 1, 1, 1, 1, 1, 1, | |
1388 1, 1, 1, 1, 1, 1, 1, 1, | |
1389 1, 1, 1, 1, 1, 1, 1, 1, | |
1390 1, 1, 1, 1, 1, 1, 1, 1, | |
1391 1, 1, 1, 1, | |
1392 }; | |
1393 | |
1394 static const uint16_t levels4[70] = { | |
1395 113, 68, 49, 42, 40, 32, 27, 15, | |
1396 10, 5, 3, 3, 3, 3, 2, 2, | |
1397 2, 2, 2, 1, 1, 1, 1, 1, | |
1398 1, 1, 1, 1, 1, 1, 1, 1, | |
1399 1, 1, 1, 1, 1, 1, 1, 1, | |
1400 1, 1, 1, 1, 1, 1, 1, 1, | |
1401 1, 1, 1, 1, 1, 1, 1, 1, | |
1402 1, 1, 1, 1, 1, 1, 1, 1, | |
1403 1, 1, 1, 1, 1, 1, | |
1404 }; | |
1405 | |
1406 static const uint16_t levels5[40] = { | |
1407 214, 72, 42, 40, 18, 4, 4, 2, | |
1408 2, 2, 2, 2, 1, 1, 2, 1, | |
1409 1, 1, 1, 1, 1, 1, 1, 1, | |
1410 1, 1, 1, 1, 1, 1, 1, 1, | |
1411 1, 1, 1, 1, 1, 1, 1, 1, | |
1412 }; | |
2967 | 1413 |
783 | 1414 static const CoefVLCTable coef_vlcs[6] = { |
2967 | 1415 { |
783 | 1416 sizeof(coef0_huffbits), coef0_huffcodes, coef0_huffbits, levels0, |
1417 }, | |
2967 | 1418 { |
783 | 1419 sizeof(coef1_huffbits), coef1_huffcodes, coef1_huffbits, levels1, |
1420 }, | |
2967 | 1421 { |
783 | 1422 sizeof(coef2_huffbits), coef2_huffcodes, coef2_huffbits, levels2, |
1423 }, | |
2967 | 1424 { |
783 | 1425 sizeof(coef3_huffbits), coef3_huffcodes, coef3_huffbits, levels3, |
1426 }, | |
2967 | 1427 { |
783 | 1428 sizeof(coef4_huffbits), coef4_huffcodes, coef4_huffbits, levels4, |
1429 }, | |
2967 | 1430 { |
783 | 1431 sizeof(coef5_huffbits), coef5_huffcodes, coef5_huffbits, levels5, |
1432 }, | |
1433 }; |