diff options
Diffstat (limited to 'src/xine-engine/demux.c')
-rw-r--r-- | src/xine-engine/demux.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/xine-engine/demux.c b/src/xine-engine/demux.c index 20474d71f..63189d5f4 100644 --- a/src/xine-engine/demux.c +++ b/src/xine-engine/demux.c @@ -59,6 +59,10 @@ void xine_demux_flush_engine (xine_stream_t *stream) { stream->audio_fifo->put (stream->audio_fifo, buf); } + if (stream->audio_out) { + stream->audio_out->set_property(stream->audio_out, AO_PROP_DISCARD_BUFFERS, 1); + } + /* on seeking we must wait decoder fifos to process before doing flush. * otherwise we flush too early (before the old data has left decoders) */ @@ -70,6 +74,7 @@ void xine_demux_flush_engine (xine_stream_t *stream) { if (stream->audio_out) { stream->audio_out->flush(stream->audio_out); + stream->audio_out->set_property(stream->audio_out, AO_PROP_DISCARD_BUFFERS, 0); } } |