bugfix/speed improvement to envelope.c
[platform/upstream/libvorbis.git] / lib / books / res0_256_1024_7.vqh
1 /********************************************************************
2  *                                                                  *
3  * THIS FILE IS PART OF THE OggVorbis SOFTWARE CODEC SOURCE CODE.   *
4  * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
5  * THE GNU LESSER/LIBRARY PUBLIC LICENSE, WHICH IS INCLUDED WITH    *
6  * THIS SOURCE. PLEASE READ THESE TERMS BEFORE DISTRIBUTING.        *
7  *                                                                  *
8  * THE OggVorbis SOURCE CODE IS (C) COPYRIGHT 1994-2001             *
9  * by the XIPHOPHORUS Company, http://www.xiph.org/                 *
10  *                                                                  *
11  ********************************************************************
12
13  function: static codebook autogenerated by vq/somethingorother
14
15  ********************************************************************/
16
17 #ifndef _V_res0_256_1024_7_VQH_
18 #define _V_res0_256_1024_7_VQH_
19 #include "codebook.h"
20
21 static long _vq_quantlist_res0_256_1024_7[] = {
22         290,
23         289,
24         291,
25         288,
26         292,
27         287,
28         293,
29         286,
30         294,
31         285,
32         295,
33         284,
34         296,
35         283,
36         297,
37         282,
38         298,
39         281,
40         299,
41         280,
42         300,
43         279,
44         301,
45         278,
46         302,
47         277,
48         303,
49         276,
50         304,
51         275,
52         305,
53         274,
54         306,
55         273,
56         307,
57         272,
58         308,
59         271,
60         309,
61         270,
62         310,
63         269,
64         311,
65         268,
66         312,
67         267,
68         313,
69         266,
70         314,
71         265,
72         315,
73         264,
74         316,
75         263,
76         317,
77         262,
78         318,
79         261,
80         319,
81         260,
82         320,
83         259,
84         321,
85         258,
86         322,
87         257,
88         323,
89         256,
90         324,
91         255,
92         325,
93         254,
94         326,
95         253,
96         327,
97         252,
98         328,
99         251,
100         329,
101         250,
102         330,
103         249,
104         331,
105         248,
106         332,
107         247,
108         333,
109         246,
110         334,
111         245,
112         335,
113         244,
114         336,
115         243,
116         337,
117         242,
118         338,
119         241,
120         339,
121         240,
122         340,
123         239,
124         341,
125         238,
126         342,
127         237,
128         343,
129         236,
130         344,
131         235,
132         345,
133         234,
134         346,
135         233,
136         347,
137         232,
138         348,
139         231,
140         349,
141         230,
142         350,
143         229,
144         351,
145         228,
146         352,
147         227,
148         353,
149         226,
150         354,
151         225,
152         355,
153         224,
154         356,
155         223,
156         357,
157         222,
158         358,
159         221,
160         359,
161         220,
162         360,
163         219,
164         361,
165         218,
166         362,
167         217,
168         363,
169         216,
170         364,
171         215,
172         365,
173         214,
174         366,
175         213,
176         367,
177         212,
178         368,
179         211,
180         369,
181         210,
182         370,
183         209,
184         371,
185         208,
186         372,
187         207,
188         373,
189         206,
190         374,
191         205,
192         375,
193         204,
194         376,
195         203,
196         377,
197         202,
198         378,
199         201,
200         379,
201         200,
202         380,
203         199,
204         381,
205         198,
206         382,
207         197,
208         383,
209         196,
210         384,
211         195,
212         385,
213         194,
214         386,
215         193,
216         387,
217         192,
218         388,
219         191,
220         389,
221         190,
222         390,
223         189,
224         391,
225         188,
226         392,
227         187,
228         393,
229         186,
230         394,
231         185,
232         395,
233         184,
234         396,
235         183,
236         397,
237         182,
238         398,
239         181,
240         399,
241         180,
242         400,
243         179,
244         401,
245         178,
246         402,
247         177,
248         403,
249         176,
250         404,
251         175,
252         405,
253         174,
254         406,
255         173,
256         407,
257         172,
258         408,
259         171,
260         409,
261         170,
262         410,
263         169,
264         411,
265         168,
266         412,
267         167,
268         413,
269         166,
270         414,
271         165,
272         415,
273         164,
274         416,
275         163,
276         417,
277         162,
278         418,
279         161,
280         419,
281         160,
282         420,
283         159,
284         421,
285         158,
286         422,
287         157,
288         423,
289         156,
290         424,
291         155,
292         425,
293         154,
294         426,
295         153,
296         427,
297         152,
298         428,
299         151,
300         429,
301         150,
302         430,
303         149,
304         431,
305         148,
306         432,
307         147,
308         433,
309         146,
310         434,
311         145,
312         435,
313         144,
314         436,
315         143,
316         437,
317         142,
318         438,
319         141,
320         439,
321         140,
322         440,
323         139,
324         441,
325         138,
326         442,
327         137,
328         443,
329         136,
330         444,
331         135,
332         445,
333         134,
334         446,
335         133,
336         447,
337         132,
338         448,
339         131,
340         449,
341         130,
342         450,
343         129,
344         451,
345         128,
346         452,
347         127,
348         453,
349         126,
350         454,
351         125,
352         455,
353         124,
354         456,
355         123,
356         457,
357         122,
358         458,
359         121,
360         459,
361         120,
362         460,
363         119,
364         461,
365         118,
366         462,
367         117,
368         463,
369         116,
370         464,
371         115,
372         465,
373         114,
374         466,
375         113,
376         467,
377         112,
378         468,
379         111,
380         469,
381         110,
382         470,
383         109,
384         471,
385         108,
386         472,
387         107,
388         473,
389         106,
390         474,
391         105,
392         475,
393         104,
394         476,
395         103,
396         477,
397         102,
398         478,
399         101,
400         479,
401         100,
402         480,
403         99,
404         481,
405         98,
406         482,
407         97,
408         483,
409         96,
410         484,
411         95,
412         485,
413         94,
414         486,
415         93,
416         487,
417         92,
418         488,
419         91,
420         489,
421         90,
422         490,
423         89,
424         491,
425         88,
426         492,
427         87,
428         493,
429         86,
430         494,
431         85,
432         495,
433         84,
434         496,
435         83,
436         497,
437         82,
438         498,
439         81,
440         499,
441         80,
442         500,
443         79,
444         501,
445         78,
446         502,
447         77,
448         503,
449         76,
450         504,
451         75,
452         505,
453         74,
454         506,
455         73,
456         507,
457         72,
458         508,
459         71,
460         509,
461         70,
462         510,
463         69,
464         511,
465         68,
466         512,
467         67,
468         513,
469         66,
470         514,
471         65,
472         515,
473         64,
474         516,
475         63,
476         517,
477         62,
478         518,
479         61,
480         519,
481         60,
482         520,
483         59,
484         521,
485         58,
486         522,
487         57,
488         523,
489         56,
490         524,
491         55,
492         525,
493         54,
494         526,
495         53,
496         527,
497         52,
498         528,
499         51,
500         529,
501         50,
502         530,
503         49,
504         531,
505         48,
506         532,
507         47,
508         533,
509         46,
510         534,
511         45,
512         535,
513         44,
514         536,
515         43,
516         537,
517         42,
518         538,
519         41,
520         539,
521         40,
522         540,
523         39,
524         541,
525         38,
526         542,
527         37,
528         543,
529         36,
530         544,
531         35,
532         545,
533         34,
534         546,
535         33,
536         547,
537         32,
538         548,
539         31,
540         549,
541         30,
542         550,
543         29,
544         551,
545         28,
546         552,
547         27,
548         553,
549         26,
550         554,
551         25,
552         555,
553         24,
554         556,
555         23,
556         557,
557         22,
558         558,
559         21,
560         559,
561         20,
562         560,
563         19,
564         561,
565         18,
566         562,
567         17,
568         563,
569         16,
570         564,
571         15,
572         565,
573         14,
574         566,
575         13,
576         567,
577         12,
578         568,
579         11,
580         569,
581         10,
582         570,
583         9,
584         571,
585         8,
586         572,
587         7,
588         573,
589         6,
590         574,
591         5,
592         575,
593         4,
594         576,
595         3,
596         577,
597         2,
598         578,
599         1,
600         579,
601         0,
602         580,
603 };
604
605 static long _vq_lengthlist_res0_256_1024_7[] = {
606          3, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6,
607          6, 6, 6, 6, 6, 7, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7,
608          7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8,
609          8, 8, 8, 9, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
610          9, 9, 9, 9, 9,10,10,10,10,10,10,10,10,10,10,10,
611         10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,
612         10,10,10,11,10,11,11,11,11,11,11,11,11,11,11,11,
613         11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,
614         12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,
615         12,12,12,12,12,12,13,13,13,12,13,13,13,13,13,13,
616         13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,
617         14,13,13,14,14,14,14,14,13,14,14,14,14,14,14,14,
618         14,14,14,14,14,14,14,14,14,14,14,14,14,15,14,15,
619         14,15,14,15,15,14,15,15,15,15,15,15,15,14,15,15,
620         15,15,15,15,15,15,15,15,15,15,15,15,16,15,15,15,
621         15,15,16,15,15,15,16,16,16,16,16,16,16,16,16,15,
622         16,15,16,16,16,16,16,16,16,16,16,16,16,16,16,17,
623         16,16,16,16,16,16,17,17,17,16,16,16,17,17,17,17,
624         16,16,17,17,16,17,17,17,17,17,17,17,19,16,17,16,
625         17,17,17,17,17,17,18,18,17,17,18,17,18,18,17,18,
626         17,18,18,17,18,18,18,17,18,19,18,17,18,18,19,18,
627         19,18,19,19,18,18,18,19,17,19,18,19,19,19,18,18,
628         20,18,19,20,18,18,18,18,20,18,18,18,20,21,21,19,
629         19,20,19,20,20,20,19,19,19,19,21,21,18,21,18,19,
630         19,20,19,19,20,19,21,20,21,20,19,18,21,21,19,21,
631         19,19,20,19,21,21,20,21,21,20,19,20,19,20,20,20,
632         20,20,19,19,19,21,20,21,21,20,20,21,20,19,20,21,
633         21,20,19,20,21,21,21,20,21,21,21,21,21,20,21,21,
634         20,20,21,21,21,20,20,21,21,21,21,21,20,21,21,21,
635         21,21,21,21,21,21,21,21,21,21,21,19,21,21,21,21,
636         21,21,21,20,21,21,21,21,21,21,20,21,21,21,21,21,
637         21,21,21,21,21,20,21,21,21,21,21,21,21,20,21,20,
638         21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,
639         21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,
640         21,21,20,21,21,21,21,21,21,21,21,21,21,21,21,21,
641         21,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,
642         21,21,21,20,20,
643 };
644
645 static float _vq_quantthresh_res0_256_1024_7[] = {
646         -289.5, -288.5, -287.5, -286.5, -285.5, -284.5, -283.5, -282.5, 
647         -281.5, -280.5, -279.5, -278.5, -277.5, -276.5, -275.5, -274.5, 
648         -273.5, -272.5, -271.5, -270.5, -269.5, -268.5, -267.5, -266.5, 
649         -265.5, -264.5, -263.5, -262.5, -261.5, -260.5, -259.5, -258.5, 
650         -257.5, -256.5, -255.5, -254.5, -253.5, -252.5, -251.5, -250.5, 
651         -249.5, -248.5, -247.5, -246.5, -245.5, -244.5, -243.5, -242.5, 
652         -241.5, -240.5, -239.5, -238.5, -237.5, -236.5, -235.5, -234.5, 
653         -233.5, -232.5, -231.5, -230.5, -229.5, -228.5, -227.5, -226.5, 
654         -225.5, -224.5, -223.5, -222.5, -221.5, -220.5, -219.5, -218.5, 
655         -217.5, -216.5, -215.5, -214.5, -213.5, -212.5, -211.5, -210.5, 
656         -209.5, -208.5, -207.5, -206.5, -205.5, -204.5, -203.5, -202.5, 
657         -201.5, -200.5, -199.5, -198.5, -197.5, -196.5, -195.5, -194.5, 
658         -193.5, -192.5, -191.5, -190.5, -189.5, -188.5, -187.5, -186.5, 
659         -185.5, -184.5, -183.5, -182.5, -181.5, -180.5, -179.5, -178.5, 
660         -177.5, -176.5, -175.5, -174.5, -173.5, -172.5, -171.5, -170.5, 
661         -169.5, -168.5, -167.5, -166.5, -165.5, -164.5, -163.5, -162.5, 
662         -161.5, -160.5, -159.5, -158.5, -157.5, -156.5, -155.5, -154.5, 
663         -153.5, -152.5, -151.5, -150.5, -149.5, -148.5, -147.5, -146.5, 
664         -145.5, -144.5, -143.5, -142.5, -141.5, -140.5, -139.5, -138.5, 
665         -137.5, -136.5, -135.5, -134.5, -133.5, -132.5, -131.5, -130.5, 
666         -129.5, -128.5, -127.5, -126.5, -125.5, -124.5, -123.5, -122.5, 
667         -121.5, -120.5, -119.5, -118.5, -117.5, -116.5, -115.5, -114.5, 
668         -113.5, -112.5, -111.5, -110.5, -109.5, -108.5, -107.5, -106.5, 
669         -105.5, -104.5, -103.5, -102.5, -101.5, -100.5, -99.5, -98.5, 
670         -97.5, -96.5, -95.5, -94.5, -93.5, -92.5, -91.5, -90.5, 
671         -89.5, -88.5, -87.5, -86.5, -85.5, -84.5, -83.5, -82.5, 
672         -81.5, -80.5, -79.5, -78.5, -77.5, -76.5, -75.5, -74.5, 
673         -73.5, -72.5, -71.5, -70.5, -69.5, -68.5, -67.5, -66.5, 
674         -65.5, -64.5, -63.5, -62.5, -61.5, -60.5, -59.5, -58.5, 
675         -57.5, -56.5, -55.5, -54.5, -53.5, -52.5, -51.5, -50.5, 
676         -49.5, -48.5, -47.5, -46.5, -45.5, -44.5, -43.5, -42.5, 
677         -41.5, -40.5, -39.5, -38.5, -37.5, -36.5, -35.5, -34.5, 
678         -33.5, -32.5, -31.5, -30.5, -29.5, -28.5, -27.5, -26.5, 
679         -25.5, -24.5, -23.5, -22.5, -21.5, -20.5, -19.5, -18.5, 
680         -17.5, -16.5, -15.5, -14.5, -13.5, -12.5, -11.5, -10.5, 
681         -9.5, -8.5, -7.5, -6.5, -5.5, -4.5, -3.5, -2.5, 
682         -1.5, -0.5, 0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 
683         6.5, 7.5, 8.5, 9.5, 10.5, 11.5, 12.5, 13.5, 
684         14.5, 15.5, 16.5, 17.5, 18.5, 19.5, 20.5, 21.5, 
685         22.5, 23.5, 24.5, 25.5, 26.5, 27.5, 28.5, 29.5, 
686         30.5, 31.5, 32.5, 33.5, 34.5, 35.5, 36.5, 37.5, 
687         38.5, 39.5, 40.5, 41.5, 42.5, 43.5, 44.5, 45.5, 
688         46.5, 47.5, 48.5, 49.5, 50.5, 51.5, 52.5, 53.5, 
689         54.5, 55.5, 56.5, 57.5, 58.5, 59.5, 60.5, 61.5, 
690         62.5, 63.5, 64.5, 65.5, 66.5, 67.5, 68.5, 69.5, 
691         70.5, 71.5, 72.5, 73.5, 74.5, 75.5, 76.5, 77.5, 
692         78.5, 79.5, 80.5, 81.5, 82.5, 83.5, 84.5, 85.5, 
693         86.5, 87.5, 88.5, 89.5, 90.5, 91.5, 92.5, 93.5, 
694         94.5, 95.5, 96.5, 97.5, 98.5, 99.5, 100.5, 101.5, 
695         102.5, 103.5, 104.5, 105.5, 106.5, 107.5, 108.5, 109.5, 
696         110.5, 111.5, 112.5, 113.5, 114.5, 115.5, 116.5, 117.5, 
697         118.5, 119.5, 120.5, 121.5, 122.5, 123.5, 124.5, 125.5, 
698         126.5, 127.5, 128.5, 129.5, 130.5, 131.5, 132.5, 133.5, 
699         134.5, 135.5, 136.5, 137.5, 138.5, 139.5, 140.5, 141.5, 
700         142.5, 143.5, 144.5, 145.5, 146.5, 147.5, 148.5, 149.5, 
701         150.5, 151.5, 152.5, 153.5, 154.5, 155.5, 156.5, 157.5, 
702         158.5, 159.5, 160.5, 161.5, 162.5, 163.5, 164.5, 165.5, 
703         166.5, 167.5, 168.5, 169.5, 170.5, 171.5, 172.5, 173.5, 
704         174.5, 175.5, 176.5, 177.5, 178.5, 179.5, 180.5, 181.5, 
705         182.5, 183.5, 184.5, 185.5, 186.5, 187.5, 188.5, 189.5, 
706         190.5, 191.5, 192.5, 193.5, 194.5, 195.5, 196.5, 197.5, 
707         198.5, 199.5, 200.5, 201.5, 202.5, 203.5, 204.5, 205.5, 
708         206.5, 207.5, 208.5, 209.5, 210.5, 211.5, 212.5, 213.5, 
709         214.5, 215.5, 216.5, 217.5, 218.5, 219.5, 220.5, 221.5, 
710         222.5, 223.5, 224.5, 225.5, 226.5, 227.5, 228.5, 229.5, 
711         230.5, 231.5, 232.5, 233.5, 234.5, 235.5, 236.5, 237.5, 
712         238.5, 239.5, 240.5, 241.5, 242.5, 243.5, 244.5, 245.5, 
713         246.5, 247.5, 248.5, 249.5, 250.5, 251.5, 252.5, 253.5, 
714         254.5, 255.5, 256.5, 257.5, 258.5, 259.5, 260.5, 261.5, 
715         262.5, 263.5, 264.5, 265.5, 266.5, 267.5, 268.5, 269.5, 
716         270.5, 271.5, 272.5, 273.5, 274.5, 275.5, 276.5, 277.5, 
717         278.5, 279.5, 280.5, 281.5, 282.5, 283.5, 284.5, 285.5, 
718         286.5, 287.5, 288.5, 289.5, 
719 };
720
721 static long _vq_quantmap_res0_256_1024_7[] = {
722           579,  577,  575,  573,  571,  569,  567,  565,
723           563,  561,  559,  557,  555,  553,  551,  549,
724           547,  545,  543,  541,  539,  537,  535,  533,
725           531,  529,  527,  525,  523,  521,  519,  517,
726           515,  513,  511,  509,  507,  505,  503,  501,
727           499,  497,  495,  493,  491,  489,  487,  485,
728           483,  481,  479,  477,  475,  473,  471,  469,
729           467,  465,  463,  461,  459,  457,  455,  453,
730           451,  449,  447,  445,  443,  441,  439,  437,
731           435,  433,  431,  429,  427,  425,  423,  421,
732           419,  417,  415,  413,  411,  409,  407,  405,
733           403,  401,  399,  397,  395,  393,  391,  389,
734           387,  385,  383,  381,  379,  377,  375,  373,
735           371,  369,  367,  365,  363,  361,  359,  357,
736           355,  353,  351,  349,  347,  345,  343,  341,
737           339,  337,  335,  333,  331,  329,  327,  325,
738           323,  321,  319,  317,  315,  313,  311,  309,
739           307,  305,  303,  301,  299,  297,  295,  293,
740           291,  289,  287,  285,  283,  281,  279,  277,
741           275,  273,  271,  269,  267,  265,  263,  261,
742           259,  257,  255,  253,  251,  249,  247,  245,
743           243,  241,  239,  237,  235,  233,  231,  229,
744           227,  225,  223,  221,  219,  217,  215,  213,
745           211,  209,  207,  205,  203,  201,  199,  197,
746           195,  193,  191,  189,  187,  185,  183,  181,
747           179,  177,  175,  173,  171,  169,  167,  165,
748           163,  161,  159,  157,  155,  153,  151,  149,
749           147,  145,  143,  141,  139,  137,  135,  133,
750           131,  129,  127,  125,  123,  121,  119,  117,
751           115,  113,  111,  109,  107,  105,  103,  101,
752            99,   97,   95,   93,   91,   89,   87,   85,
753            83,   81,   79,   77,   75,   73,   71,   69,
754            67,   65,   63,   61,   59,   57,   55,   53,
755            51,   49,   47,   45,   43,   41,   39,   37,
756            35,   33,   31,   29,   27,   25,   23,   21,
757            19,   17,   15,   13,   11,    9,    7,    5,
758             3,    1,    0,    2,    4,    6,    8,   10,
759            12,   14,   16,   18,   20,   22,   24,   26,
760            28,   30,   32,   34,   36,   38,   40,   42,
761            44,   46,   48,   50,   52,   54,   56,   58,
762            60,   62,   64,   66,   68,   70,   72,   74,
763            76,   78,   80,   82,   84,   86,   88,   90,
764            92,   94,   96,   98,  100,  102,  104,  106,
765           108,  110,  112,  114,  116,  118,  120,  122,
766           124,  126,  128,  130,  132,  134,  136,  138,
767           140,  142,  144,  146,  148,  150,  152,  154,
768           156,  158,  160,  162,  164,  166,  168,  170,
769           172,  174,  176,  178,  180,  182,  184,  186,
770           188,  190,  192,  194,  196,  198,  200,  202,
771           204,  206,  208,  210,  212,  214,  216,  218,
772           220,  222,  224,  226,  228,  230,  232,  234,
773           236,  238,  240,  242,  244,  246,  248,  250,
774           252,  254,  256,  258,  260,  262,  264,  266,
775           268,  270,  272,  274,  276,  278,  280,  282,
776           284,  286,  288,  290,  292,  294,  296,  298,
777           300,  302,  304,  306,  308,  310,  312,  314,
778           316,  318,  320,  322,  324,  326,  328,  330,
779           332,  334,  336,  338,  340,  342,  344,  346,
780           348,  350,  352,  354,  356,  358,  360,  362,
781           364,  366,  368,  370,  372,  374,  376,  378,
782           380,  382,  384,  386,  388,  390,  392,  394,
783           396,  398,  400,  402,  404,  406,  408,  410,
784           412,  414,  416,  418,  420,  422,  424,  426,
785           428,  430,  432,  434,  436,  438,  440,  442,
786           444,  446,  448,  450,  452,  454,  456,  458,
787           460,  462,  464,  466,  468,  470,  472,  474,
788           476,  478,  480,  482,  484,  486,  488,  490,
789           492,  494,  496,  498,  500,  502,  504,  506,
790           508,  510,  512,  514,  516,  518,  520,  522,
791           524,  526,  528,  530,  532,  534,  536,  538,
792           540,  542,  544,  546,  548,  550,  552,  554,
793           556,  558,  560,  562,  564,  566,  568,  570,
794           572,  574,  576,  578,  580,
795 };
796
797 static encode_aux_threshmatch _vq_auxt_res0_256_1024_7 = {
798         _vq_quantthresh_res0_256_1024_7,
799         _vq_quantmap_res0_256_1024_7,
800         581,
801         581
802 };
803
804 static static_codebook _vq_book_res0_256_1024_7 = {
805         1, 581,
806         _vq_lengthlist_res0_256_1024_7,
807         1, -518905856, 1611661312, 10, 0,
808         _vq_quantlist_res0_256_1024_7,
809         NULL,
810         &_vq_auxt_res0_256_1024_7,
811         NULL,
812         0
813 };
814
815
816 #endif