summaryrefslogtreecommitdiffstats
path: root/player/audio.c
diff options
context:
space:
mode:
Diffstat (limited to 'player/audio.c')
-rw-r--r--player/audio.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/player/audio.c b/player/audio.c
index d56b97c5ba..881d74a904 100644
--- a/player/audio.c
+++ b/player/audio.c
@@ -187,8 +187,12 @@ static void ao_chain_reset_state(struct ao_chain *ao_c)
void reset_audio_state(struct MPContext *mpctx)
{
- if (mpctx->ao_chain)
+ if (mpctx->ao_chain) {
ao_chain_reset_state(mpctx->ao_chain);
+ struct track *t = mpctx->ao_chain->track;
+ if (t && t->dec)
+ t->dec->play_dir = mpctx->play_dir;
+ }
mpctx->audio_status = mpctx->ao_chain ? STATUS_SYNCING : STATUS_EOF;
mpctx->delay = 0;
mpctx->audio_drop_throttle = 0;