Data Fields

audio_output Struct Reference

Audio output object. More...

Collaboration diagram for audio_output:
Collaboration graph
[legend]

Data Fields

struct aout_sys_tsys
 Private data for callbacks.
int(* start )(audio_output_t *, audio_sample_format_t *fmt)
 Starts a new stream (mandatory, cannot be NULL).
void(* stop )(audio_output_t *)
 Stops the existing stream (optional, may be NULL).
int(* time_get )(audio_output_t *, mtime_t *delay)
 Estimates playback buffer latency (optional, may be NULL).
void(* play )(audio_output_t *, block_t *)
 Queues a block of samples for playback (mandatory, cannot be NULL).
void(* pause )(audio_output_t *, bool pause, mtime_t date)
 Pauses or resumes playback (optional, may be NULL).
void(* flush )(audio_output_t *, bool wait)
 Flushes or drains the playback buffers (mandatoryl, cannot be NULL).
int(* volume_set )(audio_output_t *, float volume)
 Changes playback volume (optional, may be NULL).
int(* mute_set )(audio_output_t *, bool mute)
 Changes muting (optinal, may be NULL).
int(* device_enum )(audio_output_t *, char ***ids, char ***names)
 Enumerates available audio output devices (optional, may be NULL).
int(* device_select )(audio_output_t *, const char *id)
 Selects an audio output device (optional, may be NULL).
struct {
   void(*   volume_report )(audio_output_t *, float)
   void(*   mute_report )(audio_output_t *, bool)
   void(*   policy_report )(audio_output_t *, bool)
   void(*   device_report )(audio_output_t *, const char *)
   int(*   gain_request )(audio_output_t *, float)
   void(*   restart_request )(audio_output_t *, unsigned)
event
VLC_COMMON_MEMBERS \ * these members are common for all vlc objects \

const char * psz_object_type
char * psz_header
int i_flags
bool b_force
 set by the outside (eg.
libvlc_int_tp_libvlc
 (root of all evil) - 1
vlc_object_tp_parent
 our parent

Detailed Description

Audio output object.


Field Documentation

set by the outside (eg.

module_need())

int(* audio_output::device_enum)(audio_output_t *, char ***ids, char ***names)

Enumerates available audio output devices (optional, may be NULL).

Parameters:
ids pointer to a heap-allocated table of heap-allocated nul-terminated device unique identifiers [OUT]
names pointer to a heap-allocated table of heap-allocated nul-terminated device human-readable names [OUT]
Returns:
The number of entries, or -1 on error.
Warning:
A stream may or may not have been started when called.

Referenced by aout_New(), and aout_OutputDevicesEnum().

void(* audio_output::device_report)(audio_output_t *, const char *)

Referenced by aout_DeviceReport(), and aout_New().

int(* audio_output::device_select)(audio_output_t *, const char *id)

Selects an audio output device (optional, may be NULL).

Parameters:
id nul-terminated device unique identifier.
Returns:
0 on success, non-zero on failure.
Warning:
A stream may or may not have been started when called.

Referenced by aout_New(), and aout_OutputDeviceSet().

struct { ... } audio_output::event
void(* audio_output::flush)(audio_output_t *, bool wait)

Flushes or drains the playback buffers (mandatoryl, cannot be NULL).

Parameters:
wait true to wait for playback of pending buffers (drain), false to discard pending buffers (flush)
Note:
A stream must have been started when called.

Referenced by aout_OutputFlush().

Referenced by aout_GainRequest(), and aout_New().

Referenced by aout_MuteReport(), and aout_New().

int(* audio_output::mute_set)(audio_output_t *, bool mute)

Changes muting (optinal, may be NULL).

Parameters:
mute true to mute, false to unmute
Warning:
A stream may or may not have been started when called.

Referenced by aout_Destroy(), aout_New(), and aout_OutputMuteSet().

(root of all evil) - 1

our parent

Referenced by aout_Destroy(), and aout_PolicyNotify().

Pauses or resumes playback (optional, may be NULL).

Parameters:
pause pause if true, resume from pause if false
date timestamp when the pause or resume was requested
Note:
A stream must have been started when called.

Referenced by aout_OutputPause().

Queues a block of samples for playback (mandatory, cannot be NULL).

Note:
A stream must have been started when called.

Referenced by aout_OutputPlay().

Referenced by aout_New(), and aout_PolicyReport().

Referenced by aout_New(), and aout_RestartRequest().

Starts a new stream (mandatory, cannot be NULL).

Parameters:
fmt input stream sample format upon entry, output stream sample format upon return [IN/OUT]
Returns:
VLC_SUCCESS on success, non-zero on failure
Note:
No other stream may be already started when called.

Referenced by aout_New(), and aout_OutputNew().

Stops the existing stream (optional, may be NULL).

Note:
A stream must have been started when called.

Referenced by aout_New(), and aout_OutputDelete().

Private data for callbacks.

Estimates playback buffer latency (optional, may be NULL).

Parameters:
delay pointer to the delay until the next sample to be written to the playback buffer is rendered [OUT]
Returns:
0 on success, non-zero on failure or lack of data
Note:
A stream must have been started when called.

Referenced by aout_OutputTimeGet().

Referenced by aout_New().

int(* audio_output::volume_set)(audio_output_t *, float volume)

Changes playback volume (optional, may be NULL).

Parameters:
volume requested volume (0. = mute, 1. = nominal)
Note:
The volume is always a positive number.
Warning:
A stream may or may not have been started when called.

Referenced by aout_Destroy(), aout_New(), and aout_OutputVolumeSet().


The documentation for this struct was generated from the following file:
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines