summaryrefslogtreecommitdiff
path: root/src/libmad/synth.h
diff options
context:
space:
mode:
authorMiguel Freitas <miguelfreitas@users.sourceforge.net>2002-04-30 18:46:58 +0000
committerMiguel Freitas <miguelfreitas@users.sourceforge.net>2002-04-30 18:46:58 +0000
commit2031afda7670cbca8ef59221dc95696382e73aa4 (patch)
tree9cc702a0cdf3c7616d460591e359acdace76dae7 /src/libmad/synth.h
parent7cb6e3194a3dfa77ab0f96ce9c3f160204b72d4f (diff)
downloadxine-lib-2031afda7670cbca8ef59221dc95696382e73aa4.tar.gz
xine-lib-2031afda7670cbca8ef59221dc95696382e73aa4.tar.bz2
libmad updated
CVS patchset: 1817 CVS date: 2002/04/30 18:46:58
Diffstat (limited to 'src/libmad/synth.h')
-rw-r--r--src/libmad/synth.h35
1 files changed, 27 insertions, 8 deletions
diff --git a/src/libmad/synth.h b/src/libmad/synth.h
index 87471c423..bf27b882f 100644
--- a/src/libmad/synth.h
+++ b/src/libmad/synth.h
@@ -1,5 +1,5 @@
/*
- * mad - MPEG audio decoder
+ * libmad - MPEG audio decoder library
* Copyright (C) 2000-2001 Robert Leslie
*
* This program is free software; you can redistribute it and/or modify
@@ -16,7 +16,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
- * $Id: synth.h,v 1.1 2001/08/12 02:57:55 guenter Exp $
+ * $Id: synth.h,v 1.2 2002/04/30 18:46:58 miguelfreitas Exp $
*/
# ifndef LIBMAD_SYNTH_H
@@ -25,18 +25,37 @@
# include "fixed.h"
# include "frame.h"
+struct mad_pcm {
+ unsigned int samplerate; /* sampling frequency (Hz) */
+ unsigned short channels; /* number of channels */
+ unsigned short length; /* number of samples per channel */
+ mad_fixed_t samples[2][1152]; /* PCM output samples [ch][sample] */
+};
+
struct mad_synth {
mad_fixed_t filter[2][2][2][16][8]; /* polyphase filterbank outputs */
/* [ch][eo][peo][s][v] */
unsigned int phase; /* current processing phase */
- struct mad_pcm {
- unsigned int samplerate; /* sampling frequency (Hz) */
- unsigned short channels; /* number of channels */
- unsigned short length; /* number of samples per channel */
- mad_fixed_t samples[2][1152]; /* PCM output samples */
- } pcm;
+ struct mad_pcm pcm; /* PCM output */
+};
+
+/* single channel PCM selector */
+enum {
+ MAD_PCM_CHANNEL_SINGLE = 0
+};
+
+/* dual channel PCM selector */
+enum {
+ MAD_PCM_CHANNEL_DUAL_1 = 0,
+ MAD_PCM_CHANNEL_DUAL_2 = 1
+};
+
+/* stereo PCM selector */
+enum {
+ MAD_PCM_CHANNEL_STEREO_LEFT = 0,
+ MAD_PCM_CHANNEL_STEREO_RIGHT = 1
};
void mad_synth_init(struct mad_synth *);