summaryrefslogtreecommitdiffstats
path: root/player/audio.c
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2019-05-25 23:04:26 +0200
committerwm4 <wm4@nowhere>2019-09-19 20:37:04 +0200
commitf68d9e75f8957957a9b97e2883a9482fd0b6479a (patch)
tree4095db677b6ff79d94d8f8ed3a09481a04bbc22e /player/audio.c
parentaebccb880107c6c6db21853446300c9deee718b3 (diff)
downloadmpv-f68d9e75f8957957a9b97e2883a9482fd0b6479a.tar.bz2
mpv-f68d9e75f8957957a9b97e2883a9482fd0b6479a.tar.xz
player: fix --end for backwards playback
We need to transform the timestamp returned by get_play_end_pts(). I considered making it return the transformed timestamp directly. There are 4 callers; 2 need a transformed timestamps, 2 don't. So I guess it doesn't matter.
Diffstat (limited to 'player/audio.c')
-rw-r--r--player/audio.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/player/audio.c b/player/audio.c
index 62bc5405f1..d56b97c5ba 100644
--- a/player/audio.c
+++ b/player/audio.c
@@ -736,6 +736,8 @@ static int filter_audio(struct MPContext *mpctx, struct mp_audio_buffer *outbuf,
struct ao_chain *ao_c = mpctx->ao_chain;
double endpts = get_play_end_pts(mpctx);
+ if (endpts != MP_NOPTS_VALUE)
+ endpts *= mpctx->play_dir;
bool eof = false;
if (!copy_output(mpctx, ao_c, minsamples, endpts, &eof))