libs: decoder: h265: set parser info state at decoding codec data
authorVíctor Manuel Jáquez Leal <vjaquez@igalia.com>
Mon, 17 Feb 2020 07:55:36 +0000 (08:55 +0100)
committerVíctor Manuel Jáquez Leal <vjaquez@igalia.com>
Mon, 17 Feb 2020 08:08:34 +0000 (09:08 +0100)
Commit 1168d6d5 showed up a regression: decode_sps() stores the unit's
parser info in sps array. If that parser info comes from decoding
codec data, that parser info will have an undefined state which might
break ensure_sps().

This patch sets the parser info state, at decoding codec data, with
the internal parser state. This is similar with h264 decoder apprach.

Original-patch-by: Xu Guangxin <guangxin.xu@intel.com>
gst-libs/gst/vaapi/gstvaapidecoder_h265.c

index 5d554fc..100d553 100644 (file)
@@ -2867,6 +2867,9 @@ gst_vaapi_decoder_h265_decode_codec_data (GstVaapiDecoder *
         goto cleanup;
       }
 
+      pi->state = priv->parser_state;
+      pi->flags = 0;
+
       switch (pi->nalu.type) {
         case GST_H265_NAL_VPS:
           status = parse_vps (decoder, &unit);