VLC  3.0.0-git
Data Fields
audio_output Struct Reference

Audio output object. More...

Collaboration diagram for audio_output:
Collaboration graph
[legend]

Data Fields

struct vlc_common_members obj
 
struct aout_sys_tsys
 Private data for callbacks. More...
 
int(* start )(audio_output_t *, audio_sample_format_t *fmt)
 Starts a new stream (mandatory, cannot be NULL). More...
 
void(* stop )(audio_output_t *)
 Stops the existing stream (optional, may be NULL). More...
 
int(* time_get )(audio_output_t *, mtime_t *delay)
 Estimates playback buffer latency (optional, may be NULL). More...
 
void(* play )(audio_output_t *, block_t *)
 Queues a block of samples for playback (mandatory, cannot be NULL). More...
 
void(* pause )(audio_output_t *, bool pause, mtime_t date)
 Pauses or resumes playback (optional, may be NULL). More...
 
void(* flush )(audio_output_t *, bool wait)
 Flushes or drains the playback buffers (mandatory, cannot be NULL). More...
 
int(* volume_set )(audio_output_t *, float volume)
 Changes playback volume (optional, may be NULL). More...
 
int(* mute_set )(audio_output_t *, bool mute)
 Changes muting (optinal, may be NULL). More...
 
int(* device_select )(audio_output_t *, const char *id)
 Selects an audio output device (optional, may be NULL). More...
 
struct {
   bool   headphones
 Default to false, set it to true if the current sink is using headphones. More...
 
current_sink_info
 Current sink informations set by the module from the start() function. More...
 
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 *)
 
   void(*   hotplug_report )(audio_output_t *, const char
      *, const char *)
 
   int(*   gain_request )(audio_output_t *, float)
 
   void(*   restart_request )(audio_output_t *, unsigned)
 
event
 

Detailed Description

Audio output object.

Field Documentation

◆ current_sink_info

struct { ... } audio_output::current_sink_info

Current sink informations set by the module from the start() function.

Referenced by aout_OutputNew(), and aout_PrepareStereoMode().

◆ device_report

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

Referenced by aout_DeviceReport(), and aout_New().

◆ device_select

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

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

Parameters
idnul-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_Destroy(), aout_New(), and aout_OutputDeviceSet().

◆ event

struct { ... } audio_output::event

◆ flush

void(* audio_output::flush) (audio_output_t *, bool wait)

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

Parameters
waittrue 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().

◆ gain_request

int(* audio_output::gain_request) (audio_output_t *, float)

Referenced by aout_GainRequest(), and aout_New().

◆ headphones

bool audio_output::headphones

Default to false, set it to true if the current sink is using headphones.

Referenced by aout_OutputNew(), and aout_PrepareStereoMode().

◆ hotplug_report

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

Referenced by aout_HotplugReport(), and aout_New().

◆ mute_report

void(* audio_output::mute_report) (audio_output_t *, bool)

Referenced by aout_MuteReport(), and aout_New().

◆ mute_set

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

Changes muting (optinal, may be NULL).

Parameters
mutetrue 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().

◆ obj

struct vlc_common_members audio_output::obj

Referenced by aout_Destroy(), and aout_PolicyNotify().

◆ pause

void(* audio_output::pause) (audio_output_t *, bool pause, mtime_t date)

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

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

Referenced by aout_OutputPause().

◆ play

void(* audio_output::play) (audio_output_t *, block_t *)

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

Note
A stream must have been started when called.

Referenced by aout_OutputPlay().

◆ policy_report

void(* audio_output::policy_report) (audio_output_t *, bool)

Referenced by aout_New(), and aout_PolicyReport().

◆ restart_request

void(* audio_output::restart_request) (audio_output_t *, unsigned)

Referenced by aout_New(), and aout_RestartRequest().

◆ start

int(* audio_output::start) (audio_output_t *, audio_sample_format_t *fmt)

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

Parameters
fmtinput 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().

◆ stop

void(* audio_output::stop) (audio_output_t *)

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

Note
A stream must have been started when called.

Referenced by aout_New(), and aout_OutputDelete().

◆ sys

struct aout_sys_t* audio_output::sys

Private data for callbacks.

◆ time_get

int(* audio_output::time_get) (audio_output_t *, mtime_t *delay)

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

Parameters
delaypointer 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().

◆ volume_report

void(* audio_output::volume_report) (audio_output_t *, float)

Referenced by aout_New(), and aout_VolumeReport().

◆ volume_set

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

Changes playback volume (optional, may be NULL).

Parameters
volumerequested 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: