vaapi_decode: Clear parameter buffers to fix picture reuse
authorMark Thompson <sw@jkqxz.net>
Wed, 19 Oct 2016 22:45:46 +0000 (23:45 +0100)
committerMark Thompson <sw@jkqxz.net>
Mon, 24 Oct 2016 19:17:47 +0000 (20:17 +0100)
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.

libavcodec/vaapi_decode.c

index ab8445a..9e1087f 100644 (file)
@@ -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);