C Specification
When calling vkGetPhysicalDeviceVideoCapabilitiesKHR with
pVideoProfile->videoCodecOperation
specified as
VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_EXT
, the
VkVideoEncodeH264CapabilitiesEXT structure must be included in the
pNext
chain of the VkVideoCapabilitiesKHR structure to retrieve
more capabilities specific to H.264 video encoding.
The VkVideoEncodeH264CapabilitiesEXT structure is defined as:
// Provided by VK_EXT_video_encode_h264
typedef struct VkVideoEncodeH264CapabilitiesEXT {
VkStructureType sType;
void* pNext;
VkVideoEncodeH264CapabilityFlagsEXT flags;
VkVideoEncodeH264InputModeFlagsEXT inputModeFlags;
VkVideoEncodeH264OutputModeFlagsEXT outputModeFlags;
uint8_t maxPPictureL0ReferenceCount;
uint8_t maxBPictureL0ReferenceCount;
uint8_t maxL1ReferenceCount;
VkBool32 motionVectorsOverPicBoundariesFlag;
uint32_t maxBytesPerPicDenom;
uint32_t maxBitsPerMbDenom;
uint32_t log2MaxMvLengthHorizontal;
uint32_t log2MaxMvLengthVertical;
} VkVideoEncodeH264CapabilitiesEXT;
Members
-
sType
is the type of this structure. -
pNext
isNULL
or a pointer to a structure extending this structure. -
flags
is a bitmask of VkVideoEncodeH264CapabilityFlagBitsEXT describing supported encoding tools. -
inputModeFlags
is a bitmask of VkVideoEncodeH264InputModeFlagBitsEXT describing supported command buffer input granularities/modes. -
outputModeFlags
is a bitmask of VkVideoEncodeH264OutputModeFlagBitsEXT describing supported output (bitstream size reporting) granularities/modes. -
maxPPictureL0ReferenceCount
reports the maximum number of reference pictures the implementation supports in the reference list L0 for P pictures. -
maxBPictureL0ReferenceCount
reports the maximum number of reference pictures the implementation supports in the reference list L0 for B pictures. The reported value is0
if encoding of B pictures is not supported. -
maxL1ReferenceCount
reports the maximum number of reference pictures the implementation supports in the reference list L1 if encoding of B pictures is supported. The reported value is0
if encoding of B pictures is not supported. -
motionVectorsOverPicBoundariesFlag
ifVK_TRUE
, indicates motion_vectors_over_pic_boundaries_flag will be enabled if bitstream_restriction_flag is enabled in StdVideoH264SpsVuiFlags. -
maxBytesPerPicDenom
reports the value that will be used for max_bytes_per_pic_denom if bitstream_restriction_flag is enabled in StdVideoH264SpsVuiFlags. -
maxBitsPerMbDenom
reports the value that will be used for max_bits_per_mb_denom if bitstream_restriction_flag is enabled in StdVideoH264SpsVuiFlags. -
log2MaxMvLengthHorizontal
reports the value that will be used for log2_max_mv_length_horizontal if bitstream_restriction_flag is enabled in StdVideoH264SpsVuiFlags. -
log2MaxMvLengthVertical
reports the value that will be used for log2_max_mv_length_vertical if bitstream_restriction_flag is enabled in StdVideoH264SpsVuiFlags.
Description
When vkGetPhysicalDeviceVideoCapabilitiesKHR is called to query the
capabilities with parameter videoCodecOperation
specified as
VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_EXT
, a
VkVideoEncodeH264CapabilitiesEXT
structure can be chained to
VkVideoCapabilitiesKHR to retrieve H.264 extension specific
capabilities.
Document Notes
For more information, see the Vulkan Specification
This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.