diff options
Diffstat (limited to 'dxr3audio-alsa.c')
-rw-r--r-- | dxr3audio-alsa.c | 13 |
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; |