Subversion Repositories Kolibri OS

Rev

Rev 1905 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1905 Rev 3960
Line 28... Line 28...
28
#define NTOM_MAX 1
28
#define NTOM_MAX 1
29
#else
29
#else
30
#define NTOM_MAX 8          /* maximum allowed factor for upsampling */
30
#define NTOM_MAX 8          /* maximum allowed factor for upsampling */
31
#define NTOM_MAX_FREQ 96000 /* maximum frequency to upsample to / downsample from */
31
#define NTOM_MAX_FREQ 96000 /* maximum frequency to upsample to / downsample from */
32
#define NTOM_MUL (32768)
32
#define NTOM_MUL (32768)
-
 
33
void ntom_set_ntom(mpg123_handle *fr, off_t num);
33
#endif
34
#endif
Line 34... Line 35...
34
 
35
 
35
/* Let's collect all possible synth functions here, for an overview.
36
/* Let's collect all possible synth functions here, for an overview.
36
   If they are actually defined and used depends on preprocessor machinery.
37
   If they are actually defined and used depends on preprocessor machinery.
Line 37... Line -...
37
   See synth.c and optimize.h for that, also some special C and assembler files. */
-
 
38
 
-
 
39
/* The call of left and right plain synth, wrapped.
-
 
40
   This may be replaced by a direct stereo optimized synth. */
-
 
41
int synth_stereo_wrap(real*, real*, mpg123_handle*);
38
   See synth.c and optimize.h for that, also some special C and assembler files. */
42
 
39
 
43
#ifndef NO_16BIT
40
#ifndef NO_16BIT
44
/* The signed-16bit-producing variants. */
41
/* The signed-16bit-producing variants. */
45
int synth_1to1            (real*, int, mpg123_handle*, int);
42
int synth_1to1            (real*, int, mpg123_handle*, int);
Line 55... Line 52...
55
int synth_1to1_altivec    (real*, int, mpg123_handle*, int);
52
int synth_1to1_altivec    (real*, int, mpg123_handle*, int);
56
int synth_1to1_stereo_altivec(real*, real*, mpg123_handle*);
53
int synth_1to1_stereo_altivec(real*, real*, mpg123_handle*);
57
int synth_1to1_x86_64     (real*, int, mpg123_handle*, int);
54
int synth_1to1_x86_64     (real*, int, mpg123_handle*, int);
58
int synth_1to1_stereo_x86_64(real*, real*, mpg123_handle*);
55
int synth_1to1_stereo_x86_64(real*, real*, mpg123_handle*);
59
int synth_1to1_arm        (real*, int, mpg123_handle*, int);
56
int synth_1to1_arm        (real*, int, mpg123_handle*, int);
-
 
57
int synth_1to1_neon       (real*, int, mpg123_handle*, int);
-
 
58
int synth_1to1_stereo_neon(real*, real*, mpg123_handle*);
60
/* This is different, special usage in layer3.c only.
59
/* This is different, special usage in layer3.c only.
61
   Hence, the name... and now forget about it.
60
   Hence, the name... and now forget about it.
62
   Never use it outside that special portion of code inside layer3.c! */
61
   Never use it outside that special portion of code inside layer3.c! */
63
int absynth_1to1_i486(real*, int, mpg123_handle*, int);
62
int absynth_1to1_i486(real*, int, mpg123_handle*, int);
64
/* These mono/stereo converters use one of the above for the grunt work. */
63
/* These mono/stereo converters use one of the above for the grunt work. */
65
int synth_1to1_mono       (real*, mpg123_handle*);
64
int synth_1to1_mono       (real*, mpg123_handle*);
66
int synth_1to1_mono2stereo(real*, mpg123_handle*);
65
int synth_1to1_m2s(real*, mpg123_handle*);
Line 67... Line 66...
67
 
66
 
