Class VkVideoEncodeAV1RateControlLayerInfoKHR

java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkVideoEncodeAV1RateControlLayerInfoKHR>
org.lwjgl.vulkan.VkVideoEncodeAV1RateControlLayerInfoKHR
All Implemented Interfaces:
AutoCloseable, org.lwjgl.system.NativeResource, org.lwjgl.system.Pointer

public class VkVideoEncodeAV1RateControlLayerInfoKHR extends org.lwjgl.system.Struct<VkVideoEncodeAV1RateControlLayerInfoKHR> implements org.lwjgl.system.NativeResource
Structure describing AV1 per-layer rate control parameters.
Description

When used, the values in minQIndex and maxQIndex guarantee that the effective quantizer index values used by the implementation will respect those lower and upper bounds, respectively. However, limiting the range of quantizer index values that the implementation is able to use will also limit the capabilities of the implementation’s rate control algorithm to comply to other constraints. In particular, the implementation may not be able to comply to the following:

Note

In general, applications need to configure rate control parameters appropriately in order to be able to get the desired rate control behavior, as described in the Video Encode Rate Control section.

When an instance of this structure is included in the pNext chain of a VkVideoEncodeRateControlLayerInfoKHR structure specified in one of the elements of the pLayers array member of the VkVideoEncodeRateControlInfoKHR structure passed to the CmdControlVideoCodingKHR command, VkVideoCodingControlInfoKHR::flags includes VIDEO_CODING_CONTROL_ENCODE_RATE_CONTROL_BIT_KHR, and the bound video session was created with the video codec operation VIDEO_CODEC_OPERATION_ENCODE_AV1_BIT_KHR, it specifies the AV1-specific rate control parameters of the rate control layer corresponding to that element of pLayers.

Valid Usage
Valid Usage (Implicit)
See Also

VkVideoEncodeAV1FrameSizeKHR, VkVideoEncodeAV1QIndexKHR

Layout


 struct VkVideoEncodeAV1RateControlLayerInfoKHR {
     VkStructureType sType();
     void const * pNext();
     VkBool32 useMinQIndex();
     VkVideoEncodeAV1QIndexKHR minQIndex();
     VkBool32 useMaxQIndex();
     VkVideoEncodeAV1QIndexKHR maxQIndex();
     VkBool32 useMaxFrameSize();
     VkVideoEncodeAV1FrameSizeKHR maxFrameSize();
 }