From 154c3934d686afb297f4d4313d87e7cfae5f60f2 Mon Sep 17 00:00:00 2001 From: Sil Vilerino Date: Wed, 5 Mar 2025 12:44:16 -0500 Subject: [PATCH] d3d12: Add missing offset to encode slice metadata in the get_feedback function Reviewed-By: Pohsiang Hsu Part-of: --- src/gallium/drivers/d3d12/d3d12_video_enc.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/d3d12/d3d12_video_enc.cpp b/src/gallium/drivers/d3d12/d3d12_video_enc.cpp index e945c4fc826..5f9ef170c5e 100644 --- a/src/gallium/drivers/d3d12/d3d12_video_enc.cpp +++ b/src/gallium/drivers/d3d12/d3d12_video_enc.cpp @@ -4108,7 +4108,7 @@ d3d12_video_encoder_get_feedback(struct pipe_video_codec *codec, unpadded_frame_size += unpadded_slice_size; opt_metadata.codec_unit_metadata[opt_metadata.codec_unit_metadata_count].flags = PIPE_VIDEO_CODEC_UNIT_LOCATION_FLAG_SINGLE_NALU; opt_metadata.codec_unit_metadata[opt_metadata.codec_unit_metadata_count].size = unpadded_slice_size; - opt_metadata.codec_unit_metadata[opt_metadata.codec_unit_metadata_count].offset = *output_buffer_size; + opt_metadata.codec_unit_metadata[opt_metadata.codec_unit_metadata_count].offset = (*output_buffer_size) + static_cast(pSubregionsMetadata[i].bStartOffset); *output_buffer_size += static_cast(pSubregionsMetadata[i].bSize); if ((pD3D12Enc->m_spEncodedFrameMetadata[current_metadata_slot].expected_max_slice_size > 0) && (unpadded_slice_size > pD3D12Enc->m_spEncodedFrameMetadata[current_metadata_slot].expected_max_slice_size))