Enum
VkVideoDecodeCapabilityFlagBitsKHR
Video decode capability flags
Bits which may be set in VkVideoDecodeCapabilitiesKHR::flags,
indicating the decoding capabilities supported, are:
typedef enum VkVideoDecodeCapabilityFlagBitsKHR {
VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_COINCIDE_BIT_KHR = 0x00000001,
VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_DISTINCT_BIT_KHR = 0x00000002,
} VkVideoDecodeCapabilityFlagBitsKHR;
pub struct VideoDecodeCapabilityFlagBitsKHR(u32);
impl VideoDecodeCapabilityFlagBitsKHR {
pub const DPB_AND_OUTPUT_COINCIDE: Self = 0x00000001;
pub const DPB_AND_OUTPUT_DISTINCT: Self = 0x00000002;
}
VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_COINCIDE_BIT_KHRspecifies support for using the same video picture resource as the reconstructed picture and decode output picture in a video decode operation.VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_DISTINCT_BIT_KHRspecifies support for using distinct video picture resources as the reconstructed picture and decode output picture in a video decode operation.Some video profiles allow using distinct video picture resources as the reconstructed picture and decode output picture in specific video decode operations even when the video decode profile does not supportVK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_DISTINCT_BIT_KHR. Even if the implementation only reports coincide, the decode output picture for film grain enabled frames must be a different video picture resource from the reconstructed picture because film grain is applied outside of the coding loop.
Implementations are only required to support one of
VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_COINCIDE_BIT_KHR and
VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_DISTINCT_BIT_KHR.
Accordingly, applications should handle both cases to maximize portability.
If both
VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_COINCIDE_BIT_KHR and
VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_DISTINCT_BIT_KHR are
supported, an application can choose to create separate images for decode
DPB and decode output.
E.g. in cases when linear tiling is preferred (and supported) for the decode
output picture and the DPB requires optimal tiling, this avoids the need for
a separate copy at the expense of additional memory bandwidth requirements
during decoding.Type
Enum