MPD 0.17~git
|
#include <output_internal.h>
Data Fields | |
const char * | name |
The device's configured display name. | |
struct audio_output_plugin * | plugin |
The plugin which implements this output device. | |
struct mixer * | mixer |
The mixer object associated with this audio output device. | |
bool | always_on |
Shall this output always play something (i.e. | |
bool | enabled |
Has the user enabled this device? | |
bool | really_enabled |
Is this device actually enabled, i.e. | |
bool | open |
Is the device (already) open and functional? | |
bool | pause |
Is the device paused? i.e. | |
bool | allow_play |
When this flag is set, the output thread will not do any playback. | |
GTimer * | fail_timer |
If not NULL, the device has failed, and this timer is used to estimate how long it should stay disabled (unless explicitly reopened with "play"). | |
struct audio_format | config_audio_format |
The configured audio format. | |
struct audio_format | in_audio_format |
The audio_format in which audio data is received from the player thread (which in turn receives it from the decoder). | |
struct audio_format | out_audio_format |
The audio_format which is really sent to the device. | |
struct pcm_buffer | cross_fade_buffer |
The buffer used to allocate the cross-fading result. | |
struct filter * | filter |
The filter object of this audio output. | |
struct filter * | replay_gain_filter |
The replay_gain_filter_plugin instance of this audio output. | |
unsigned | replay_gain_serial |
The serial number of the last replay gain info. | |
struct filter * | other_replay_gain_filter |
The replay_gain_filter_plugin instance of this audio output, to be applied to the second chunk during cross-fading. | |
unsigned | other_replay_gain_serial |
The serial number of the last replay gain info by the "other" chunk during cross-fading. | |
struct filter * | convert_filter |
The convert_filter_plugin instance of this audio output. | |
GThread * | thread |
The thread handle, or NULL if the output thread isn't running. | |
enum audio_output_command | command |
The next command to be performed by the output thread. | |
struct music_pipe * | pipe |
The music pipe which provides music chunks to be played. | |
GMutex * | mutex |
This mutex protects open, fail_timer, chunk and chunk_finished. | |
GCond * | cond |
This condition object wakes up the output thread after command has been set. | |
struct player_control * | player_control |
The player_control object which "owns" this output. | |
struct music_chunk * | chunk |
The music_chunk which is currently being played. | |
bool | chunk_finished |
Has the output finished playing chunk? |
Definition at line 57 of file output_internal.h.
When this flag is set, the output thread will not do any playback.
It will wait until the flag is cleared.
This is used to synchronize the "clear" operation on the shared music pipe during the CANCEL command.
Definition at line 115 of file output_internal.h.
Shall this output always play something (i.e.
silence), even when playback is stopped?
Definition at line 79 of file output_internal.h.
struct music_chunk* audio_output::chunk |
The music_chunk which is currently being played.
All chunks before this one may be returned to the #music_buffer, because they are not going to be used by this output anymore.
Definition at line 227 of file output_internal.h.
Has the output finished playing chunk?
Definition at line 232 of file output_internal.h.
The next command to be performed by the output thread.
Definition at line 196 of file output_internal.h.
GCond* audio_output::cond |
This condition object wakes up the output thread after command has been set.
Definition at line 213 of file output_internal.h.
The configured audio format.
Definition at line 127 of file output_internal.h.
struct filter* audio_output::convert_filter |
The convert_filter_plugin instance of this audio output.
It is the last item in the filter chain, and is responsible for converting the input data into the appropriate format for this audio output.
Definition at line 185 of file output_internal.h.
The buffer used to allocate the cross-fading result.
Definition at line 146 of file output_internal.h.
Has the user enabled this device?
Definition at line 84 of file output_internal.h.
GTimer* audio_output::fail_timer |
If not NULL, the device has failed, and this timer is used to estimate how long it should stay disabled (unless explicitly reopened with "play").
Definition at line 122 of file output_internal.h.
struct filter* audio_output::filter |
The filter object of this audio output.
This is an instance of chain_filter_plugin.
Definition at line 152 of file output_internal.h.
The audio_format in which audio data is received from the player thread (which in turn receives it from the decoder).
Definition at line 133 of file output_internal.h.
struct mixer* audio_output::mixer |
The mixer object associated with this audio output device.
May be NULL if none is available, or if software volume is configured.
Definition at line 73 of file output_internal.h.
GMutex* audio_output::mutex |
This mutex protects open, fail_timer, chunk and chunk_finished.
Definition at line 207 of file output_internal.h.
const char* audio_output::name |
The device's configured display name.
Definition at line 61 of file output_internal.h.
bool audio_output::open |
Is the device (already) open and functional?
This attribute may only be modified by the output thread. It is protected with mutex: write accesses inside the output thread and read accesses outside of it may only be performed while the lock is held.
Definition at line 100 of file output_internal.h.
The replay_gain_filter_plugin instance of this audio output, to be applied to the second chunk during cross-fading.
Definition at line 171 of file output_internal.h.
The serial number of the last replay gain info by the "other" chunk during cross-fading.
Definition at line 177 of file output_internal.h.
The audio_format which is really sent to the device.
This is basically config_audio_format (if configured) or in_audio_format, but may have been modified by plugin->open().
Definition at line 141 of file output_internal.h.
bool audio_output::pause |
Is the device paused? i.e.
the output thread is in the ao_pause() loop.
Definition at line 106 of file output_internal.h.
struct music_pipe* audio_output::pipe |
The music pipe which provides music chunks to be played.
Definition at line 201 of file output_internal.h.
The player_control object which "owns" this output.
This object is needed to signal command completion.
Definition at line 219 of file output_internal.h.
The plugin which implements this output device.
Definition at line 66 of file output_internal.h.
Is this device actually enabled, i.e.
the "enable" method has succeeded?
Definition at line 90 of file output_internal.h.
The replay_gain_filter_plugin instance of this audio output.
Definition at line 158 of file output_internal.h.
unsigned audio_output::replay_gain_serial |
The serial number of the last replay gain info.
0 means no replay gain info was available.
Definition at line 164 of file output_internal.h.
GThread* audio_output::thread |
The thread handle, or NULL if the output thread isn't running.
Definition at line 191 of file output_internal.h.