diff options
author | wm4 <wm4@nowhere> | 2013-11-18 14:18:37 +0100 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2013-11-18 14:21:01 +0100 |
commit | d5bc4ee79864404423ddf2786d8e8089fc46eeca (patch) | |
tree | e884a45b31ef0700af7c9bf85af72a322f4ae77c /audio/filter/af_scaletempo.c | |
parent | 5594718b6bda3a230e2e2c3cb06d2837c5a02688 (diff) | |
download | mpv-d5bc4ee79864404423ddf2786d8e8089fc46eeca.tar.bz2 mpv-d5bc4ee79864404423ddf2786d8e8089fc46eeca.tar.xz |
audio: drop buffered filter data when seeking
This could lead to (barely) audible artifacts with --af=scaletempo and
modified playback speed.
Diffstat (limited to 'audio/filter/af_scaletempo.c')
-rw-r--r-- | audio/filter/af_scaletempo.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/audio/filter/af_scaletempo.c b/audio/filter/af_scaletempo.c index 9ec7b6b89b..f7e58f0923 100644 --- a/audio/filter/af_scaletempo.c +++ b/audio/filter/af_scaletempo.c @@ -428,6 +428,11 @@ static int control(struct af_instance *af, int cmd, void *arg) } return AF_OK; } + case AF_CONTROL_RESET: + s->bytes_queued = 0; + s->bytes_to_slide = 0; + s->frames_stride_error = 0; + memset(s->buf_overlap, 0, s->bytes_overlap); } return AF_UNKNOWN; } |