20#ifndef HAVE_AUDIO_OUT_H
21#define HAVE_AUDIO_OUT_H
34#define AUDIO_OUT_IFACE_VERSION 9
89 int16_t* audio_data, uint32_t num_samples);
188 uint32_t
bits, uint32_t rate,
int mode);
227 uint32_t *
bits, uint32_t *rate,
int *
mode);
264#define default_audio_driver_class_dispose (void (*) (audio_driver_class_t *this_gen))free
277#define AO_CAP_NOCAP 0x00000000
278#define AO_CAP_MODE_A52 0x00000001
279#define AO_CAP_MODE_AC5 0x00000002
281#define AO_CAP_MODE_MONO 0x00000004
283#define AO_CAP_MODE_STEREO 0x00000008
285#define AO_CAP_MODE_4CHANNEL 0x00000010
293#define AO_CAP_MODE_4_1CHANNEL 0x00000020
295#define AO_CAP_MODE_5CHANNEL 0x00000040
297#define AO_CAP_MODE_5_1CHANNEL 0x00000080
308#define AO_CAP_MIXER_VOL 0x00000100
309#define AO_CAP_PCM_VOL 0x00000200
310#define AO_CAP_MUTE_VOL 0x00000400
311#define AO_CAP_8BITS 0x00000800
312#define AO_CAP_16BITS 0x00001000
313#define AO_CAP_24BITS 0x00002000
314#define AO_CAP_FLOAT32 0x00004000
315#define AO_CAP_NO_UNPAUSE 0x00008000
319#define AO_PROP_MIXER_VOL 0
320#define AO_PROP_PCM_VOL 1
321#define AO_PROP_MUTE_VOL 2
322#define AO_PROP_COMPRESSOR 3
323#define AO_PROP_DISCARD_BUFFERS 4
324#define AO_PROP_BUFS_IN_FIFO 5
326#define AO_PROP_EQ_30HZ 7
327#define AO_PROP_EQ_60HZ 8
328#define AO_PROP_EQ_125HZ 9
329#define AO_PROP_EQ_250HZ 10
330#define AO_PROP_EQ_500HZ 11
331#define AO_PROP_EQ_1000HZ 12
332#define AO_PROP_EQ_2000HZ 13
333#define AO_PROP_EQ_4000HZ 14
334#define AO_PROP_EQ_8000HZ 15
335#define AO_PROP_EQ_16000HZ 16
336#define AO_PROP_CLOSE_DEVICE 17
337#define AO_PROP_AMP_MUTE 18
338#define AO_PROP_NUM_STREAMS 19
339#define AO_PROP_CLOCK_SPEED 20
340#define AO_PROP_BUFS_TOTAL 21
341#define AO_PROP_BUFS_FREE 22
342#define AO_PROP_DRIVER_DELAY 23
343#define AO_PROP_PTS_IN_FIFO 24
344#define AO_NUM_PROPERTIES 25
347#define AO_CTRL_PLAY_PAUSE 0
348#define AO_CTRL_PLAY_RESUME 1
349#define AO_CTRL_FLUSH_BUFFERS 2
352#define AO_MAX_GAP 15000
int _x_ao_channels2mode(int channels)
Definition: audio_out.c:1229
xine_audio_port_t * _x_ao_new_port(xine_t *xine, ao_driver_t *driver, int grab_only)
Initialise the audio_out sync routines.
Definition: audio_out.c:2961
int _x_ao_mode2channels(int mode)
Definition: audio_out.c:1213
#define XINE_MALLOC
Definition: attributes.h:141
#define XINE_PROTECTED
Definition: attributes.h:75
Definition: audio_out.h:43
int(* get_property)(ao_driver_t *, int property)
Definition: audio_out.h:111
struct plugin_node_s *node XINE_PRIVATE_FIELD
Pointer to the loaded plugin node.
Definition: audio_out.h:129
int(* set_property)(ao_driver_t *, int property, int value)
Definition: audio_out.h:113
int(* control)(ao_driver_t *, int cmd,...)
Definition: audio_out.h:121
int(* write)(ao_driver_t *, int16_t *audio_data, uint32_t num_samples)
Definition: audio_out.h:88
int(* bytes_per_frame)(ao_driver_t *self_gen)
Definition: audio_out.h:69
int(* delay)(ao_driver_t *self_gen)
Definition: audio_out.h:74
int(* open)(ao_driver_t *, uint32_t bits, uint32_t rate, int mode)
Definition: audio_out.h:60
int(* num_channels)(ao_driver_t *self_gen)
Definition: audio_out.h:64
void(* close)(ao_driver_t *)
Definition: audio_out.h:95
void(* exit)(ao_driver_t *)
Definition: audio_out.h:101
uint32_t(* get_capabilities)(ao_driver_t *)
Definition: audio_out.h:52
int(* get_gap_tolerance)(ao_driver_t *self_gen)
Definition: audio_out.h:79
Definition: audio_out.h:144
uint32_t frame_header_count
Definition: audio_out.h:153
audio_buffer_t * next
Definition: audio_out.h:146
int num_frames
Definition: audio_out.h:150
int64_t vpts
Definition: audio_out.h:152
extra_info_t * extra_info
Definition: audio_out.h:157
int mem_size
Definition: audio_out.h:149
xine_stream_t * stream
Definition: audio_out.h:159
ao_format_t format
Definition: audio_out.h:161
int16_t * mem
Definition: audio_out.h:148
uint32_t first_access_unit
Definition: audio_out.h:154
Definition: audio_out.h:233
void(* dispose)(audio_driver_class_t *)
Definition: audio_out.h:261
const char * description
human readable (verbose = 1 line) description for this plugin class
Definition: audio_out.h:250
const char * identifier
short human readable identifier for this plugin class
Definition: audio_out.h:243
const char * text_domain
Optional non-standard catalog to use with dgettext() for description.
Definition: audio_out.h:255
Definition: audio_out.c:188
Definition: plugin_catalog.h:44
Definition: audio_out.h:172
void(* close)(xine_audio_port_t *self, xine_stream_t *stream)
Definition: audio_out.h:205
int(* open)(xine_audio_port_t *, xine_stream_t *stream, uint32_t bits, uint32_t rate, int mode)
Definition: audio_out.h:187
uint32_t(* get_capabilities)(xine_audio_port_t *)
Definition: audio_out.h:173
void(* put_buffer)(xine_audio_port_t *, audio_buffer_t *buf, xine_stream_t *stream)
Definition: audio_out.h:200
int(* control)(xine_audio_port_t *, int cmd,...)
Definition: audio_out.h:215
int(* get_property)(xine_audio_port_t *, int property)
Definition: audio_out.h:179
void(* flush)(xine_audio_port_t *)
Definition: audio_out.h:220
int(* set_property)(xine_audio_port_t *, int property, int value)
Definition: audio_out.h:180
void(* exit)(xine_audio_port_t *)
Definition: audio_out.h:208
int(* status)(xine_audio_port_t *, xine_stream_t *stream, uint32_t *bits, uint32_t *rate, int *mode)
Definition: audio_out.h:226
Definition: xine_internal.h:80
Definition: xine_internal.h:123
enable disable number of frames of telecine pattern sync required before mode change make frames evenly spaced for film mode(24 fps)" ) PARAM_ITEM( POST_PARAM_TYPE_BOOL