summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLeo Liu <leo.liu@amd.com>2019-02-08 09:48:23 -0500
committerDylan Baker <dylan@pnwbakers.com>2019-02-12 14:19:52 -0800
commitc55008e5a04e91ea03b2047c68121ee009704366 (patch)
tree61e260fdf70706a4757e5b1efc87f05ce58c6cde
parentab585817e6a34893674b65aba77252d7bff43cc5 (diff)
st/va/vp9: set max reference as default of VP9 reference number
If there is no information about number of render targets Signed-off-by: Leo Liu <leo.liu@amd.com> Reviewed-by: Boyuan Zhang <boyuan.zhang@amd.com> Cc: 19.0 <mesa-stable@lists.freedesktop.org> (cherry picked from commit a0a52a036708dbf5989778795fd67a79e3226289)
-rw-r--r--src/gallium/state_trackers/va/picture_vp9.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gallium/state_trackers/va/picture_vp9.c b/src/gallium/state_trackers/va/picture_vp9.c
index c1ca54cd008..b5aca9a513c 100644
--- a/src/gallium/state_trackers/va/picture_vp9.c
+++ b/src/gallium/state_trackers/va/picture_vp9.c
@@ -28,6 +28,8 @@
#include "vl/vl_vlc.h"
#include "va_private.h"
+#define NUM_VP9_REFS 8
+
void vlVaHandlePictureParameterBufferVP9(vlVaDriver *drv, vlVaContext *context, vlVaBuffer *buf)
{
VADecPictureParameterBufferVP9 *vp9 = buf->data;
@@ -79,8 +81,11 @@ void vlVaHandlePictureParameterBufferVP9(vlVaDriver *drv, vlVaContext *context,
context->desc.vp9.picture_parameter.bit_depth = vp9->bit_depth;
- for (i = 0 ; i < 8 ; i++)
+ for (i = 0 ; i < NUM_VP9_REFS ; i++)
vlVaGetReferenceFrame(drv, vp9->reference_frames[i], &context->desc.vp9.ref[i]);
+
+ if (!context->decoder && !context->templat.max_references)
+ context->templat.max_references = NUM_VP9_REFS;
}
void vlVaHandleSliceParameterBufferVP9(vlVaContext *context, vlVaBuffer *buf)