diff --git a/output_alsa.c b/output_alsa.c index 4a35ea2..a3bdb24 100644 --- a/output_alsa.c +++ b/output_alsa.c @@ -580,6 +580,12 @@ // EPIPE indicates underrun - attempt to recover UNLOCK; continue; + } else if (err == -EIO) { + // EIO can occur with non existant pulse server + UNLOCK; + LOG_SDEBUG("snd_pcm_delay returns: EIO - sleeping"); + usleep(100000); + continue; } else { LOG_DEBUG("snd_pcm_delay returns: %d", err); }