/*****************************************************************************
* audio_output.h : audio output thread interface
- * (c)1999 VideoLAN
*****************************************************************************
+ * Copyright (C) 1999, 2000 VideoLAN
+ *
+ * Authors:
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public
+ * License along with this program; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ *****************************************************************************/
+
+/*****************************************************************************
* Required headers:
- * - <sys/soundcard.h> ( audio_buf_info )
* - "common.h" ( boolean_t )
* - "mtime.h" ( mtime_t )
- * - "vlc_thread.h" ( vlc_thread_t )
+ * - "threads.h" ( vlc_thread_t )
*****************************************************************************/
/* TODO :
/* Default audio output format (AOUT_FMT_S16_NE = Native Endianess) */
#define AOUT_DEFAULT_FORMAT AOUT_FMT_S16_NE
+/* #define AOUT_DEFAULT_FORMAT AOUT_FMT_S8 */
+/* #define AOUT_DEFAULT_FORMAT AOUT_FMT_U8 */
+/* #define AOUT_DEFAULT_FORMAT AOUT_FMT_S16_BE */
+/* #define AOUT_DEFAULT_FORMAT AOUT_FMT_S16_LE */
+/* #define AOUT_DEFAULT_FORMAT AOUT_FMT_U16_BE */
+/* #define AOUT_DEFAULT_FORMAT AOUT_FMT_U16_LE */
+
+
/* Default stereo mode (0 stands for mono, 1 for stereo) */
#define AOUT_DEFAULT_STEREO 1
/* Audio output rate, in Hz */
-#define AOUT_MIN_RATE 22050 /* ?? */
+#define AOUT_MIN_RATE 22050 /* XXX?? */
#define AOUT_DEFAULT_RATE 44100
#define AOUT_MAX_RATE 48000
vlc_mutex_t fifos_lock;
aout_fifo_t fifo[ AOUT_MAX_FIFOS ];
- /* method-dependant functions */
+ /* Plugins */
+ void * p_aout_plugin; /* video output plugin */
aout_sys_open_t * p_sys_open;
aout_sys_reset_t * p_sys_reset;
aout_sys_setformat_t * p_sys_setformat;
} aout_thread_t;
-/* Output methods */
-#define AOUT_DUMMY_METHOD 0x0000 /* dummy video output */
-#define AOUT_DSP_METHOD 0x0001 /* linux /dev/dsp */
-
-/* Get the fallback method */
-#ifdef AUDIO_DSP
-#define AOUT_DEFAULT_METHOD "dsp"
-#else
-#define AOUT_DEFAULT_METHOD "dummy"
-#endif
-
/* Those are from <linux/soundcard.h> but are needed because of formats
* on other platforms */
#define AOUT_FMT_U8 0x00000008