VkVideoProfileInfoKHR
The VkVideoProfileInfoKHR
structure is defined as follows:
typedef struct VkVideoProfileInfoKHR {
VkStructureType sType;
const void* pNext;
VkVideoCodecOperationFlagBitsKHR videoCodecOperation;
VkVideoChromaSubsamplingFlagsKHR chromaSubsampling;
VkVideoComponentBitDepthFlagsKHR lumaBitDepth;
VkVideoComponentBitDepthFlagsKHR chromaBitDepth;
} VkVideoProfileInfoKHR;
sType
is a VkStructureType value identifying this structure.pNext
isNULL
or a pointer to a structure extending this structure.videoCodecOperation
is a VkVideoCodecOperationFlagBitsKHR value specifying a video codec operation.chromaSubsampling
is a bitmask of VkVideoChromaSubsamplingFlagBitsKHR specifying video chroma subsampling information.lumaBitDepth
is a bitmask of VkVideoComponentBitDepthFlagBitsKHR specifying video luma bit depth information.chromaBitDepth
is a bitmask of VkVideoComponentBitDepthFlagBitsKHR specifying video chroma bit depth information.
Video profiles are provided as input to video capability queries such as vkGetPhysicalDeviceVideoCapabilitiesKHR or vkGetPhysicalDeviceVideoFormatPropertiesKHR, as well as when creating resources to be used by video coding operations such as images, buffers, query pools, and video sessions.
The full description of a video profile is specified by an instance of this
structure, and the codec-specific and auxiliary structures provided in its
pNext
chain.
When this structure is specified as an input parameter to
vkGetPhysicalDeviceVideoCapabilitiesKHR, or through the
pProfiles
member of a VkVideoProfileListInfoKHR structure in the
pNext
chain of the input parameter of a query command such as
vkGetPhysicalDeviceVideoFormatPropertiesKHR or
vkGetPhysicalDeviceImageFormatProperties2, the following error codes
indicate specific causes of the failure of the query operation:
VK_ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR
indicates that the requested video picture layout (e.g. through thepictureLayout
member of a VkVideoDecodeH264ProfileInfoKHR structure included in thepNext
chain ofVkVideoProfileInfoKHR
) is not supported.VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR
indicates that a video profile operation specified byvideoCodecOperation
is not supported.VK_ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR
indicates that video format parameters specified bychromaSubsampling
,lumaBitDepth
, orchromaBitDepth
are not supported.VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR
indicates that the codec-specific parameters corresponding to the video codec operation are not supported.
Valid Usage
VUID-VkVideoProfileInfoKHR-chromaSubsampling-07013
chromaSubsampling
must have a single bit set
VUID-VkVideoProfileInfoKHR-lumaBitDepth-07014
lumaBitDepth
must have a single bit set
VUID-VkVideoProfileInfoKHR-chromaSubsampling-07015
If chromaSubsampling
is not
VK_VIDEO_CHROMA_SUBSAMPLING_MONOCHROME_BIT_KHR
, then
chromaBitDepth
must have a single bit set
VUID-VkVideoProfileInfoKHR-videoCodecOperation-07179
If videoCodecOperation
is
VK_VIDEO_CODEC_OPERATION_DECODE_H264_BIT_KHR
, then the pNext
chain must include a VkVideoDecodeH264ProfileInfoKHR structure
VUID-VkVideoProfileInfoKHR-videoCodecOperation-07180
If videoCodecOperation
is
VK_VIDEO_CODEC_OPERATION_DECODE_H265_BIT_KHR
, then the pNext
chain must include a VkVideoDecodeH265ProfileInfoKHR structure
VUID-VkVideoProfileInfoKHR-videoCodecOperation-09256
If videoCodecOperation
is
VK_VIDEO_CODEC_OPERATION_DECODE_AV1_BIT_KHR
, then the pNext
chain must include a VkVideoDecodeAV1ProfileInfoKHR structure
VUID-VkVideoProfileInfoKHR-videoCodecOperation-07181
If videoCodecOperation
is
VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_KHR
, then the pNext
chain must include a VkVideoEncodeH264ProfileInfoKHR structure
VUID-VkVideoProfileInfoKHR-videoCodecOperation-07182
If videoCodecOperation
is
VK_VIDEO_CODEC_OPERATION_ENCODE_H265_BIT_KHR
, then the pNext
chain must include a VkVideoEncodeH265ProfileInfoKHR structure
Valid Usage (Implicit)
VUID-VkVideoProfileInfoKHR-sType-sType
sType
must be VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR
VUID-VkVideoProfileInfoKHR-videoCodecOperation-parameter
videoCodecOperation
must be a valid VkVideoCodecOperationFlagBitsKHR value
VUID-VkVideoProfileInfoKHR-chromaSubsampling-parameter
chromaSubsampling
must be a valid combination of VkVideoChromaSubsamplingFlagBitsKHR values
VUID-VkVideoProfileInfoKHR-chromaSubsampling-requiredbitmask
chromaSubsampling
must not be 0
VUID-VkVideoProfileInfoKHR-lumaBitDepth-parameter
lumaBitDepth
must be a valid combination of VkVideoComponentBitDepthFlagBitsKHR values
VUID-VkVideoProfileInfoKHR-lumaBitDepth-requiredbitmask
lumaBitDepth
must not be 0
VUID-VkVideoProfileInfoKHR-chromaBitDepth-parameter
chromaBitDepth
must be a valid combination of VkVideoComponentBitDepthFlagBitsKHR values