diff --git a/src/gallium/frontends/mediafoundation/encoder_capabilities.cpp b/src/gallium/frontends/mediafoundation/encoder_capabilities.cpp index d08f9386920..5713faee23d 100644 --- a/src/gallium/frontends/mediafoundation/encoder_capabilities.cpp +++ b/src/gallium/frontends/mediafoundation/encoder_capabilities.cpp @@ -165,4 +165,9 @@ encoder_capabilities::initialize( pipe_screen *pScreen, pipe_video_profile video videoProfile, PIPE_VIDEO_ENTRYPOINT_ENCODE, PIPE_VIDEO_CAP_ENC_SPATIAL_ADAPTIVE_QUANTIZATION ); + + m_bHWSupportReadableReconstructedPicture = pScreen->get_video_param( pScreen, + videoProfile, + PIPE_VIDEO_ENTRYPOINT_ENCODE, + PIPE_VIDEO_CAP_ENC_READABLE_RECONSTRUCTED_PICTURE ) != 0; } diff --git a/src/gallium/frontends/mediafoundation/encoder_capabilities.h b/src/gallium/frontends/mediafoundation/encoder_capabilities.h index 2e137fab50f..842c91ee4eb 100644 --- a/src/gallium/frontends/mediafoundation/encoder_capabilities.h +++ b/src/gallium/frontends/mediafoundation/encoder_capabilities.h @@ -140,4 +140,7 @@ class encoder_capabilities // Spatial Adaptive Quantization union pipe_enc_cap_spatial_adaptive_quantization m_HWSupportSpatialAdaptiveQuantization = {}; + + // PIPE_VIDEO_CAP_ENC_READABLE_RECONSTRUCTED_PICTURE + bool m_bHWSupportReadableReconstructedPicture = false; };