forked from KolibriOS/kolibrios
libmpg123 1.9.0
git-svn-id: svn://kolibrios.org@1905 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
52
programs/develop/libraries/libmpg123/synths.h
Normal file
52
programs/develop/libraries/libmpg123/synths.h
Normal file
@@ -0,0 +1,52 @@
|
||||
#ifndef MPG123_SYNTH_H
|
||||
#define MPG123_SYNTH_H
|
||||
|
||||
/* This is included inside frame.h, which is included in mpg123lib_intern.h,
|
||||
at the appropriate place.
|
||||
Explicit header inclusions here would cause circular dependencies. */
|
||||
|
||||
/* The handle needs these types for selecting the decoding routine at runtime.
|
||||
Not just for optimization, mainly for XtoY, mono/stereo. */
|
||||
typedef int (*func_synth)(real *,int, mpg123_handle *,int );
|
||||
typedef int (*func_synth_mono)(real *, mpg123_handle *);
|
||||
typedef int (*func_synth_stereo)(real *, real *, mpg123_handle *);
|
||||
enum synth_channel { c_plain=0, c_stereo, c_mono2stereo, c_mono, c_limit };
|
||||
enum synth_resample
|
||||
{
|
||||
r_none=-1
|
||||
,r_1to1=0
|
||||
# ifndef NO_DOWNSAMPLE
|
||||
,r_2to1
|
||||
,r_4to1
|
||||
# endif
|
||||
# ifndef NO_NTOM
|
||||
,r_ntom
|
||||
# endif
|
||||
,r_limit
|
||||
};
|
||||
enum synth_format
|
||||
{
|
||||
f_none=-1
|
||||
# ifndef NO_16BIT
|
||||
,f_16
|
||||
# endif
|
||||
# ifndef NO_8BIT
|
||||
,f_8
|
||||
# endif
|
||||
# ifndef NO_REAL
|
||||
,f_real
|
||||
# endif
|
||||
# ifndef NO_32BIT
|
||||
,f_32
|
||||
# endif
|
||||
,f_limit
|
||||
};
|
||||
struct synth_s
|
||||
{
|
||||
func_synth plain[r_limit][f_limit];
|
||||
func_synth_stereo stereo[r_limit][f_limit];
|
||||
func_synth_mono mono2stereo[r_limit][f_limit];
|
||||
func_synth_mono mono[r_limit][f_limit];
|
||||
};
|
||||
|
||||
#endif
|
Reference in New Issue
Block a user