Mesa (main): radeon/vcn: check frame size change for vp9 header flags

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Aug 18 19:30:38 UTC 2021


Module: Mesa
Branch: main
Commit: 35c3f5f08b7b11f3896412fb5778f127be329615
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=35c3f5f08b7b11f3896412fb5778f127be329615

Author: Boyuan Zhang <boyuan.zhang at amd.com>
Date:   Fri Aug 13 22:24:35 2021 -0400

radeon/vcn: check frame size change for vp9 header flags

Beside show_frame and error_resilient_mode, also need to check if frame size
changes. FRAME_HDR_INFO_VP9_USE_PREV_IN_FIND_MV_REFS flag should be OFF if
frame size changes.

Signed-off-by: Boyuan Zhang <boyuan.zhang at amd.com>
Reviewed-by: Leo Liu <leo.liu at amd.com>
Acked-by: Veerabadhran Gopalakrishnan <veerabadhran.gopalakrishnan at amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12368>

---

 src/gallium/drivers/radeon/radeon_vcn_dec.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/radeon/radeon_vcn_dec.c b/src/gallium/drivers/radeon/radeon_vcn_dec.c
index 3c3d4daa7a5..d8e4d66bddb 100644
--- a/src/gallium/drivers/radeon/radeon_vcn_dec.c
+++ b/src/gallium/drivers/radeon/radeon_vcn_dec.c
@@ -461,7 +461,8 @@ static rvcn_dec_message_vp9_t get_vp9_msg(struct radeon_decoder *dec,
                                 RDECODE_FRAME_HDR_INFO_VP9_MODE_REF_DELTA_UPDATE_MASK;
 
    result.frame_header_flags |=
-      ((dec->show_frame && !pic->picture_parameter.pic_fields.error_resilient_mode)
+      ((dec->show_frame && !pic->picture_parameter.pic_fields.error_resilient_mode &&
+        dec->last_width == dec->base.width && dec->last_height == dec->base.height)
        << RDECODE_FRAME_HDR_INFO_VP9_USE_PREV_IN_FIND_MV_REFS_SHIFT) &
       RDECODE_FRAME_HDR_INFO_VP9_USE_PREV_IN_FIND_MV_REFS_MASK;
    dec->show_frame = pic->picture_parameter.pic_fields.show_frame;



More information about the mesa-commit mailing list