From bf73d5551ab24b2aca5951854e52f27942783517 Mon Sep 17 00:00:00 2001 From: Sil Vilerino Date: Mon, 20 Nov 2023 22:47:29 -0500 Subject: [PATCH] d3d12: Implement PIPE_VIDEO_CAP_ENC_H264_SUPPORTS_CABAC_ENCODE Reviewed-by: Jesse Natalie Part-of: --- src/gallium/drivers/d3d12/d3d12_video_screen.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/gallium/drivers/d3d12/d3d12_video_screen.cpp b/src/gallium/drivers/d3d12/d3d12_video_screen.cpp index 0ab98617fdf..df5607f039c 100644 --- a/src/gallium/drivers/d3d12/d3d12_video_screen.cpp +++ b/src/gallium/drivers/d3d12/d3d12_video_screen.cpp @@ -1712,6 +1712,7 @@ d3d12_screen_get_video_param_encode(struct pipe_screen *pscreen, case PIPE_VIDEO_CAP_ENC_MAX_TILE_COLS: case PIPE_VIDEO_CAP_ENC_INTRA_REFRESH_MAX_DURATION: case PIPE_VIDEO_CAP_ENC_H264_DISABLE_DBK_FILTER_MODES_SUPPORTED: + case PIPE_VIDEO_CAP_ENC_H264_SUPPORTS_CABAC_ENCODE: { if (d3d12_has_video_encode_support(pscreen, profile, @@ -1772,6 +1773,9 @@ d3d12_screen_get_video_param_encode(struct pipe_screen *pscreen, with value = 0 */ return codec_specific_support.hevc_support.hevc_block_sizes.value; + } else if (param == PIPE_VIDEO_CAP_ENC_H264_SUPPORTS_CABAC_ENCODE) { + return (codec_specific_support.h264_support.d3d12_caps.SupportFlags & + D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_SUPPORT_H264_FLAG_CABAC_ENCODING_SUPPORT); } else if (param == PIPE_VIDEO_CAP_ENC_HEVC_PREDICTION_DIRECTION) { if (PIPE_VIDEO_FORMAT_HEVC == u_reduce_video_profile(profile)) return codec_specific_support.hevc_support.prediction_direction;