Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZane van Iperen <zane@zanevaniperen.com>2021-03-23 13:58:33 +0300
committerZane van Iperen <zane@zanevaniperen.com>2021-03-25 05:51:08 +0300
commit660c14a9b9fe6e7add23163f8fc63a4f0824b434 (patch)
tree6e15c5692aeb74e53831e2e31c75a1f41efd8bbc /libavcodec/adpcm.c
parentefb58ec8f9c26f0b779a05df15782dfe002aaacc (diff)
avcodec/adpcm_argo: reset state on flush
Commit 003b5c800fef909fa84dd2fae43d66bd434d3f7e introduced seeking in argo_asf, but this was missed, leading to non-deterministic output. Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
Diffstat (limited to 'libavcodec/adpcm.c')
-rw-r--r--libavcodec/adpcm.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/libavcodec/adpcm.c b/libavcodec/adpcm.c
index b035406550..07fa1a65b3 100644
--- a/libavcodec/adpcm.c
+++ b/libavcodec/adpcm.c
@@ -2116,6 +2116,13 @@ static void adpcm_flush(AVCodecContext *avctx)
c->status[channel].step = 0;
break;
+ case AV_CODEC_ID_ADPCM_ARGO:
+ for (int channel = 0; channel < avctx->channels; channel++) {
+ c->status[channel].sample1 = 0;
+ c->status[channel].sample2 = 0;
+ }
+ break;
+
case AV_CODEC_ID_ADPCM_ZORK:
for (int channel = 0; channel < avctx->channels; channel++) {
c->status[channel].predictor = 0;