68
/* Sample rate decimation comes in less flavours. */
67
/* Sample rate decimation comes in less flavours. */
69
#ifndef NO_DOWNSAMPLE
68
#ifndef NO_DOWNSAMPLE
70
int synth_2to1            (real*, int, mpg123_handle*, int);
69
int synth_2to1            (real*, int, mpg123_handle*, int);
71
int synth_2to1_dither     (real*, int, mpg123_handle*, int);
70
int synth_2to1_dither     (real*, int, mpg123_handle*, int);
72
int synth_2to1_i386       (real*, int, mpg123_handle*, int);
71
int synth_2to1_i386       (real*, int, mpg123_handle*, int);
73
int synth_2to1_mono       (real*, mpg123_handle*);
72
int synth_2to1_mono       (real*, mpg123_handle*);
74
int synth_2to1_mono2stereo(real*, mpg123_handle*);
73
int synth_2to1_m2s(real*, mpg123_handle*);
75
int synth_4to1            (real *,int, mpg123_handle*, int);
74
int synth_4to1            (real *,int, mpg123_handle*, int);
76
int synth_4to1_dither     (real *,int, mpg123_handle*, int);
75
int synth_4to1_dither     (real *,int, mpg123_handle*, int);
77
int synth_4to1_i386       (real*, int, mpg123_handle*, int);
76
int synth_4to1_i386       (real*, int, mpg123_handle*, int);
78
int synth_4to1_mono       (real*, mpg123_handle*);
77
int synth_4to1_mono       (real*, mpg123_handle*);
79
int synth_4to1_mono2stereo(real*, mpg123_handle*);
78
int synth_4to1_m2s(real*, mpg123_handle*);
80
#endif
79
#endif
81
#ifndef NO_NTOM
80
#ifndef NO_NTOM
82
/* NtoM is really just one implementation. */
81
/* NtoM is really just one implementation. */
83
int synth_ntom (real *,int, mpg123_handle*, int);
82
int synth_ntom (real *,int, mpg123_handle*, int);
84
int synth_ntom_mono (real *, mpg123_handle *);
83
int synth_ntom_mono (real *, mpg123_handle *);
85
int synth_ntom_mono2stereo (real *, mpg123_handle *);
84
int synth_ntom_m2s (real *, mpg123_handle *);
86
#endif
85
#endif
Line 87... Line 86...
87
#endif
86
#endif
88
 
87
 
Line 93... Line 92...
93
int synth_1to1_8bit_i386       (real*, int, mpg123_handle*, int);
92
int synth_1to1_8bit_i386       (real*, int, mpg123_handle*, int);
94
#ifndef NO_16BIT
93
#ifndef NO_16BIT
95
int synth_1to1_8bit_wrap       (real*, int, mpg123_handle*, int);
94
int synth_1to1_8bit_wrap       (real*, int, mpg123_handle*, int);
96
int synth_1to1_8bit_mono       (real*, mpg123_handle*);
95
int synth_1to1_8bit_mono       (real*, mpg123_handle*);
97
#endif
96
#endif
98
int synth_1to1_8bit_mono2stereo(real*, mpg123_handle*);
97
int synth_1to1_8bit_m2s(real*, mpg123_handle*);
99
#ifndef NO_16BIT
98
#ifndef NO_16BIT
100
int synth_1to1_8bit_wrap_mono       (real*, mpg123_handle*);
99
int synth_1to1_8bit_wrap_mono       (real*, mpg123_handle*);
101
int synth_1to1_8bit_wrap_mono2stereo(real*, mpg123_handle*);
100
int synth_1to1_8bit_wrap_m2s(real*, mpg123_handle*);
102
#endif
101
#endif
103
#ifndef NO_DOWNSAMPLE
102
#ifndef NO_DOWNSAMPLE
104
int synth_2to1_8bit            (real*, int, mpg123_handle*, int);
103
int synth_2to1_8bit            (real*, int, mpg123_handle*, int);
105
int synth_2to1_8bit_i386       (real*, int, mpg123_handle*, int);
104
int synth_2to1_8bit_i386       (real*, int, mpg123_handle*, int);
106
int synth_2to1_8bit_mono       (real*, mpg123_handle*);
105
int synth_2to1_8bit_mono       (real*, mpg123_handle*);
107
int synth_2to1_8bit_mono2stereo(real*, mpg123_handle*);
106
int synth_2to1_8bit_m2s(real*, mpg123_handle*);
108
int synth_4to1_8bit            (real*, int, mpg123_handle*, int);
107
int synth_4to1_8bit            (real*, int, mpg123_handle*, int);
109
int synth_4to1_8bit_i386       (real*, int, mpg123_handle*, int);
108
int synth_4to1_8bit_i386       (real*, int, mpg123_handle*, int);
110
int synth_4to1_8bit_mono       (real*, mpg123_handle*);
109
int synth_4to1_8bit_mono       (real*, mpg123_handle*);
111
int synth_4to1_8bit_mono2stereo(real*, mpg123_handle*);
110
int synth_4to1_8bit_m2s(real*, mpg123_handle*);
112
#endif
111
#endif
113
#ifndef NO_NTOM
112
#ifndef NO_NTOM
114
int synth_ntom_8bit            (real*, int, mpg123_handle*, int);
113
int synth_ntom_8bit            (real*, int, mpg123_handle*, int);
115
int synth_ntom_8bit_mono       (real*, mpg123_handle*);
114
int synth_ntom_8bit_mono       (real*, mpg123_handle*);
116
int synth_ntom_8bit_mono2stereo(real*, mpg123_handle*);
115
int synth_ntom_8bit_m2s(real*, mpg123_handle*);
117
void ntom_set_ntom(mpg123_handle *fr, off_t num);
-
 
