annotate mp3lib/tabinit.c @ 32282:606e4157cd4c

Split alloc and init of context so that parameters can be set in the context instead of requireing being passed through function parameters. This also makes sws work with AVOptions.
author michael
date Sun, 26 Sep 2010 19:33:57 +0000
parents 32725ca88fed
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
15167
07e7a572bd84 Mark modified imported files as such to comply with (L)GPL ¡ø2a.
diego
parents: 12132
diff changeset
1 /*
18783
0783dd397f74 CVS --> Subversion in copyright notices
diego
parents: 15167
diff changeset
2 * Modified for use with MPlayer, for details see the changelog at
0783dd397f74 CVS --> Subversion in copyright notices
diego
parents: 15167
diff changeset
3 * http://svn.mplayerhq.hu/mplayer/trunk/
15167
07e7a572bd84 Mark modified imported files as such to comply with (L)GPL ¡ø2a.
diego
parents: 12132
diff changeset
4 * $Id$
07e7a572bd84 Mark modified imported files as such to comply with (L)GPL ¡ø2a.
diego
parents: 12132
diff changeset
5 */
07e7a572bd84 Mark modified imported files as such to comply with (L)GPL ¡ø2a.
diego
parents: 12132
diff changeset
6
30167
347d152a5cfa Refactor real --> float #define to a typedef in a common header.
diego
parents: 23434
diff changeset
7 #include "mpg123.h"
347d152a5cfa Refactor real --> float #define to a typedef in a common header.
diego
parents: 23434
diff changeset
8
12132
1975bcc1d015 removing more globals
alex
parents: 12131
diff changeset
9 real mp3lib_decwin[(512+32)];
1975bcc1d015 removing more globals
alex
parents: 12131
diff changeset
10 static real cos64[32], cos32[16], cos16[8], cos8[4], cos4[2];
12131
d155623271e3 fix symbol clashes when linking with libmp3lame including mp3 decoder, man, mp3lib is so much bloated
alex
parents: 8560
diff changeset
11 real *mp3lib_pnts[]={ cos64,cos32,cos16,cos8,cos4 };
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
12
23434
d986b47f1451 Use int and uint32_t instead of long and unsigned long, when appropriate.
zuxy
parents: 18783
diff changeset
13 static int intwinbase[] = {
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
14 0, -1, -1, -1, -1, -1, -1, -2, -2, -2,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
15 -2, -3, -3, -4, -4, -5, -5, -6, -7, -7,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
16 -8, -9, -10, -11, -13, -14, -16, -17, -19, -21,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
17 -24, -26, -29, -31, -35, -38, -41, -45, -49, -53,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
18 -58, -63, -68, -73, -79, -85, -91, -97, -104, -111,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
19 -117, -125, -132, -139, -147, -154, -161, -169, -176, -183,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
20 -190, -196, -202, -208, -213, -218, -222, -225, -227, -228,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
21 -228, -227, -224, -221, -215, -208, -200, -189, -177, -163,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
22 -146, -127, -106, -83, -57, -29, 2, 36, 72, 111,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
23 153, 197, 244, 294, 347, 401, 459, 519, 581, 645,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
24 711, 779, 848, 919, 991, 1064, 1137, 1210, 1283, 1356,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
25 1428, 1498, 1567, 1634, 1698, 1759, 1817, 1870, 1919, 1962,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
26 2001, 2032, 2057, 2075, 2085, 2087, 2080, 2063, 2037, 2000,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
27 1952, 1893, 1822, 1739, 1644, 1535, 1414, 1280, 1131, 970,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
28 794, 605, 402, 185, -45, -288, -545, -814, -1095, -1388,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
29 -1692, -2006, -2330, -2663, -3004, -3351, -3705, -4063, -4425, -4788,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
30 -5153, -5517, -5879, -6237, -6589, -6935, -7271, -7597, -7910, -8209,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
31 -8491, -8755, -8998, -9219, -9416, -9585, -9727, -9838, -9916, -9959,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
32 -9966, -9935, -9863, -9750, -9592, -9389, -9139, -8840, -8492, -8092,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
33 -7640, -7134, -6574, -5959, -5288, -4561, -3776, -2935, -2037, -1082,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
34 -70, 998, 2122, 3300, 4533, 5818, 7154, 8540, 9975, 11455,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
35 12980, 14548, 16155, 17799, 19478, 21189, 22929, 24694, 26482, 28289,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
36 30112, 31947, 33791, 35640, 37489, 39336, 41176, 43006, 44821, 46617,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
37 48390, 50137, 51853, 53534, 55178, 56778, 58333, 59838, 61289, 62684,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
38 64019, 65290, 66494, 67629, 68692, 69679, 70590, 71420, 72169, 72835,
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
39 73415, 73908, 74313, 74630, 74856, 74992, 75038 };
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
40
12131
d155623271e3 fix symbol clashes when linking with libmp3lame including mp3 decoder, man, mp3lib is so much bloated
alex
parents: 8560
diff changeset
41 static void make_decode_tables(long scaleval)
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
42 {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
43 int i,j,k,kr,divv;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
44 real *table,*costab;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
45
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
46
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
47 for(i=0;i<5;i++)
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
48 {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
49 kr=0x10>>i; divv=0x40>>i;
12131
d155623271e3 fix symbol clashes when linking with libmp3lame including mp3 decoder, man, mp3lib is so much bloated
alex
parents: 8560
diff changeset
50 costab = mp3lib_pnts[i];
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
51 for(k=0;k<kr;k++) costab[k] = 1.0 / (2.0 * cos(M_PI * ((double) k * 2.0 + 1.0) / (double) divv));
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
52 }
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
53
8560
1320f1b3229d fixing that f*cking linker 'bug' e.g. naming config with libmp3lame
alex
parents: 1245
diff changeset
54 table = mp3lib_decwin;
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
55 scaleval = -scaleval;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
56 for(i=0,j=0;i<256;i++,j++,table+=32)
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
57 {
8560
1320f1b3229d fixing that f*cking linker 'bug' e.g. naming config with libmp3lame
alex
parents: 1245
diff changeset
58 if(table < mp3lib_decwin+512+16)
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
59 table[16] = table[0] = (double) intwinbase[j] / 65536.0 * (double) scaleval;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
60 if(i % 32 == 31)
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
61 table -= 1023;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
62 if(i % 64 == 63)
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
63 scaleval = - scaleval;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
64 }
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
65
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
66 for( /* i=256 */ ;i<512;i++,j--,table+=32)
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
67 {
8560
1320f1b3229d fixing that f*cking linker 'bug' e.g. naming config with libmp3lame
alex
parents: 1245
diff changeset
68 if(table < mp3lib_decwin+512+16)
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
69 table[16] = table[0] = (double) intwinbase[j] / 65536.0 * (double) scaleval;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
70 if(i % 32 == 31)
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
71 table -= 1023;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
72 if(i % 64 == 63)
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
73 scaleval = - scaleval;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
74 }
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
75 }