radeon/vcn: set min value for num_temporal_layers
authorBoyuan Zhang <boyuan.zhang@amd.com>
Thu, 19 Aug 2021 02:30:02 +0000 (22:30 -0400)
committerMarge Bot <eric+marge@anholt.net>
Thu, 19 Aug 2021 14:25:09 +0000 (14:25 +0000)
Fixes: 51935d59

In the case where num_temporal_layers is not set (0), set it using the
minimum value 1, otherwise the rate control settings will be missing.

Signed-off-by: Boyuan Zhang <boyuan.zhang@amd.com>
Reviewed-by: Thong Thai <thong.thai@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12463>

src/gallium/drivers/radeon/radeon_vcn_enc.c

index f02def3..ab13dad 100644 (file)
@@ -61,7 +61,7 @@ static void radeon_vcn_enc_get_param(struct radeon_encoder *enc, struct pipe_pic
          enc->enc_pic.crop_top = 0;
          enc->enc_pic.crop_bottom = (align(enc->base.height, 16) - enc->base.height) / 2;
       }
-      enc->enc_pic.num_temporal_layers = pic->num_temporal_layers;
+      enc->enc_pic.num_temporal_layers = pic->num_temporal_layers ? pic->num_temporal_layers : 1;
       enc->enc_pic.temporal_id = 0;
       for (int i = 0; i < enc->enc_pic.num_temporal_layers; i++)
       {