118
#endif
116
#endif
119
#endif
117
#endif
Line 120... Line 118...
120
 
118
 
Line 128... Line 126...
128
int synth_1to1_real_stereo_sse (real*, real*, mpg123_handle*);
126
int synth_1to1_real_stereo_sse (real*, real*, mpg123_handle*);
129
int synth_1to1_real_x86_64     (real*, int, mpg123_handle*, int);
127
int synth_1to1_real_x86_64     (real*, int, mpg123_handle*, int);
130
int synth_1to1_real_stereo_x86_64(real*, real*, mpg123_handle*);
128
int synth_1to1_real_stereo_x86_64(real*, real*, mpg123_handle*);
131
int synth_1to1_real_altivec    (real*, int, mpg123_handle*, int);
129
int synth_1to1_real_altivec    (real*, int, mpg123_handle*, int);
132
int synth_1to1_real_stereo_altivec(real*, real*, mpg123_handle*);
130
int synth_1to1_real_stereo_altivec(real*, real*, mpg123_handle*);
-
 
131
int synth_1to1_real_neon       (real*, int, mpg123_handle*, int);
-
 
132
int synth_1to1_real_stereo_neon(real*, real*, mpg123_handle*);
133
int synth_1to1_real_mono       (real*, mpg123_handle*);
133
int synth_1to1_real_mono       (real*, mpg123_handle*);
134
int synth_1to1_real_mono2stereo(real*, mpg123_handle*);
134
int synth_1to1_real_m2s(real*, mpg123_handle*);
135
#ifndef NO_DOWNSAMPLE
135
#ifndef NO_DOWNSAMPLE
136
int synth_2to1_real            (real*, int, mpg123_handle*, int);
136
int synth_2to1_real            (real*, int, mpg123_handle*, int);
137
int synth_2to1_real_i386       (real*, int, mpg123_handle*, int);
137
int synth_2to1_real_i386       (real*, int, mpg123_handle*, int);
138
int synth_2to1_real_mono       (real*, mpg123_handle*);
138
int synth_2to1_real_mono       (real*, mpg123_handle*);
139
int synth_2to1_real_mono2stereo(real*, mpg123_handle*);
139
int synth_2to1_real_m2s(real*, mpg123_handle*);
140
int synth_4to1_real            (real*, int, mpg123_handle*, int);
140
int synth_4to1_real            (real*, int, mpg123_handle*, int);
141
int synth_4to1_real_i386       (real*, int, mpg123_handle*, int);
141
int synth_4to1_real_i386       (real*, int, mpg123_handle*, int);
142
int synth_4to1_real_mono       (real*, mpg123_handle*);
142
int synth_4to1_real_mono       (real*, mpg123_handle*);
143
int synth_4to1_real_mono2stereo(real*, mpg123_handle*);
143
int synth_4to1_real_m2s(real*, mpg123_handle*);
144
#endif
144
#endif
145
#ifndef NO_NTOM
145
#ifndef NO_NTOM
146
int synth_ntom_real            (real*, int, mpg123_handle*, int);
146
int synth_ntom_real            (real*, int, mpg123_handle*, int);
147
int synth_ntom_real_mono       (real*, mpg123_handle*);
147
int synth_ntom_real_mono       (real*, mpg123_handle*);
148
int synth_ntom_real_mono2stereo(real*, mpg123_handle*);
148
int synth_ntom_real_m2s(real*, mpg123_handle*);
149
#endif
149
#endif
150
#endif
150
#endif
Line 151... Line 151...
151
 
151
 
152
#ifndef NO_32BIT
152
#ifndef NO_32BIT
Line 157... Line 157...
157
int synth_1to1_s32_stereo_sse (real*, real*, mpg123_handle*);
157
int synth_1to1_s32_stereo_sse (real*, real*, mpg123_handle*);
158
int synth_1to1_s32_x86_64     (real*, int, mpg123_handle*, int);
158
int synth_1to1_s32_x86_64     (real*, int, mpg123_handle*, int);
159
int synth_1to1_s32_stereo_x86_64(real*, real*, mpg123_handle*);
159
int synth_1to1_s32_stereo_x86_64(real*, real*, mpg123_handle*);
160
int synth_1to1_s32_altivec    (real*, int, mpg123_handle*, int);
160
int synth_1to1_s32_altivec    (real*, int, mpg123_handle*, int);
161
int synth_1to1_s32_stereo_altivec(real*, real*, mpg123_handle*);
161
int synth_1to1_s32_stereo_altivec(real*, real*, mpg123_handle*);
-
 
