Mercurial > mplayer.hg
annotate mp3lib/mpg123.h @ 23308:f63408f61f0f
Add imgfmt (AKA pixel format) to muxer_stream_t so that encoders can
pass imgfmt to muxers.
author | corey |
---|---|
date | Thu, 17 May 2007 00:15:08 +0000 |
parents | 0783dd397f74 |
children | d986b47f1451 |
rev | line source |
---|---|
15167
07e7a572bd84
Mark modified imported files as such to comply with (L)GPL ¡ø2a.
diego
parents:
12131
diff
changeset
|
1 /* |
18783 | 2 * Modified for use with MPlayer, for details see the changelog at |
3 * http://svn.mplayerhq.hu/mplayer/trunk/ | |
15167
07e7a572bd84
Mark modified imported files as such to comply with (L)GPL ¡ø2a.
diego
parents:
12131
diff
changeset
|
4 * $Id$ |
07e7a572bd84
Mark modified imported files as such to comply with (L)GPL ¡ø2a.
diego
parents:
12131
diff
changeset
|
5 */ |
07e7a572bd84
Mark modified imported files as such to comply with (L)GPL ¡ø2a.
diego
parents:
12131
diff
changeset
|
6 |
1 | 7 /* |
8 * mpg123 defines | |
9 * used source: musicout.h from mpegaudio package | |
10 */ | |
11 | |
16989 | 12 #include "config.h" |
1 | 13 |
1256
a738eae695cc
#ifndef M_PI and M_SQRT2 added while fearing from redefining :)
alex
parents:
1245
diff
changeset
|
14 #ifndef M_PI |
a738eae695cc
#ifndef M_PI and M_SQRT2 added while fearing from redefining :)
alex
parents:
1245
diff
changeset
|
15 #define M_PI 3.141592653589793238462 |
a738eae695cc
#ifndef M_PI and M_SQRT2 added while fearing from redefining :)
alex
parents:
1245
diff
changeset
|
16 #endif |
a738eae695cc
#ifndef M_PI and M_SQRT2 added while fearing from redefining :)
alex
parents:
1245
diff
changeset
|
17 #ifndef M_SQRT2 |
a738eae695cc
#ifndef M_PI and M_SQRT2 added while fearing from redefining :)
alex
parents:
1245
diff
changeset
|
18 #define M_SQRT2 1.414213562373095048802 |
a738eae695cc
#ifndef M_PI and M_SQRT2 added while fearing from redefining :)
alex
parents:
1245
diff
changeset
|
19 #endif |
a738eae695cc
#ifndef M_PI and M_SQRT2 added while fearing from redefining :)
alex
parents:
1245
diff
changeset
|
20 #define REAL_IS_FLOAT |
a738eae695cc
#ifndef M_PI and M_SQRT2 added while fearing from redefining :)
alex
parents:
1245
diff
changeset
|
21 #define NEW_DCT9 |
1 | 22 |
23 #undef MPG123_REMOTE /* Get rid of this stuff for Win32 */ | |
24 | |
25 /* | |
26 # define real float | |
27 # define real long double | |
28 # define real double | |
29 #include "audio.h" | |
30 | |
31 // #define AUDIOBUFSIZE 4096 | |
32 */ | |
33 | |
34 #define FALSE 0 | |
35 #define TRUE 1 | |
36 | |
37 #define MAX_NAME_SIZE 81 | |
38 #define SBLIMIT 32 | |
39 #define SCALE_BLOCK 12 | |
40 #define SSLIMIT 18 | |
41 | |
42 #define MPG_MD_STEREO 0 | |
43 #define MPG_MD_JOINT_STEREO 1 | |
44 #define MPG_MD_DUAL_CHANNEL 2 | |
45 #define MPG_MD_MONO 3 | |
46 | |
47 /* #define MAXOUTBURST 32768 */ | |
48 | |
49 /* Pre Shift fo 16 to 8 bit converter table */ | |
50 #define AUSHIFT (3) | |
51 | |
52 struct al_table | |
53 { | |
54 short bits; | |
55 short d; | |
56 }; | |
57 | |
58 struct frame { | |
59 struct al_table *alloc; | |
60 int (*synth)(real *,int,unsigned char *,int *); | |
61 int (*synth_mono)(real *,unsigned char *,int *); | |
62 int stereo; | |
63 int jsbound; | |
64 int single; | |
65 int II_sblimit; | |
66 int down_sample_sblimit; | |
67 int lsf; | |
68 int mpeg25; | |
69 int down_sample; | |
70 int header_change; | |
71 int lay; | |
72 int error_protection; | |
73 int bitrate_index; | |
74 long sampling_frequency; | |
75 int padding; | |
76 int extension; | |
77 int mode; | |
78 int mode_ext; | |
79 int copyright; | |
80 int original; | |
81 int emphasis; | |
82 long framesize; /* computed framesize */ | |
83 }; | |
84 | |
85 | |
86 struct gr_info_s { | |
87 int scfsi; | |
88 unsigned part2_3_length; | |
89 unsigned big_values; | |
90 unsigned scalefac_compress; | |
91 unsigned block_type; | |
92 unsigned mixed_block_flag; | |
93 unsigned table_select[3]; | |
94 unsigned subblock_gain[3]; | |
95 unsigned maxband[3]; | |
96 unsigned maxbandl; | |
97 unsigned maxb; | |
98 unsigned region1start; | |
99 unsigned region2start; | |
100 unsigned preflag; | |
101 unsigned scalefac_scale; | |
102 unsigned count1table_select; | |
10343 | 103 real *full_gain[3]; |
104 real *pow2gain; | |
1 | 105 }; |
106 | |
107 struct III_sideinfo | |
108 { | |
109 unsigned main_data_begin; | |
110 unsigned private_bits; | |
111 struct { | |
112 struct gr_info_s gr[2]; | |
113 } ch[2]; | |
114 }; | |
115 | |
8560
1320f1b3229d
fixing that f*cking linker 'bug' e.g. naming config with libmp3lame
alex
parents:
1256
diff
changeset
|
116 extern real mp3lib_decwin[(512+32)]; |
12131
d155623271e3
fix symbol clashes when linking with libmp3lame including mp3 decoder, man, mp3lib is so much bloated
alex
parents:
10343
diff
changeset
|
117 extern real *mp3lib_pnts[]; |
1 | 118 |
1245
03b7e2955a20
Added newest MMX-optimized decore which speedups decoding at least on 13% for any cpu.
nick
parents:
787
diff
changeset
|
119 extern int synth_1to1_pent( real *,int,short * ); |
03b7e2955a20
Added newest MMX-optimized decore which speedups decoding at least on 13% for any cpu.
nick
parents:
787
diff
changeset
|
120 extern void make_decode_tables_MMX(long scaleval); |
03b7e2955a20
Added newest MMX-optimized decore which speedups decoding at least on 13% for any cpu.
nick
parents:
787
diff
changeset
|
121 extern int synth_1to1_MMX( real *,int,short * ); |
03b7e2955a20
Added newest MMX-optimized decore which speedups decoding at least on 13% for any cpu.
nick
parents:
787
diff
changeset
|
122 extern int synth_1to1_MMX_s(real *, int, short *, short *, int *); |
1 | 123 |
1245
03b7e2955a20
Added newest MMX-optimized decore which speedups decoding at least on 13% for any cpu.
nick
parents:
787
diff
changeset
|
124 extern void dct36_3dnow(real *,real *,real *,real *,real *); |
03b7e2955a20
Added newest MMX-optimized decore which speedups decoding at least on 13% for any cpu.
nick
parents:
787
diff
changeset
|
125 extern void dct36_3dnowex(real *,real *,real *,real *,real *); |
03b7e2955a20
Added newest MMX-optimized decore which speedups decoding at least on 13% for any cpu.
nick
parents:
787
diff
changeset
|
126 extern void dct36_sse(real *,real *,real *,real *,real *); |
787 | 127 |
1245
03b7e2955a20
Added newest MMX-optimized decore which speedups decoding at least on 13% for any cpu.
nick
parents:
787
diff
changeset
|
128 typedef int (*synth_func_t)( real *,int,short * ); |
03b7e2955a20
Added newest MMX-optimized decore which speedups decoding at least on 13% for any cpu.
nick
parents:
787
diff
changeset
|
129 typedef void (*dct36_func_t)(real *,real *,real *,real *,real *); |