C Specification
The VkVideoEncodeRateControlInfoKHR
structure is defined as:
// Provided by VK_KHR_video_encode_queue
typedef struct VkVideoEncodeRateControlInfoKHR {
VkStructureType sType;
const void* pNext;
VkVideoEncodeRateControlFlagsKHR flags;
VkVideoEncodeRateControlModeFlagBitsKHR rateControlMode;
uint32_t layerCount;
const VkVideoEncodeRateControlLayerInfoKHR* pLayers;
} VkVideoEncodeRateControlInfoKHR;
Members
-
sType
is the type of this structure. -
pNext
isNULL
or a pointer to a structure extending this structure. -
flags
is reserved for future use. -
rateControlMode
is a VkVideoEncodeRateControlModeFlagBitsKHR value specifying the encode stream rate control mode. -
layerCount
specifies the number of rate control layers in the video encode stream. -
pLayers
is a pointer to an array of VkVideoEncodeRateControlLayerInfoKHR structures specifying the rate control configurations oflayerCount
rate control layers.
Description
Including this structure in the pNext
chain of
VkVideoCodingControlInfoKHR and including
VK_VIDEO_CODING_CONTROL_ENCODE_RATE_CONTROL_BIT_KHR
in
VkVideoCodingControlInfoKHR::flags
will define stream rate
control settings for video encoding.
Additional structures providing codec-specific rate control parameters may
need to be included in the pNext
chain of
VkVideoCodingControlInfoKHR
depending on the codec profile the bound
video session was created with and the parameters specified in
VkVideoEncodeRateControlInfoKHR
(see Video
Coding Control).
To ensure that the video session is properly initialized with stream-level rate control settings, the application must call vkCmdControlVideoCodingKHR with stream-level rate control settings at least once in execution order before the first vkCmdEncodeVideoKHR command that is executed after video session reset. If not provided, default implementation-specific stream rate control settings will be used.
Stream rate control settings can also be re-initialized during an active
video encoding session.
The re-initialization takes effect whenever the
VkVideoEncodeRateControlInfoKHR
structure is included in the
pNext
chain of the VkVideoCodingControlInfoKHR structure in the
call to vkCmdControlVideoCodingKHR, and only impacts
vkCmdEncodeVideoKHR operations that follow in execution order.
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.