Mercurial > libavcodec.hg
annotate sp5x.h @ 4166:eced83504436 libavcodec
mp3 header (de)compression bitstream filter
this will make mp3 frames 4 bytes smaller, it will not give you binary identical mp3 files, but it will give you mp3 files which decode to binary identical output
this will only work in containers providing at least packet size, sample_rate and number of channels
bugreports about mp3 files for which this fails are welcome
and this is experimental (dont expect compatibility and dont even expect to be able to decompress what you compressed, hell dont even expect this to work without editing the source a little)
author | michael |
---|---|
date | Fri, 10 Nov 2006 01:41:53 +0000 |
parents | c8c591fe26f8 |
children | 4394344397d8 |
rev | line source |
---|---|
1519 | 1 /* |
2 * Sunplus JPEG tables | |
3 * Copyright (c) 2003 the ffmpeg project | |
4 * | |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3036
diff
changeset
|
5 * This file is part of FFmpeg. |
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3036
diff
changeset
|
6 * |
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3036
diff
changeset
|
7 * FFmpeg is free software; you can redistribute it and/or |
1519 | 8 * modify it under the terms of the GNU Lesser General Public |
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:
3036
diff
changeset
|
10 * version 2.1 of the License, or (at your option) any later version. |
1519 | 11 * |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3036
diff
changeset
|
12 * FFmpeg is distributed in the hope that it will be useful, |
1519 | 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
15 * Lesser General Public License for more details. | |
16 * | |
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:
3036
diff
changeset
|
18 * License along with FFmpeg; if not, write to the Free Software |
3036
0b546eab515d
Update licensing information: The FSF changed postal address.
diego
parents:
2979
diff
changeset
|
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
1519 | 20 */ |
21 | |
22 #ifndef SP5X_H | |
23 #define SP5X_H | |
24 | |
2753 | 25 static const uint8_t sp5x_data_sof[] = |
1519 | 26 { |
2979 | 27 0xFF, 0xC0, /* SOF */ |
28 0x00, 0x11, /* len */ | |
29 0x08, /* bits */ | |
30 0x00, 0xf0, /* height (default: 240) */ | |
31 0x01, 0x40, /* width (default: 240) */ | |
32 0x03, /* nb components */ | |
1519 | 33 0x01, 0x22, 0x00, /* 21 vs 22 ? */ |
34 0x02, 0x11, 0x01, | |
35 0x03, 0x11, 0x01 | |
36 }; | |
37 | |
2753 | 38 static const uint8_t sp5x_data_sos[] = |
1519 | 39 { |
2979 | 40 0xFF, 0xDA, /* SOS */ |
41 0x00, 0x0C, /* len */ | |
42 0x03, /* nb components */ | |
1519 | 43 0x01, 0x00, |
44 0x02, 0x11, | |
45 0x03, 0x11, | |
2979 | 46 0x00, /* Ss */ |
47 0x3F, /* Se */ | |
48 0x00 /* Ah/Al */ | |
1519 | 49 }; |
50 | |
2753 | 51 static const uint8_t sp5x_data_dqt[] = |
1519 | 52 { |
53 0xFF, 0xDB, /* DQT */ | |
54 0x00, 0x84, /* len */ | |
55 0x00, | |
56 0x05, 0x03, 0x04, 0x04, 0x04, 0x03, 0x05, 0x04, | |
57 0x04, 0x04, 0x06, 0x05, 0x05, 0x06, 0x08, 0x0D, | |
58 0x08, 0x08, 0x07, 0x07, 0x08, 0x10, 0x0C, 0x0C, | |
59 0x0A, 0x0D, 0x14, 0x11, 0x15, 0x14, 0x13, 0x11, | |
60 0x13, 0x13, 0x16, 0x18, 0x1F, 0x1A, 0x16, 0x17, | |
61 0x1E, 0x17, 0x13, 0x13, 0x1B, 0x25, 0x1C, 0x1E, | |
62 0x20, 0x21, 0x23, 0x23, 0x23, 0x15, 0x1A, 0x27, | |
63 0x29, 0x26, 0x22, 0x29, 0x1F, 0x22, 0x23, 0x22, | |
64 0x01, | |
65 0x05, 0x06, 0x06, 0x08, 0x07, 0x08, 0x10, 0x08, | |
66 0x08, 0x10, 0x22, 0x16, 0x13, 0x16, 0x22, 0x22, | |
67 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, | |
68 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, | |
69 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, | |
70 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, | |
71 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, | |
72 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22 | |
73 }; | |
74 | |
2967 | 75 static const uint8_t sp5x_data_dht[] = { |
2979 | 76 0xFF, 0xC4, /* DHT */ |
77 0x01, 0xA2, /* len */ | |
1519 | 78 0x00, 0x00, 0x01, 0x05, 0x01, 0x01, 0x01, 0x01, |
79 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, | |
80 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, | |
81 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x01, 0x00, 0x03, | |
82 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, | |
83 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, | |
84 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, | |
85 0x0A, 0x0B, 0x10, 0x00, 0x02, 0x01, 0x03, 0x03, | |
86 0x02, 0x04, 0x03, 0x05, 0x05, 0x04, 0x04, 0x00, | |
87 0x00, 0x01, 0x7D, 0x01, 0x02, 0x03, 0x00, 0x04, | |
88 0x11, 0x05, 0x12, 0x21, 0x31, 0x41, 0x06, 0x13, | |
89 0x51, 0x61, 0x07, 0x22, 0x71, 0x14, 0x32, 0x81, | |
90 0x91, 0xA1, 0x08, 0x23, 0x42, 0xB1, 0xC1, 0x15, | |
91 0x52, 0xD1, 0xF0, 0x24, 0x33, 0x62, 0x72, 0x82, | |
92 0x09, 0x0A, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x25, | |
93 0x26, 0x27, 0x28, 0x29, 0x2A, 0x34, 0x35, 0x36, | |
94 0x37, 0x38, 0x39, 0x3A, 0x43, 0x44, 0x45, 0x46, | |
95 0x47, 0x48, 0x49, 0x4A, 0x53, 0x54, 0x55, 0x56, | |
96 0x57, 0x58, 0x59, 0x5A, 0x63, 0x64, 0x65, 0x66, | |
97 0x67, 0x68, 0x69, 0x6A, 0x73, 0x74, 0x75, 0x76, | |
98 0x77, 0x78, 0x79, 0x7A, 0x83, 0x84, 0x85, 0x86, | |
99 0x87, 0x88, 0x89, 0x8A, 0x92, 0x93, 0x94, 0x95, | |
100 0x96, 0x97, 0x98, 0x99, 0x9A, 0xA2, 0xA3, 0xA4, | |
101 0xA5, 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xB2, 0xB3, | |
102 0xB4, 0xB5, 0xB6, 0xB7, 0xB8, 0xB9, 0xBA, 0xC2, | |
103 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, | |
104 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD7, 0xD8, 0xD9, | |
105 0xDA, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, | |
106 0xE8, 0xE9, 0xEA, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, | |
107 0xF6, 0xF7, 0xF8, 0xF9, 0xFA, 0x11, 0x00, 0x02, | |
108 0x01, 0x02, 0x04, 0x04, 0x03, 0x04, 0x07, 0x05, | |
109 0x04, 0x04, 0x00, 0x01, 0x02, 0x77, 0x00, 0x01, | |
110 0x02, 0x03, 0x11, 0x04, 0x05, 0x21, 0x31, 0x06, | |
111 0x12, 0x41, 0x51, 0x07, 0x61, 0x71, 0x13, 0x22, | |
112 0x32, 0x81, 0x08, 0x14, 0x42, 0x91, 0xA1, 0xB1, | |
113 0xC1, 0x09, 0x23, 0x33, 0x52, 0xF0, 0x15, 0x62, | |
114 0x72, 0xD1, 0x0A, 0x16, 0x24, 0x34, 0xE1, 0x25, | |
115 0xF1, 0x17, 0x18, 0x19, 0x1A, 0x26, 0x27, 0x28, | |
116 0x29, 0x2A, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3A, | |
117 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, | |
118 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5A, | |
119 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6A, | |
120 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7A, | |
121 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, | |
122 0x8A, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, | |
123 0x99, 0x9A, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, | |
124 0xA8, 0xA9, 0xAA, 0xB2, 0xB3, 0xB4, 0xB5, 0xB6, | |
125 0xB7, 0xB8, 0xB9, 0xBA, 0xC2, 0xC3, 0xC4, 0xC5, | |
126 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xD2, 0xD3, 0xD4, | |
127 0xD5, 0xD6, 0xD7, 0xD8, 0xD9, 0xDA, 0xE2, 0xE3, | |
128 0xE4, 0xE5, 0xE6, 0xE7, 0xE8, 0xE9, 0xEA, 0xF2, | |
129 0xF3, 0xF4, 0xF5, 0xF6, 0xF7, 0xF8, 0xF9, 0xFA | |
130 }; | |
131 | |
132 | |
2753 | 133 static const uint8_t sp5x_quant_table[20][64]= |
1519 | 134 { |
135 /* index 0, Q50 */ | |
136 { 16, 11, 12, 14, 12, 10, 16, 14, 13, 14, 18, 17, 16, 19, 24, 40, | |
137 26, 24, 22, 22, 24, 49, 35, 37, 29, 40, 58, 51, 61, 60, 57, 51, | |
138 56, 55, 64, 72, 92, 78, 64, 68, 87, 69, 55, 56, 80,109, 81, 87, | |
139 95, 98,103,104,103, 62, 77,113,121,112,100,120, 92,101,103, 99 }, | |
140 { 17, 18, 18, 24, 21, 24, 47, 26, 26, 47, 99, 66, 56, 66, 99, 99, | |
141 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, | |
142 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, | |
143 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99 }, | |
144 | |
145 /* index 1, Q70 */ | |
146 { 10, 7, 7, 8, 7, 6, 10, 8, 8, 8, 11, 10, 10, 11, 14, 24, | |
147 16, 14, 13, 13, 14, 29, 21, 22, 17, 24, 35, 31, 37, 36, 34, 31, | |
148 34, 33, 38, 43, 55, 47, 38, 41, 52, 41, 33, 34, 48, 65, 49, 52, | |
149 57, 59, 62, 62, 62, 37, 46, 68, 73, 67, 60, 72, 55, 61, 62, 59 }, | |
150 { 10, 11, 11, 14, 13, 14, 28, 16, 16, 28, 59, 40, 34, 40, 59, 59, | |
151 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, | |
152 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, | |
153 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59 }, | |
154 | |
155 /* index 2, Q80 */ | |
156 { 6, 4, 5, 6, 5, 4, 6, 6, 5, 6, 7, 7, 6, 8, 10, 16, | |
157 10, 10, 9, 9, 10, 20, 14, 15, 12, 16, 23, 20, 24, 24, 23, 20, | |
158 22, 22, 26, 29, 37, 31, 26, 27, 35, 28, 22, 22, 32, 44, 32, 35, | |
159 38, 39, 41, 42, 41, 25, 31, 45, 48, 45, 40, 48, 37, 40, 41, 40 }, | |
160 { 7, 7, 7, 10, 8, 10, 19, 10, 10, 19, 40, 26, 22, 26, 40, 40, | |
161 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, | |
162 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, | |
163 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40 }, | |
164 | |
165 /* index 3, Q85 */ | |
166 { 5, 3, 4, 4, 4, 3, 5, 4, 4, 4, 5, 5, 5, 6, 7, 12, | |
167 8, 7, 7, 7, 7, 15, 11, 11, 9, 12, 17, 15, 18, 18, 17, 15, | |
168 17, 17, 19, 22, 28, 23, 19, 20, 26, 21, 17, 17, 24, 33, 24, 26, | |
169 29, 29, 31, 31, 31, 19, 23, 34, 36, 34, 30, 36, 28, 30, 31, 30 }, | |
170 { 5, 5, 5, 7, 6, 7, 14, 8, 8, 14, 30, 20, 17, 20, 30, 30, | |
171 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, | |
172 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, | |
173 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30 }, | |
174 | |
175 /* index 4, Q90 */ | |
176 { 3, 2, 2, 3, 2, 2, 3, 3, 3, 3, 4, 3, 3, 4, 5, 8, | |
177 5, 5, 4, 4, 5, 10, 7, 7, 6, 8, 12, 10, 12, 12, 11, 10, | |
178 11, 11, 13, 14, 18, 16, 13, 14, 17, 14, 11, 11, 16, 22, 16, 17, | |
179 19, 20, 21, 21, 21, 12, 15, 23, 24, 22, 20, 24, 18, 20, 21, 20 }, | |
180 { 3, 4, 4, 5, 4, 5, 9, 5, 5, 9, 20, 13, 11, 13, 20, 20, | |
181 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, | |
182 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, | |
183 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 }, | |
184 | |
185 /* index 5, Q60 */ | |
186 { 13, 9, 10, 11, 10, 8, 13, 11, 10, 11, 14, 14, 13, 15, 19, 32, | |
187 21, 19, 18, 18, 19, 39, 28, 30, 23, 32, 46, 41, 49, 48, 46, 41, | |
188 45, 44, 51, 58, 74, 62, 51, 54, 70, 55, 44, 45, 64, 87, 65, 70, | |
189 76, 78, 82, 83, 82, 50, 62, 90, 97, 90, 80, 96, 74, 81, 82, 79 }, | |
190 { 14, 14, 14, 19, 17, 19, 38, 21, 21, 38, 79, 53, 45, 53, 79, 79, | |
191 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, | |
192 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, | |
193 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79 }, | |
194 | |
195 /* index 6, Q25 */ | |
196 { 32, 22, 24, 28, 24, 20, 32, 28, 26, 28, 36, 34, 32, 38, 48, 80, | |
197 52, 48, 44, 44, 48, 98, 70, 74, 58, 80,116,102,122,120,114,102, | |
198 112,110,128,144,184,156,128,136,174,138,110,112,160,218,162,174, | |
199 190,196,206,208,206,124,154,226,242,224,200,240,184,202,206,198 }, | |
200 { 34, 36, 36, 48, 42, 48, 94, 52, 52, 94,198,132,112,132,198,198, | |
201 198,198,198,198,198,198,198,198,198,198,198,198,198,198,198,198, | |
202 198,198,198,198,198,198,198,198,198,198,198,198,198,198,198,198, | |
203 198,198,198,198,198,198,198,198,198,198,198,198,198,198,198,198 }, | |
204 | |
205 /* index 7, Q95 */ | |
206 { 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 2, 2, 2, 2, 4, | |
207 3, 2, 2, 2, 2, 5, 4, 4, 3, 4, 6, 5, 6, 6, 6, 5, | |
208 6, 6, 6, 7, 9, 8, 6, 7, 9, 7, 6, 6, 8, 11, 8, 9, | |
209 10, 10, 10, 10, 10, 6, 8, 11, 12, 11, 10, 12, 9, 10, 10, 10 }, | |
210 { 2, 2, 2, 2, 2, 2, 5, 3, 3, 5, 10, 7, 6, 7, 10, 10, | |
211 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, | |
212 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, | |
213 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 }, | |
214 | |
215 /* index 8, Q93 */ | |
216 { 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 3, 2, 2, 3, 3, 6, | |
217 4, 3, 3, 3, 3, 7, 5, 5, 4, 6, 8, 7, 9, 8, 8, 7, | |
218 8, 8, 9, 10, 13, 11, 9, 10, 12, 10, 8, 8, 11, 15, 11, 12, | |
219 13, 14, 14, 15, 14, 9, 11, 16, 17, 16, 14, 17, 13, 14, 14, 14 }, | |
220 { 2, 3, 3, 3, 3, 3, 7, 4, 4, 7, 14, 9, 8, 9, 14, 14, | |
221 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, | |
222 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, | |
223 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14 }, | |
224 | |
225 /* index 9, Q40 */ | |
226 { 20, 14, 15, 18, 15, 13, 20, 18, 16, 18, 23, 21, 20, 24, 30, 50, | |
227 33, 30, 28, 28, 30, 61, 44, 46, 36, 50, 73, 64, 76, 75, 71, 64, | |
228 70, 69, 80, 90,115, 98, 80, 85,109, 86, 69, 70,100,136,101,109, | |
229 119,123,129,130,129, 78, 96,141,151,140,125,150,115,126,129,124 }, | |
230 { 21, 23, 23, 30, 26, 30, 59, 33, 33, 59,124, 83, 70, 83,124,124, | |
231 124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124, | |
232 124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124, | |
233 124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124 } | |
234 }; | |
235 | |
236 #if 0 | |
237 /* 4NF-M, not ZigZag */ | |
2967 | 238 static const uint8_t sp5x_quant_table_orig[18][64] = |
1519 | 239 { |
240 /* index 0, Q50 */ | |
241 { 16, 11, 10, 16, 24, 40, 51, 61, 12, 12, 14, 19, 26, 58, 60, 55, | |
242 14, 13, 16, 24, 40, 57, 69, 56, 14, 17, 22, 29, 51, 87, 80, 62, | |
243 18, 22, 37, 56, 68,109,103, 77, 24, 35, 55, 64, 81,104,113, 92, | |
244 49, 64, 78, 87,103,121,120,101, 72, 92, 95, 98,112,100,103, 99 }, | |
245 { 17, 18, 24, 47, 99, 99, 99, 99, 18, 21, 26, 66, 99, 99, 99, 99, | |
246 24, 26, 56, 99, 99, 99, 99, 99, 47, 66, 99, 99, 99, 99, 99, 99, | |
247 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, | |
248 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99 }, | |
249 | |
250 /* index 1, Q70 */ | |
251 { 10, 7, 6, 10, 14, 24, 31, 37, 7, 7, 8, 11, 16, 35, 36, 33, | |
252 8, 8, 10, 14, 24, 34, 41, 34, 8, 10, 13, 17, 31, 52, 48, 37, | |
253 11, 13, 22, 34, 41, 65, 62, 46, 14, 21, 33, 38, 49, 62, 68, 55, | |
254 29, 38, 47, 52, 62, 73, 72, 61, 43, 55, 57, 59, 67, 60, 62, 59 }, | |
255 { 10, 11, 14, 28, 59, 59, 59, 59, 11, 13, 16, 40, 59, 59, 59, 59, | |
256 14, 16, 34, 59, 59, 59, 59, 59, 28, 40, 59, 59, 59, 59, 59, 59, | |
257 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, | |
258 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59 }, | |
259 | |
260 /* index 2, Q80 */ | |
261 { 6, 4, 4, 6, 10, 16, 20, 24, 5, 5, 6, 8, 10, 23, 24, 22, | |
2979 | 262 6, 5, 6, 10, 16, 23, 28, 22, 6, 7, 9, 12, 20, 35, 32, 25, |
1519 | 263 7, 9, 15, 22, 27, 44, 41, 31, 10, 14, 22, 26, 32, 42, 45, 37, |
264 20, 26, 31, 35, 41, 48, 48, 40, 29, 37, 38, 39, 45, 40, 41, 40 }, | |
265 { 7, 7, 10, 19, 40, 40, 40, 40, 7, 8, 10, 26, 40, 40, 40, 40, | |
266 10, 10, 22, 40, 40, 40, 40, 40, 19, 26, 40, 40, 40, 40, 40, 40, | |
267 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, | |
268 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40 }, | |
269 | |
270 /* index 3, Q85 */ | |
271 { 5, 3, 3, 5, 7, 12, 15, 18, 4, 4, 4, 6, 8, 17, 18, 17, | |
2979 | 272 4, 4, 5, 7, 12, 17, 21, 17, 4, 5, 7, 9, 15, 26, 24, 19, |
1519 | 273 5, 7, 11, 17, 20, 33, 31, 23, 7, 11, 17, 19, 24, 31, 34, 28, |
274 15, 19, 23, 26, 31, 36, 36, 30, 22, 28, 29, 29, 34, 30, 31, 30 }, | |
275 { 5, 5, 7, 14, 30, 30, 30, 30, 5, 6, 8, 20, 30, 30, 30, 30, | |
276 7, 8, 17, 30, 30, 30, 30, 30, 14, 20, 30, 30, 30, 30, 30, 30, | |
277 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, | |
278 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30 }, | |
279 | |
280 /* index 4, Q90 */ | |
281 { 3, 2, 2, 3, 5, 8, 10, 12, 2, 2, 3, 4, 5, 12, 12, 11, | |
282 3, 3, 3, 5, 8, 11, 14, 11, 3, 3, 4, 6, 10, 17, 16, 12, | |
283 4, 4, 7, 11, 14, 22, 21, 15, 5, 7, 11, 13, 16, 21, 23, 18, | |
284 10, 13, 16, 17, 21, 24, 24, 20, 14, 18, 19, 20, 22, 20, 21, 20 }, | |
285 { 3, 4, 5, 9, 20, 20, 20, 20, 4, 4, 5, 13, 20, 20, 20, 20, | |
286 5, 5, 11, 20, 20, 20, 20, 20, 9, 13, 20, 20, 20, 20, 20, 20, | |
287 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, | |
288 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 }, | |
289 | |
290 /* index 5, Q60 */ | |
291 { 13, 9, 8, 13, 19, 32, 41, 49, 10, 10, 11, 15, 21, 46, 48, 44, | |
292 11, 10, 13, 19, 32, 46, 55, 45, 11, 14, 18, 23, 41, 70, 64, 50, | |
293 14, 18, 30, 45, 54, 87, 82, 62, 19, 28, 44, 51, 65, 83, 90, 74, | |
294 39, 51, 62, 70, 82, 97, 96, 81, 58, 74, 76, 78, 90, 80, 82, 79 }, | |
295 { 14, 14, 19, 38, 79, 79, 79, 79, 14, 17, 21, 53, 79, 79, 79, 79, | |
296 19, 21, 45, 79, 79, 79, 79, 79, 38, 53, 79, 79, 79, 79, 79, 79, | |
297 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, | |
298 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79 }, | |
299 | |
300 /* index 6, Q25 */ | |
301 { 32, 22, 20, 32, 48, 80,102,122, 24, 24, 28, 38, 52,116,120,110, | |
302 28, 26, 32, 48, 80,114,138,112, 28, 34, 44, 58,102,174,160,124, | |
303 36, 44, 74,112,136,218,206,154, 48, 70,110,128,162,208,226,184, | |
304 98,128,156,174,206,242,240,202,144,184,190,196,224,200,206,198 }, | |
305 { 34, 36, 48, 94,198,198,198,198, 36, 42, 52,132,198,198,198,198, | |
306 48, 52,112,198,198,198,198,198, 94,132,198,198,198,198,198,198, | |
307 198,198,198,198,198,198,198,198,198,198,198,198,198,198,198,198, | |
308 198,198,198,198,198,198,198,198,198,198,198,198,198,198,198,198 }, | |
309 | |
310 /* index 7, Q95 */ | |
311 { 2, 1, 1, 2, 2, 4, 5, 6, 1, 1, 1, 2, 3, 6, 6, 6, | |
312 1, 1, 2, 2, 4, 6, 7, 6, 1, 2, 2, 3, 5, 9, 8, 6, | |
313 2, 2, 4, 6, 7, 11, 10, 8, 2, 4, 6, 6, 8, 10, 11, 9, | |
314 5, 6, 8, 9, 10, 12, 12, 10, 7, 9, 10, 10, 11, 10, 10, 10 }, | |
315 { 2, 2, 2, 5, 10, 10, 10, 10, 2, 2, 3, 7, 10, 10, 10, 10, | |
316 2, 3, 6, 10, 10, 10, 10, 10, 5, 7, 10, 10, 10, 10, 10, 10, | |
317 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, | |
318 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 }, | |
319 | |
320 /* index 8, Q93 */ | |
321 { 2, 2, 1, 2, 3, 6, 7, 9, 2, 2, 2, 3, 4, 8, 8, 8, | |
322 2, 2, 2, 3, 6, 8, 10, 8, 2, 2, 3, 4, 7, 12, 11, 9, | |
323 3, 3, 5, 8, 10, 15, 14, 11, 3, 5, 8, 9, 11, 15, 16, 13, | |
324 7, 9, 11, 12, 14, 17, 17, 14, 10, 13, 13, 14, 16, 14, 14, 14 }, | |
325 { 2, 3, 3, 7, 14, 14, 14, 14, 3, 3, 4, 9, 14, 14, 14, 14, | |
326 3, 4, 8, 14, 14, 14, 14, 14, 7, 9, 14, 14, 14, 14, 14, 14, | |
327 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, | |
328 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14 } | |
329 }; | |
330 #endif | |
331 | |
332 #endif /* SP5X_H */ |