diff options
author | Max Kellermann <max@duempel.org> | 2009-11-09 22:16:26 +0100 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2009-11-09 22:16:26 +0100 |
commit | 3359f8785ef9b595b3ad943fdd2227f98ce56990 (patch) | |
tree | 248b51245d424b4700fffffb2eb8efd89f1ed6a0 /src/output_control.c | |
parent | 96b974bc452e6b33ada281c5ccb4df7b9492e1da (diff) | |
download | mpd-3359f8785ef9b595b3ad943fdd2227f98ce56990.tar.gz mpd-3359f8785ef9b595b3ad943fdd2227f98ce56990.tar.xz mpd-3359f8785ef9b595b3ad943fdd2227f98ce56990.zip |
output_thread: added command DRAIN
This command manually drains the hardware buffer. This is useful when
the player thread want to make sure that everything has been played.
Diffstat (limited to 'src/output_control.c')
-rw-r--r-- | src/output_control.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/output_control.c b/src/output_control.c index 842b89030..795d04a8c 100644 --- a/src/output_control.c +++ b/src/output_control.c @@ -229,6 +229,15 @@ void audio_output_pause(struct audio_output *ao) g_mutex_unlock(ao->mutex); } +void +audio_output_drain_async(struct audio_output *ao) +{ + g_mutex_lock(ao->mutex); + if (audio_output_is_open(ao)) + ao_command_async(ao, AO_COMMAND_DRAIN); + g_mutex_unlock(ao->mutex); +} + void audio_output_cancel(struct audio_output *ao) { g_mutex_lock(ao->mutex); |