Go to the documentation of this file.
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
325 #define AO_PROP_AMP 6
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
Definition: xine_internal.h:80
int num_frames
Definition: audio_out.h:150
void(* dispose)(audio_driver_class_t *)
Definition: audio_out.h:261
int(* write)(ao_driver_t *, int16_t *audio_data, uint32_t num_samples)
Definition: audio_out.h:88
Definition: xine_internal.h:123
#define XINE_MALLOC
Definition: attributes.h:139
uint32_t(* get_capabilities)(ao_driver_t *)
Definition: audio_out.h:52
int(* status)(xine_audio_port_t *, xine_stream_t *stream, uint32_t *bits, uint32_t *rate, int *mode)
Definition: audio_out.h:226
void(* close)(xine_audio_port_t *self, xine_stream_t *stream)
Definition: audio_out.h:205
int(* set_property)(ao_driver_t *, int property, int value)
Definition: audio_out.h:113
int mem_size
Definition: audio_out.h:149
Definition: audio_out.h:144
const char * description
human readable (verbose = 1 line) description for this plugin class
Definition: audio_out.h:250
int(* set_property)(xine_audio_port_t *, int property, int value)
Definition: audio_out.h:180
const char * text_domain
Optional non-standard catalog to use with dgettext() for description.
Definition: audio_out.h:255
int16_t * mem
Definition: audio_out.h:148
uint32_t first_access_unit
Definition: audio_out.h:154
struct plugin_node_s *node XINE_PRIVATE_FIELD
Pointer to the loaded plugin node.
Definition: audio_out.h:129
int(* delay)(ao_driver_t *self_gen)
Definition: audio_out.h:74
extra_info_t * extra_info
Definition: audio_out.h:157
int(* control)(ao_driver_t *, int cmd,...)
Definition: audio_out.h:121
void(* exit)(ao_driver_t *)
Definition: audio_out.h:101
int(* open)(ao_driver_t *, uint32_t bits, uint32_t rate, int mode)
Definition: audio_out.h:60
const char * identifier
short human readable identifier for this plugin class
Definition: audio_out.h:243
void(* exit)(xine_audio_port_t *)
Definition: audio_out.h:208
int(* control)(xine_audio_port_t *, int cmd,...)
Definition: audio_out.h:215
int(* open)(xine_audio_port_t *, xine_stream_t *stream, uint32_t bits, uint32_t rate, int mode)
Definition: audio_out.h:187
int(* get_property)(xine_audio_port_t *, int property)
Definition: audio_out.h:179
Definition: audio_out.c:188
int64_t vpts
Definition: audio_out.h:152
ao_format_t format
Definition: audio_out.h:161
int(* num_channels)(ao_driver_t *self_gen)
Definition: audio_out.h:64
int(* bytes_per_frame)(ao_driver_t *self_gen)
Definition: audio_out.h:69
Definition: audio_out.h:43
int(* get_property)(ao_driver_t *, int property)
Definition: audio_out.h:111
Definition: audio_out.h:172
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
void(* put_buffer)(xine_audio_port_t *, audio_buffer_t *buf, xine_stream_t *stream)
Definition: audio_out.h:200
int(* get_gap_tolerance)(ao_driver_t *self_gen)
Definition: audio_out.h:79
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:2764
#define XINE_PROTECTED
Definition: attributes.h:73
Definition: plugin_catalog.h:44
uint32_t(* get_capabilities)(xine_audio_port_t *)
Definition: audio_out.h:173
Definition: audio_out.h:233
int _x_ao_channels2mode(int channels)
Definition: audio_out.c:1098
uint32_t frame_header_count
Definition: audio_out.h:153
void(* flush)(xine_audio_port_t *)
Definition: audio_out.h:220
xine_stream_t * stream
Definition: audio_out.h:159
void(* close)(ao_driver_t *)
Definition: audio_out.h:95
audio_buffer_t * next
Definition: audio_out.h:146
int _x_ao_mode2channels(int mode)
Definition: audio_out.c:1082