diff --git a/src/amd/vulkan/radv_video.c b/src/amd/vulkan/radv_video.c index 8aa253ce96b..8cd2713fa5d 100644 --- a/src/amd/vulkan/radv_video.c +++ b/src/amd/vulkan/radv_video.c @@ -703,7 +703,7 @@ radv_GetPhysicalDeviceVideoCapabilitiesKHR(VkPhysicalDevice physicalDevice, cons ext->maxPPictureL0ReferenceCount = 1; ext->maxBPictureL0ReferenceCount = 0; ext->maxL1ReferenceCount = 0; - ext->maxSubLayerCount = 1; + ext->maxSubLayerCount = 4; ext->expectDyadicTemporalSubLayerPattern = false; ext->minQp = 0; ext->maxQp = 51; diff --git a/src/amd/vulkan/radv_video_enc.c b/src/amd/vulkan/radv_video_enc.c index 4919bce6c82..47eb90ed28b 100644 --- a/src/amd/vulkan/radv_video_enc.c +++ b/src/amd/vulkan/radv_video_enc.c @@ -1743,8 +1743,8 @@ radv_video_enc_control_video_coding(struct radv_cmd_buffer *cmd_buffer, const Vk vid->rc_layer_control.max_num_temporal_layers = h264_rate_control->temporalLayerCount; vid->rc_layer_control.num_temporal_layers = h264_rate_control->temporalLayerCount; } else if (h265_rate_control) { - vid->rc_layer_control.max_num_temporal_layers = 1; - vid->rc_layer_control.num_temporal_layers = 1; + vid->rc_layer_control.max_num_temporal_layers = h265_rate_control->subLayerCount; + vid->rc_layer_control.num_temporal_layers = h265_rate_control->subLayerCount; } for (unsigned l = 0; l < rate_control->layerCount; l++) {