diff options
author | Sreerenj Balachandran <sreerenj.balachandran@intel.com> | 2015-11-17 19:37:07 +0200 |
---|---|---|
committer | Sreerenj Balachandran <sreerenj.balachandran@intel.com> | 2015-11-17 19:37:07 +0200 |
commit | a24918037d3d3638ad785bde2a334e29d2a656a1 (patch) | |
tree | 42f05f36f932443b77bba9cbaacaf66a52e472ae | |
parent | e267e167db3056f5c26facfaa3a8b6a310138623 (diff) | |
download | gst-vaapi-a24918037d3d3638ad785bde2a334e29d2a656a1.tar.gz |
decoder: vp9: Fix last/golden/altref frame index setting
Always fill VADecPictureParameterBufferVP9 last/golden/altref indices
based on what ever reference frame indices encoded in frame header.
-rw-r--r-- | gst-libs/gst/vaapi/gstvaapidecoder_vp9.c | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/gst-libs/gst/vaapi/gstvaapidecoder_vp9.c b/gst-libs/gst/vaapi/gstvaapidecoder_vp9.c index 3dbc0fbe..055ac09b 100644 --- a/gst-libs/gst/vaapi/gstvaapidecoder_vp9.c +++ b/gst-libs/gst/vaapi/gstvaapidecoder_vp9.c @@ -226,17 +226,14 @@ vaapi_fill_ref_frames (GstVaapiDecoderVp9 * decoder, GstVaapiPicture * picture, frame_hdr->ref_frame_indices[GST_VP9_REF_FRAME_LAST - 1]; pic_param->pic_fields.bits.last_ref_frame_sign_bias = frame_hdr->ref_frame_sign_bias[GST_VP9_REF_FRAME_LAST - 1]; - - if (frame_hdr->ref_frame_indices[1]) { - pic_param->pic_fields.bits.golden_ref_frame = - frame_hdr->ref_frame_indices[GST_VP9_REF_FRAME_GOLDEN - 1]; - pic_param->pic_fields.bits.golden_ref_frame_sign_bias = - frame_hdr->ref_frame_sign_bias[GST_VP9_REF_FRAME_GOLDEN - 1]; - pic_param->pic_fields.bits.alt_ref_frame = - frame_hdr->ref_frame_indices[GST_VP9_REF_FRAME_ALTREF - 1]; - pic_param->pic_fields.bits.alt_ref_frame_sign_bias = - frame_hdr->ref_frame_sign_bias[GST_VP9_REF_FRAME_ALTREF - 1]; - } + pic_param->pic_fields.bits.golden_ref_frame = + frame_hdr->ref_frame_indices[GST_VP9_REF_FRAME_GOLDEN - 1]; + pic_param->pic_fields.bits.golden_ref_frame_sign_bias = + frame_hdr->ref_frame_sign_bias[GST_VP9_REF_FRAME_GOLDEN - 1]; + pic_param->pic_fields.bits.alt_ref_frame = + frame_hdr->ref_frame_indices[GST_VP9_REF_FRAME_ALTREF - 1]; + pic_param->pic_fields.bits.alt_ref_frame_sign_bias = + frame_hdr->ref_frame_sign_bias[GST_VP9_REF_FRAME_ALTREF - 1]; } for (i = 0; i < G_N_ELEMENTS (priv->ref_frames); i++) { pic_param->reference_frames[i] = |