diff options
Diffstat (limited to 'src/output/jack_output_plugin.c')
-rw-r--r-- | src/output/jack_output_plugin.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/output/jack_output_plugin.c b/src/output/jack_output_plugin.c index 5a89d7919..110ee5f26 100644 --- a/src/output/jack_output_plugin.c +++ b/src/output/jack_output_plugin.c @@ -118,6 +118,13 @@ mpd_jack_process(jack_nframes_t nframes, void *arg) return 0; if (jd->pause) { + /* empty the ring buffers */ + + const jack_nframes_t available = mpd_jack_available(jd); + for (unsigned i = 0; i < jd->audio_format.channels; ++i) + jack_ringbuffer_read_advance(jd->ringbuffer[i], + available * sample_size); + /* generate silence while MPD is paused */ for (unsigned i = 0; i < jd->audio_format.channels; ++i) { |