From 3f43b2eae58f46710dc7dd6733ad6d45729c407a Mon Sep 17 00:00:00 2001 From: Sil Vilerino Date: Mon, 20 Nov 2023 19:19:48 -0500 Subject: [PATCH] d3d12: Implement PIPE_VIDEO_FEEDBACK_METADATA_TYPE_AVERAGE_FRAME_QP Reviewed-by: Jesse Natalie Part-of: --- src/gallium/drivers/d3d12/d3d12_video_enc.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/d3d12/d3d12_video_enc.cpp b/src/gallium/drivers/d3d12/d3d12_video_enc.cpp index 26cf6d591db..316c414ac38 100644 --- a/src/gallium/drivers/d3d12/d3d12_video_enc.cpp +++ b/src/gallium/drivers/d3d12/d3d12_video_enc.cpp @@ -2418,11 +2418,14 @@ d3d12_video_encoder_get_feedback(struct pipe_video_codec *codec, opt_metadata.codec_unit_metadata_count++; } + opt_metadata.average_frame_qp = static_cast(encoderMetadata.EncodeStats.AverageQP); + opt_metadata.present_metadata = (PIPE_VIDEO_FEEDBACK_METADATA_TYPE_BITSTREAM_SIZE | PIPE_VIDEO_FEEDBACK_METADATA_TYPE_ENCODE_RESULT | PIPE_VIDEO_FEEDBACK_METADATA_TYPE_CODEC_UNIT_LOCATION | PIPE_VIDEO_FEEDBACK_METADATA_TYPE_MAX_FRAME_SIZE_OVERFLOW | - PIPE_VIDEO_FEEDBACK_METADATA_TYPE_MAX_SLICE_SIZE_OVERFLOW); + PIPE_VIDEO_FEEDBACK_METADATA_TYPE_MAX_SLICE_SIZE_OVERFLOW | + PIPE_VIDEO_FEEDBACK_METADATA_TYPE_AVERAGE_FRAME_QP); if (pMetadata) *pMetadata = opt_metadata;