summaryrefslogtreecommitdiff
path: root/libavcodec/vaapi_decode.c
diff options
context:
space:
mode:
authorMark Thompson <sw@jkqxz.net>2016-10-19 23:45:46 +0100
committerMark Thompson <sw@jkqxz.net>2016-10-24 20:17:47 +0100
commit5e879b54a3a46817ea6c8a95a9aecab1176418b9 (patch)
tree82c105221aaa59f78c870cafc93dd1633e4b5bac /libavcodec/vaapi_decode.c
parent754b20d7ebccbe8d316b12128c8cb433d5a516ac (diff)
vaapi_decode: Clear parameter buffers to fix picture reuse
When decoding interlaced pictures, the structure is reused to render to the same surface twice. The parameter buffers were not being cleared, which caused the i965 driver to error out.
Diffstat (limited to 'libavcodec/vaapi_decode.c')
-rw-r--r--libavcodec/vaapi_decode.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/libavcodec/vaapi_decode.c b/libavcodec/vaapi_decode.c
index ab8445afc0..9e1087ff35 100644
--- a/libavcodec/vaapi_decode.c
+++ b/libavcodec/vaapi_decode.c
@@ -201,6 +201,7 @@ int ff_vaapi_decode_issue(AVCodecContext *avctx,
AV_VAAPI_DRIVER_QUIRK_RENDER_PARAM_BUFFERS)
ff_vaapi_decode_destroy_buffers(avctx, pic);
+ pic->nb_param_buffers = 0;
pic->nb_slices = 0;
pic->slices_allocated = 0;
av_freep(&pic->slice_buffers);