From c30d5f79b5a94adc9796a9751b0cab2b6c3b9e3d Mon Sep 17 00:00:00 2001 From: wm4 Date: Fri, 6 Mar 2015 21:48:41 +0100 Subject: af_scaletempo: restore confusing mplayer behavior This matters only when setting obscure scaletempo suboptions. See #1653. (But what we really should do is figuring out how to do this in a sane way.) --- audio/filter/af_scaletempo.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'audio/filter') diff --git a/audio/filter/af_scaletempo.c b/audio/filter/af_scaletempo.c index 707060578f..8702819372 100644 --- a/audio/filter/af_scaletempo.c +++ b/audio/filter/af_scaletempo.c @@ -433,9 +433,15 @@ static int control(struct af_instance *af, int cmd, void *arg) return af_test_output(af, (struct mp_audio *)arg); } case AF_CONTROL_SET_PLAYBACK_SPEED: { - if (s->speed_tempo == s->speed_pitch) - break; // doesn't change speed - update_speed(af, *(double *)arg); + double speed = *(double *)arg; + if (s->speed_tempo) { + if (s->speed_pitch) + break; + update_speed(af, speed); + } else if (s->speed_pitch) { + update_speed(af, speed); + break; // do not signal OK + } return AF_OK; } case AF_CONTROL_RESET: -- cgit v1.2.3