C Specification
Bits which may be set in
VkVideoEncodeH265CapabilitiesEXT::inputModeFlags
, indicating the
commmand buffer input granularities supported by the implementation, are:
// Provided by VK_EXT_video_encode_h265
typedef enum VkVideoEncodeH265InputModeFlagBitsEXT {
VK_VIDEO_ENCODE_H265_INPUT_MODE_FRAME_BIT_EXT = 0x00000001,
VK_VIDEO_ENCODE_H265_INPUT_MODE_SLICE_SEGMENT_BIT_EXT = 0x00000002,
VK_VIDEO_ENCODE_H265_INPUT_MODE_NON_VCL_BIT_EXT = 0x00000004,
} VkVideoEncodeH265InputModeFlagBitsEXT;
Description
-
VK_VIDEO_ENCODE_H265_INPUT_MODE_FRAME_BIT_EXT
indicates that a single command buffer must at least encode an entire frame. Any non-VCL NALUs must be encoded using the same command buffer as the frame ifVK_VIDEO_ENCODE_H265_INPUT_MODE_NON_VCL_BIT_EXT
is not supported. -
VK_VIDEO_ENCODE_H265_INPUT_MODE_SLICE_SEGMENT_BIT_EXT
indicates that a single command buffer must at least encode a single slice segment. Any non-VCL NALUs must be encoded using the same command buffer as the first slice segment of the frame ifVK_VIDEO_ENCODE_H265_INPUT_MODE_NON_VCL_BIT_EXT
is not supported. -
VK_VIDEO_ENCODE_H265_INPUT_MODE_NON_VCL_BIT_EXT
indicates that a single command buffer may encode a non-VCL NALU by itself.
An implementation must support at least one of
VK_VIDEO_ENCODE_H265_INPUT_MODE_FRAME_BIT_EXT
or
VK_VIDEO_ENCODE_H265_INPUT_MODE_SLICE_SEGMENT_BIT_EXT
.
If VK_VIDEO_ENCODE_H265_INPUT_MODE_SLICE_SEGMENT_BIT_EXT
is not
supported, the following two additional restrictions apply for frames
encoded with multiple slice segments.
First, all frame slice segments must have the same pReferenceFinalLists.
Second, the order in which slice segments appear in
VkVideoEncodeH265VclFrameInfoEXT::pNaluSliceSegmentEntries
or in
the command buffer must match the placement order of the slice segments in
the frame.
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.