summaryrefslogtreecommitdiffstats
path: root/libao2/audio_out.h
diff options
context:
space:
mode:
Diffstat (limited to 'libao2/audio_out.h')
-rw-r--r--libao2/audio_out.h26
1 files changed, 17 insertions, 9 deletions
diff --git a/libao2/audio_out.h b/libao2/audio_out.h
index 61d2966c56..ff55b94452 100644
--- a/libao2/audio_out.h
+++ b/libao2/audio_out.h
@@ -10,6 +10,7 @@ typedef struct ao_info_s
const char *comment;
} ao_info_t;
+/* interface towards mplayer and */
typedef struct ao_functions_s
{
ao_info_t *info;
@@ -19,25 +20,32 @@ typedef struct ao_functions_s
void (*reset)();
int (*get_space)();
int (*play)(void* data,int len,int flags);
- int (*get_delay)();
+ float (*get_delay)();
void (*pause)();
void (*resume)();
} ao_functions_t;
+/* global data used by mplayer and plugins */
+typedef struct ao_data_s
+{
+ int samplerate;
+ int channels;
+ int format;
+ int bps;
+ int outburst;
+ int buffersize;
+ int pts;
+} ao_data_t;
+
+extern char *ao_subdevice;
+extern ao_data_t ao_data;
+
// prototypes
extern char *audio_out_format_name(int format);
// NULL terminated array of all drivers
extern ao_functions_t* audio_out_drivers[];
-extern int ao_samplerate;
-extern int ao_channels;
-extern int ao_format;
-extern int ao_bps;
-extern int ao_outburst;
-extern int ao_buffersize;
-extern int ao_pts;
-extern char *ao_subdevice;
#define CONTROL_OK 1
#define CONTROL_TRUE 1