From 865a46b193e7e83030f2c73e8366e4240ae26551 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Manuel=20J=C3=A1quez=20Leal?= Date: Mon, 19 Oct 2020 13:46:44 +0200 Subject: libs: decoder: vp9: 0xff segment pred probs if no temporal update According to the spec (6.2.11 Segmentation params syntax) segmentation_pred_prob[i] ast to be 0xff if not temporal_update. Part-of: --- gst-libs/gst/vaapi/gstvaapidecoder_vp9.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'gst-libs') diff --git a/gst-libs/gst/vaapi/gstvaapidecoder_vp9.c b/gst-libs/gst/vaapi/gstvaapidecoder_vp9.c index 134a0317..3862cc26 100644 --- a/gst-libs/gst/vaapi/gstvaapidecoder_vp9.c +++ b/gst-libs/gst/vaapi/gstvaapidecoder_vp9.c @@ -383,8 +383,14 @@ fill_picture (GstVaapiDecoderVp9 * decoder, GstVaapiPicture * picture) memcpy (pic_param->mb_segment_tree_probs, parser->mb_segment_tree_probs, sizeof (parser->mb_segment_tree_probs)); - memcpy (pic_param->segment_pred_probs, parser->segment_pred_probs, - sizeof (parser->segment_pred_probs)); + + if (frame_hdr->segmentation.temporal_update) { + memcpy (pic_param->segment_pred_probs, parser->segment_pred_probs, + sizeof (parser->segment_pred_probs)); + } else { + memset (pic_param->segment_pred_probs, 255, + sizeof (pic_param->segment_pred_probs)); + } return TRUE; } -- cgit v1.2.1