Mercurial > hg > sv-dependency-builds
comparison src/libvorbis-1.3.3/lib/modes/residue_44u.h @ 1:05aa0afa9217
Bring in flac, ogg, vorbis
author | Chris Cannam |
---|---|
date | Tue, 19 Mar 2013 17:37:49 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
0:c7265573341e | 1:05aa0afa9217 |
---|---|
1 /******************************************************************** | |
2 * * | |
3 * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE. * | |
4 * USE, DISTRIBUTION AND REPRODUCTION OF THIS LIBRARY SOURCE IS * | |
5 * GOVERNED BY A BSD-STYLE SOURCE LICENSE INCLUDED WITH THIS SOURCE * | |
6 * IN 'COPYING'. PLEASE READ THESE TERMS BEFORE DISTRIBUTING. * | |
7 * * | |
8 * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2007 * | |
9 * by the Xiph.Org Foundation http://www.xiph.org/ * | |
10 * * | |
11 ******************************************************************** | |
12 | |
13 function: toplevel residue templates for 32/44.1/48kHz uncoupled | |
14 last mod: $Id: residue_44u.h 16962 2010-03-11 07:30:34Z xiphmont $ | |
15 | |
16 ********************************************************************/ | |
17 | |
18 #include "vorbis/codec.h" | |
19 #include "backends.h" | |
20 #include "books/uncoupled/res_books_uncoupled.h" | |
21 | |
22 /***** residue backends *********************************************/ | |
23 | |
24 | |
25 static const vorbis_info_residue0 _residue_44_low_un={ | |
26 0,-1, -1, 8,-1,-1, | |
27 {0}, | |
28 {-1}, | |
29 { 0, 1, 1, 2, 2, 4, 28}, | |
30 { -1, 25, -1, 45, -1, -1, -1} | |
31 }; | |
32 | |
33 static const vorbis_info_residue0 _residue_44_mid_un={ | |
34 0,-1, -1, 10,-1,-1, | |
35 /* 0 1 2 3 4 5 6 7 8 9 */ | |
36 {0}, | |
37 {-1}, | |
38 { 0, 1, 1, 2, 2, 4, 4, 16, 60}, | |
39 { -1, 30, -1, 50, -1, 80, -1, -1, -1} | |
40 }; | |
41 | |
42 static const vorbis_info_residue0 _residue_44_hi_un={ | |
43 0,-1, -1, 10,-1,-1, | |
44 /* 0 1 2 3 4 5 6 7 8 9 */ | |
45 {0}, | |
46 {-1}, | |
47 { 0, 1, 2, 4, 8, 16, 32, 71,157}, | |
48 { -1, -1, -1, -1, -1, -1, -1, -1, -1} | |
49 }; | |
50 | |
51 /* mapping conventions: | |
52 only one submap (this would change for efficient 5.1 support for example)*/ | |
53 /* Four psychoacoustic profiles are used, one for each blocktype */ | |
54 static const vorbis_info_mapping0 _map_nominal_u[2]={ | |
55 {1, {0,0,0,0,0,0}, {0}, {0}, 0,{0},{0}}, | |
56 {1, {0,0,0,0,0,0}, {1}, {1}, 0,{0},{0}} | |
57 }; | |
58 | |
59 static const static_bookblock _resbook_44u_n1={ | |
60 { | |
61 {0}, | |
62 {0,0,&_44un1__p1_0}, | |
63 {0,0,&_44un1__p2_0}, | |
64 {0,0,&_44un1__p3_0}, | |
65 {0,0,&_44un1__p4_0}, | |
66 {0,0,&_44un1__p5_0}, | |
67 {&_44un1__p6_0,&_44un1__p6_1}, | |
68 {&_44un1__p7_0,&_44un1__p7_1,&_44un1__p7_2} | |
69 } | |
70 }; | |
71 static const static_bookblock _resbook_44u_0={ | |
72 { | |
73 {0}, | |
74 {0,0,&_44u0__p1_0}, | |
75 {0,0,&_44u0__p2_0}, | |
76 {0,0,&_44u0__p3_0}, | |
77 {0,0,&_44u0__p4_0}, | |
78 {0,0,&_44u0__p5_0}, | |
79 {&_44u0__p6_0,&_44u0__p6_1}, | |
80 {&_44u0__p7_0,&_44u0__p7_1,&_44u0__p7_2} | |
81 } | |
82 }; | |
83 static const static_bookblock _resbook_44u_1={ | |
84 { | |
85 {0}, | |
86 {0,0,&_44u1__p1_0}, | |
87 {0,0,&_44u1__p2_0}, | |
88 {0,0,&_44u1__p3_0}, | |
89 {0,0,&_44u1__p4_0}, | |
90 {0,0,&_44u1__p5_0}, | |
91 {&_44u1__p6_0,&_44u1__p6_1}, | |
92 {&_44u1__p7_0,&_44u1__p7_1,&_44u1__p7_2} | |
93 } | |
94 }; | |
95 static const static_bookblock _resbook_44u_2={ | |
96 { | |
97 {0}, | |
98 {0,0,&_44u2__p1_0}, | |
99 {0,0,&_44u2__p2_0}, | |
100 {0,0,&_44u2__p3_0}, | |
101 {0,0,&_44u2__p4_0}, | |
102 {0,0,&_44u2__p5_0}, | |
103 {&_44u2__p6_0,&_44u2__p6_1}, | |
104 {&_44u2__p7_0,&_44u2__p7_1,&_44u2__p7_2} | |
105 } | |
106 }; | |
107 static const static_bookblock _resbook_44u_3={ | |
108 { | |
109 {0}, | |
110 {0,0,&_44u3__p1_0}, | |
111 {0,0,&_44u3__p2_0}, | |
112 {0,0,&_44u3__p3_0}, | |
113 {0,0,&_44u3__p4_0}, | |
114 {0,0,&_44u3__p5_0}, | |
115 {&_44u3__p6_0,&_44u3__p6_1}, | |
116 {&_44u3__p7_0,&_44u3__p7_1,&_44u3__p7_2} | |
117 } | |
118 }; | |
119 static const static_bookblock _resbook_44u_4={ | |
120 { | |
121 {0}, | |
122 {0,0,&_44u4__p1_0}, | |
123 {0,0,&_44u4__p2_0}, | |
124 {0,0,&_44u4__p3_0}, | |
125 {0,0,&_44u4__p4_0}, | |
126 {0,0,&_44u4__p5_0}, | |
127 {&_44u4__p6_0,&_44u4__p6_1}, | |
128 {&_44u4__p7_0,&_44u4__p7_1,&_44u4__p7_2} | |
129 } | |
130 }; | |
131 static const static_bookblock _resbook_44u_5={ | |
132 { | |
133 {0}, | |
134 {0,0,&_44u5__p1_0}, | |
135 {0,0,&_44u5__p2_0}, | |
136 {0,0,&_44u5__p3_0}, | |
137 {0,0,&_44u5__p4_0}, | |
138 {0,0,&_44u5__p5_0}, | |
139 {0,0,&_44u5__p6_0}, | |
140 {&_44u5__p7_0,&_44u5__p7_1}, | |
141 {&_44u5__p8_0,&_44u5__p8_1}, | |
142 {&_44u5__p9_0,&_44u5__p9_1,&_44u5__p9_2} | |
143 } | |
144 }; | |
145 static const static_bookblock _resbook_44u_6={ | |
146 { | |
147 {0}, | |
148 {0,0,&_44u6__p1_0}, | |
149 {0,0,&_44u6__p2_0}, | |
150 {0,0,&_44u6__p3_0}, | |
151 {0,0,&_44u6__p4_0}, | |
152 {0,0,&_44u6__p5_0}, | |
153 {0,0,&_44u6__p6_0}, | |
154 {&_44u6__p7_0,&_44u6__p7_1}, | |
155 {&_44u6__p8_0,&_44u6__p8_1}, | |
156 {&_44u6__p9_0,&_44u6__p9_1,&_44u6__p9_2} | |
157 } | |
158 }; | |
159 static const static_bookblock _resbook_44u_7={ | |
160 { | |
161 {0}, | |
162 {0,0,&_44u7__p1_0}, | |
163 {0,0,&_44u7__p2_0}, | |
164 {0,0,&_44u7__p3_0}, | |
165 {0,0,&_44u7__p4_0}, | |
166 {0,0,&_44u7__p5_0}, | |
167 {0,0,&_44u7__p6_0}, | |
168 {&_44u7__p7_0,&_44u7__p7_1}, | |
169 {&_44u7__p8_0,&_44u7__p8_1}, | |
170 {&_44u7__p9_0,&_44u7__p9_1,&_44u7__p9_2} | |
171 } | |
172 }; | |
173 static const static_bookblock _resbook_44u_8={ | |
174 { | |
175 {0}, | |
176 {0,0,&_44u8_p1_0}, | |
177 {0,0,&_44u8_p2_0}, | |
178 {0,0,&_44u8_p3_0}, | |
179 {0,0,&_44u8_p4_0}, | |
180 {&_44u8_p5_0,&_44u8_p5_1}, | |
181 {&_44u8_p6_0,&_44u8_p6_1}, | |
182 {&_44u8_p7_0,&_44u8_p7_1}, | |
183 {&_44u8_p8_0,&_44u8_p8_1}, | |
184 {&_44u8_p9_0,&_44u8_p9_1,&_44u8_p9_2} | |
185 } | |
186 }; | |
187 static const static_bookblock _resbook_44u_9={ | |
188 { | |
189 {0}, | |
190 {0,0,&_44u9_p1_0}, | |
191 {0,0,&_44u9_p2_0}, | |
192 {0,0,&_44u9_p3_0}, | |
193 {0,0,&_44u9_p4_0}, | |
194 {&_44u9_p5_0,&_44u9_p5_1}, | |
195 {&_44u9_p6_0,&_44u9_p6_1}, | |
196 {&_44u9_p7_0,&_44u9_p7_1}, | |
197 {&_44u9_p8_0,&_44u9_p8_1}, | |
198 {&_44u9_p9_0,&_44u9_p9_1,&_44u9_p9_2} | |
199 } | |
200 }; | |
201 | |
202 static const vorbis_residue_template _res_44u_n1[]={ | |
203 {1,0,32, &_residue_44_low_un, | |
204 &_huff_book__44un1__short,&_huff_book__44un1__short, | |
205 &_resbook_44u_n1,&_resbook_44u_n1}, | |
206 | |
207 {1,0,32, &_residue_44_low_un, | |
208 &_huff_book__44un1__long,&_huff_book__44un1__long, | |
209 &_resbook_44u_n1,&_resbook_44u_n1} | |
210 }; | |
211 static const vorbis_residue_template _res_44u_0[]={ | |
212 {1,0,16, &_residue_44_low_un, | |
213 &_huff_book__44u0__short,&_huff_book__44u0__short, | |
214 &_resbook_44u_0,&_resbook_44u_0}, | |
215 | |
216 {1,0,32, &_residue_44_low_un, | |
217 &_huff_book__44u0__long,&_huff_book__44u0__long, | |
218 &_resbook_44u_0,&_resbook_44u_0} | |
219 }; | |
220 static const vorbis_residue_template _res_44u_1[]={ | |
221 {1,0,16, &_residue_44_low_un, | |
222 &_huff_book__44u1__short,&_huff_book__44u1__short, | |
223 &_resbook_44u_1,&_resbook_44u_1}, | |
224 | |
225 {1,0,32, &_residue_44_low_un, | |
226 &_huff_book__44u1__long,&_huff_book__44u1__long, | |
227 &_resbook_44u_1,&_resbook_44u_1} | |
228 }; | |
229 static const vorbis_residue_template _res_44u_2[]={ | |
230 {1,0,16, &_residue_44_low_un, | |
231 &_huff_book__44u2__short,&_huff_book__44u2__short, | |
232 &_resbook_44u_2,&_resbook_44u_2}, | |
233 | |
234 {1,0,32, &_residue_44_low_un, | |
235 &_huff_book__44u2__long,&_huff_book__44u2__long, | |
236 &_resbook_44u_2,&_resbook_44u_2} | |
237 }; | |
238 static const vorbis_residue_template _res_44u_3[]={ | |
239 {1,0,16, &_residue_44_low_un, | |
240 &_huff_book__44u3__short,&_huff_book__44u3__short, | |
241 &_resbook_44u_3,&_resbook_44u_3}, | |
242 | |
243 {1,0,32, &_residue_44_low_un, | |
244 &_huff_book__44u3__long,&_huff_book__44u3__long, | |
245 &_resbook_44u_3,&_resbook_44u_3} | |
246 }; | |
247 static const vorbis_residue_template _res_44u_4[]={ | |
248 {1,0,16, &_residue_44_low_un, | |
249 &_huff_book__44u4__short,&_huff_book__44u4__short, | |
250 &_resbook_44u_4,&_resbook_44u_4}, | |
251 | |
252 {1,0,32, &_residue_44_low_un, | |
253 &_huff_book__44u4__long,&_huff_book__44u4__long, | |
254 &_resbook_44u_4,&_resbook_44u_4} | |
255 }; | |
256 | |
257 static const vorbis_residue_template _res_44u_5[]={ | |
258 {1,0,16, &_residue_44_mid_un, | |
259 &_huff_book__44u5__short,&_huff_book__44u5__short, | |
260 &_resbook_44u_5,&_resbook_44u_5}, | |
261 | |
262 {1,0,32, &_residue_44_mid_un, | |
263 &_huff_book__44u5__long,&_huff_book__44u5__long, | |
264 &_resbook_44u_5,&_resbook_44u_5} | |
265 }; | |
266 | |
267 static const vorbis_residue_template _res_44u_6[]={ | |
268 {1,0,16, &_residue_44_mid_un, | |
269 &_huff_book__44u6__short,&_huff_book__44u6__short, | |
270 &_resbook_44u_6,&_resbook_44u_6}, | |
271 | |
272 {1,0,32, &_residue_44_mid_un, | |
273 &_huff_book__44u6__long,&_huff_book__44u6__long, | |
274 &_resbook_44u_6,&_resbook_44u_6} | |
275 }; | |
276 | |
277 static const vorbis_residue_template _res_44u_7[]={ | |
278 {1,0,16, &_residue_44_mid_un, | |
279 &_huff_book__44u7__short,&_huff_book__44u7__short, | |
280 &_resbook_44u_7,&_resbook_44u_7}, | |
281 | |
282 {1,0,32, &_residue_44_mid_un, | |
283 &_huff_book__44u7__long,&_huff_book__44u7__long, | |
284 &_resbook_44u_7,&_resbook_44u_7} | |
285 }; | |
286 | |
287 static const vorbis_residue_template _res_44u_8[]={ | |
288 {1,0,16, &_residue_44_hi_un, | |
289 &_huff_book__44u8__short,&_huff_book__44u8__short, | |
290 &_resbook_44u_8,&_resbook_44u_8}, | |
291 | |
292 {1,0,32, &_residue_44_hi_un, | |
293 &_huff_book__44u8__long,&_huff_book__44u8__long, | |
294 &_resbook_44u_8,&_resbook_44u_8} | |
295 }; | |
296 static const vorbis_residue_template _res_44u_9[]={ | |
297 {1,0,16, &_residue_44_hi_un, | |
298 &_huff_book__44u9__short,&_huff_book__44u9__short, | |
299 &_resbook_44u_9,&_resbook_44u_9}, | |
300 | |
301 {1,0,32, &_residue_44_hi_un, | |
302 &_huff_book__44u9__long,&_huff_book__44u9__long, | |
303 &_resbook_44u_9,&_resbook_44u_9} | |
304 }; | |
305 | |
306 static const vorbis_mapping_template _mapres_template_44_uncoupled[]={ | |
307 { _map_nominal_u, _res_44u_n1 }, /* -1 */ | |
308 { _map_nominal_u, _res_44u_0 }, /* 0 */ | |
309 { _map_nominal_u, _res_44u_1 }, /* 1 */ | |
310 { _map_nominal_u, _res_44u_2 }, /* 2 */ | |
311 { _map_nominal_u, _res_44u_3 }, /* 3 */ | |
312 { _map_nominal_u, _res_44u_4 }, /* 4 */ | |
313 { _map_nominal_u, _res_44u_5 }, /* 5 */ | |
314 { _map_nominal_u, _res_44u_6 }, /* 6 */ | |
315 { _map_nominal_u, _res_44u_7 }, /* 7 */ | |
316 { _map_nominal_u, _res_44u_8 }, /* 8 */ | |
317 { _map_nominal_u, _res_44u_9 }, /* 9 */ | |
318 }; |