summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVíctor Manuel Jáquez Leal <vjaquez@igalia.com>2020-06-19 10:44:50 +0200
committerVíctor Manuel Jáquez Leal <vjaquez@igalia.com>2020-07-07 17:47:23 +0200
commitb387081a4d77d3da202da72686ab40fb9c83ee1e (patch)
tree5a8f5af99b9db80731b2983423428e6c8cb87e9f
parentaa7370943dc69273836fa828cb19a86a6a2c6809 (diff)
libs: decoder: h264, h265: in context at least 16 reference surfaces
Registering only stream's DBP size number of surfaces for decoding VA surfaces brings issues for certain streams. This change register all possible number of reference surfaces in a stream, which is 16. Fixes: #94
-rw-r--r--gst-libs/gst/vaapi/gstvaapidecoder_h264.c2
-rw-r--r--gst-libs/gst/vaapi/gstvaapidecoder_h265.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/gst-libs/gst/vaapi/gstvaapidecoder_h264.c b/gst-libs/gst/vaapi/gstvaapidecoder_h264.c
index 83b05c45..7dd7ed7f 100644
--- a/gst-libs/gst/vaapi/gstvaapidecoder_h264.c
+++ b/gst-libs/gst/vaapi/gstvaapidecoder_h264.c
@@ -1623,7 +1623,7 @@ ensure_context (GstVaapiDecoderH264 * decoder, GstH264SPS * sps)
info.chroma_type = priv->chroma_type;
info.width = sps->width;
info.height = sps->height;
- info.ref_frames = dpb_size;
+ info.ref_frames = 16;
if (!gst_vaapi_decoder_ensure_context (GST_VAAPI_DECODER (decoder), &info))
return GST_VAAPI_DECODER_STATUS_ERROR_UNKNOWN;
diff --git a/gst-libs/gst/vaapi/gstvaapidecoder_h265.c b/gst-libs/gst/vaapi/gstvaapidecoder_h265.c
index 024d7142..cd718f42 100644
--- a/gst-libs/gst/vaapi/gstvaapidecoder_h265.c
+++ b/gst-libs/gst/vaapi/gstvaapidecoder_h265.c
@@ -1201,7 +1201,7 @@ ensure_context (GstVaapiDecoderH265 * decoder, GstH265SPS * sps)
info.chroma_type = priv->chroma_type;
info.width = sps->width;
info.height = sps->height;
- info.ref_frames = dpb_size;
+ info.ref_frames = 16;
if (!gst_vaapi_decoder_ensure_context (GST_VAAPI_DECODER (decoder), &info))
return GST_VAAPI_DECODER_STATUS_ERROR_UNKNOWN;