summaryrefslogtreecommitdiff
path: root/dxr3audio-alsa.c
diff options
context:
space:
mode:
Diffstat (limited to 'dxr3audio-alsa.c')
-rw-r--r--dxr3audio-alsa.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/dxr3audio-alsa.c b/dxr3audio-alsa.c
index 23af170..9d36df6 100644
--- a/dxr3audio-alsa.c
+++ b/dxr3audio-alsa.c
@@ -262,10 +262,12 @@ void cAudioAlsa::write(uchar* data, size_t size)
void cAudioAlsa::flush()
{
- int err = snd_pcm_drop(handle);
+ snd_pcm_nonblock(handle, 0);
+ int err = snd_pcm_drain(handle);
if (err < 0) {
esyslog("[dxr3-audio-alsa] failed to pcm_drop: %s", snd_strerror(err));
}
+ snd_pcm_nonblock(handle, 1);
err = snd_pcm_prepare(handle);
if (err < 0) {
@@ -273,6 +275,15 @@ void cAudioAlsa::flush()
}
}
+void cAudioAlsa::setDigitalAudio(bool on)
+{
+ if (digitalAudio == on) {
+ return;
+ }
+
+ // TODO stub
+}
+
void cAudioAlsa::Xrun()
{
int res;