d3d12: Support PIPE_VIDEO_CAP_ENC_QUALITY_LEVEL

Only return we support 1 quality level. The point of returning this
cap is that vlVaEndPicture will check for it and otherwise overwrite
some rate control parameters with defaults

Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22530>
This commit is contained in:
Sil Vilerino 2023-04-17 08:56:48 -04:00 committed by Marge Bot
parent 99f96eb81b
commit 407bd51b71

View file

@ -1172,6 +1172,9 @@ d3d12_screen_get_video_param_encode(struct pipe_screen *pscreen,
return true;
case PIPE_VIDEO_CAP_ENC_SUPPORTS_MAX_FRAME_SIZE:
return true;
case PIPE_VIDEO_CAP_ENC_QUALITY_LEVEL:
/* VAEncMiscParameterBufferQualityLevel */
return 1;
case PIPE_VIDEO_CAP_ENC_RATE_CONTROL_QVBR:
{
D3D12_FEATURE_DATA_VIDEO_ENCODER_RATE_CONTROL_MODE capRateControlModeData =