162
int synth_1to1_s32_neon       (real*, int, mpg123_handle*, int);
-
 
163
int synth_1to1_s32_stereo_neon(real*, real*, mpg123_handle*);
162
int synth_1to1_s32_mono       (real*, mpg123_handle*);
164
int synth_1to1_s32_mono       (real*, mpg123_handle*);
163
int synth_1to1_s32_mono2stereo(real*, mpg123_handle*);
165
int synth_1to1_s32_m2s(real*, mpg123_handle*);
164
#ifndef NO_DOWNSAMPLE
166
#ifndef NO_DOWNSAMPLE
165
int synth_2to1_s32            (real*, int, mpg123_handle*, int);
167
int synth_2to1_s32            (real*, int, mpg123_handle*, int);
166
int synth_2to1_s32_i386       (real*, int, mpg123_handle*, int);
168
int synth_2to1_s32_i386       (real*, int, mpg123_handle*, int);
167
int synth_2to1_s32_mono       (real*, mpg123_handle*);
169
int synth_2to1_s32_mono       (real*, mpg123_handle*);
168
int synth_2to1_s32_mono2stereo(real*, mpg123_handle*);
170
int synth_2to1_s32_m2s(real*, mpg123_handle*);
169
int synth_4to1_s32            (real*, int, mpg123_handle*, int);
171
int synth_4to1_s32            (real*, int, mpg123_handle*, int);
170
int synth_4to1_s32_i386       (real*, int, mpg123_handle*, int);
172
int synth_4to1_s32_i386       (real*, int, mpg123_handle*, int);
171
int synth_4to1_s32_mono       (real*, mpg123_handle*);
173
int synth_4to1_s32_mono       (real*, mpg123_handle*);
172
int synth_4to1_s32_mono2stereo(real*, mpg123_handle*);
174
int synth_4to1_s32_m2s(real*, mpg123_handle*);
173
#endif
175
#endif
174
#ifndef NO_NTOM
176
#ifndef NO_NTOM
175
int synth_ntom_s32            (real*, int, mpg123_handle*, int);
177
int synth_ntom_s32            (real*, int, mpg123_handle*, int);
176
int synth_ntom_s32_mono       (real*, mpg123_handle*);
178
int synth_ntom_s32_mono       (real*, mpg123_handle*);
177
int synth_ntom_s32_mono2stereo(real*, mpg123_handle*);
179
int synth_ntom_s32_m2s(real*, mpg123_handle*);
178
#endif
180
#endif
179
#endif
181
#endif
Line 180... Line 182...
180
 
182
 
Line 197... Line 199...
197
/* Tools for NtoM resampling synth, defined in ntom.c . */
199
/* Tools for NtoM resampling synth, defined in ntom.c . */
198
int synth_ntom_set_step(mpg123_handle *fr); /* prepare ntom decoding */
200
int synth_ntom_set_step(mpg123_handle *fr); /* prepare ntom decoding */
199
unsigned long ntom_val(mpg123_handle *fr, off_t frame); /* compute ntom_val for frame offset */
201
unsigned long ntom_val(mpg123_handle *fr, off_t frame); /* compute ntom_val for frame offset */
200
/* Frame and sample offsets. */
202
/* Frame and sample offsets. */
201
#ifndef NO_NTOM
203
#ifndef NO_NTOM
-
 
204
/*
-
 
205
	Outsamples of _this_ frame.
-
 
206
	To be exact: The samples to be expected from the next frame decode (using the current ntom_val). When you already decoded _this_ frame, this is the number of samples to be expected from the next one.
-
 
207
*/
-
 
208
off_t ntom_frame_outsamples(mpg123_handle *fr);
-
 
209
/* Total out/insample offset. */
202
off_t ntom_frmouts(mpg123_handle *fr, off_t frame);
210
off_t ntom_frmouts(mpg123_handle *fr, off_t frame);
203
off_t ntom_ins2outs(mpg123_handle *fr, off_t ins);
211
off_t ntom_ins2outs(mpg123_handle *fr, off_t ins);
204
off_t ntom_frameoff(mpg123_handle *fr, off_t soff);
212
off_t ntom_frameoff(mpg123_handle *fr, off_t soff);
205
#endif
213
#endif