Package org.lwjgl.vulkan
Class VkVideoEncodeInfoKHR
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkVideoEncodeInfoKHR>
org.lwjgl.vulkan.VkVideoEncodeInfoKHR
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkVideoEncodeInfoKHR
extends org.lwjgl.system.Struct<VkVideoEncodeInfoKHR>
implements org.lwjgl.system.NativeResource
Structure specifying video encode parameters.
Valid Usage
dstBuffermust have been created withBUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHRsetdstBufferOffsetmust be less than the size ofdstBufferdstBufferRangemust be less than or equal to the size ofdstBufferminusdstBufferOffset- If
pSetupReferenceSlotis notNULL, then itsslotIndexmember must not be negative - If
pSetupReferenceSlotis notNULL, then itspPictureResourcemust not beNULL - The
slotIndexmember of each element ofpReferenceSlotsmust not be negative - The
pPictureResourcemember of each element ofpReferenceSlotsmust not beNULL
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR- Each
pNextmember of any structure (including this one) in thepNextchain must be eitherNULLor a pointer to a valid instance ofVkVideoEncodeAV1PictureInfoKHR,VkVideoEncodeH264PictureInfoKHR,VkVideoEncodeH265PictureInfoKHR,VkVideoEncodeQuantizationMapInfoKHR, orVkVideoInlineQueryInfoKHR - The
sTypevalue of each struct in thepNextchain must be unique flagsmust be a valid combination ofVkVideoEncodeFlagBitsKHRvaluesdstBuffermust be a validVkBufferhandlesrcPictureResourcemust be a validVkVideoPictureResourceInfoKHRstructure- If
pSetupReferenceSlotis notNULL,pSetupReferenceSlotmust be a valid pointer to a validVkVideoReferenceSlotInfoKHRstructure - If
referenceSlotCountis not 0,pReferenceSlotsmust be a valid pointer to an array ofreferenceSlotCountvalidVkVideoReferenceSlotInfoKHRstructures
See Also
VkVideoPictureResourceInfoKHR, VkVideoReferenceSlotInfoKHR, CmdEncodeVideoKHR
Layout
struct VkVideoEncodeInfoKHR {
VkStructureType sType();
void const * pNext();
VkVideoEncodeFlagsKHR flags();
VkBuffer dstBuffer();
VkDeviceSize dstBufferOffset();
VkDeviceSize dstBufferRange();
VkVideoPictureResourceInfoKHR srcPictureResource();
VkVideoReferenceSlotInfoKHR const * pSetupReferenceSlot();
uint32_t referenceSlotCount();
VkVideoReferenceSlotInfoKHR const * pReferenceSlots();
uint32_t precedingExternallyEncodedBytes();
}-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class org.lwjgl.system.Struct
org.lwjgl.system.Struct.StructValidationNested classes/interfaces inherited from interface org.lwjgl.system.Pointer
org.lwjgl.system.Pointer.Default -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intThe struct alignment in bytes.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct size in bytes.static final intThe struct member offsets.static final intThe struct member offsets.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionVkVideoEncodeInfoKHR(ByteBuffer container) Creates aVkVideoEncodeInfoKHRinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptionstatic VkVideoEncodeInfoKHRcalloc()Returns a newVkVideoEncodeInfoKHRinstance allocated withmemCalloc.static VkVideoEncodeInfoKHR.Buffercalloc(int capacity) Returns a newVkVideoEncodeInfoKHR.Bufferinstance allocated withmemCalloc.static VkVideoEncodeInfoKHR.Buffercalloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkVideoEncodeInfoKHR.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkVideoEncodeInfoKHRcalloc(org.lwjgl.system.MemoryStack stack) Returns a newVkVideoEncodeInfoKHRinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkVideoEncodeInfoKHRcreate()Returns a newVkVideoEncodeInfoKHRinstance allocated withBufferUtils.static VkVideoEncodeInfoKHR.Buffercreate(int capacity) Returns a newVkVideoEncodeInfoKHR.Bufferinstance allocated withBufferUtils.static VkVideoEncodeInfoKHRcreate(long address) Returns a newVkVideoEncodeInfoKHRinstance for the specified memory address.static VkVideoEncodeInfoKHR.Buffercreate(long address, int capacity) Create aVkVideoEncodeInfoKHR.Bufferinstance at the specified memory.static @Nullable VkVideoEncodeInfoKHRcreateSafe(long address) static @Nullable VkVideoEncodeInfoKHR.BuffercreateSafe(long address, int capacity) longthe destination video bitstream buffer to write the encoded bitstream to.dstBuffer(long value) Sets the specified value to thedstBuffer()field.longthe starting offset in bytes from the start ofdstBufferto write the encoded bitstream to.dstBufferOffset(long value) Sets the specified value to thedstBufferOffset()field.longthe maximum bitstream size in bytes that can be written todstBuffer, starting fromdstBufferOffset.dstBufferRange(long value) Sets the specified value to thedstBufferRange()field.intflags()a bitmask ofVkVideoEncodeFlagBitsKHRindicating video encode command flags.flags(int value) Sets the specified value to theflags()field.static VkVideoEncodeInfoKHRmalloc()Returns a newVkVideoEncodeInfoKHRinstance allocated withmemAlloc.static VkVideoEncodeInfoKHR.Buffermalloc(int capacity) Returns a newVkVideoEncodeInfoKHR.Bufferinstance allocated withmemAlloc.static VkVideoEncodeInfoKHR.Buffermalloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkVideoEncodeInfoKHR.Bufferinstance allocated on the specifiedMemoryStack.static VkVideoEncodeInfoKHRmalloc(org.lwjgl.system.MemoryStack stack) Returns a newVkVideoEncodeInfoKHRinstance allocated on the specifiedMemoryStack.static longndstBuffer(long struct) Unsafe version ofdstBuffer().static voidndstBuffer(long struct, long value) Unsafe version ofdstBuffer.static longndstBufferOffset(long struct) Unsafe version ofdstBufferOffset().static voidndstBufferOffset(long struct, long value) Unsafe version ofdstBufferOffset.static longndstBufferRange(long struct) Unsafe version ofdstBufferRange().static voidndstBufferRange(long struct, long value) Unsafe version ofdstBufferRange.static intnflags(long struct) Unsafe version offlags().static voidnflags(long struct, int value) Unsafe version offlags.static longnpNext(long struct) Unsafe version ofpNext().static voidnpNext(long struct, long value) Unsafe version ofpNext.static intnprecedingExternallyEncodedBytes(long struct) Unsafe version ofprecedingExternallyEncodedBytes().static voidnprecedingExternallyEncodedBytes(long struct, int value) Unsafe version ofprecedingExternallyEncodedBytes.static @Nullable VkVideoReferenceSlotInfoKHR.BuffernpReferenceSlots(long struct) Unsafe version ofpReferenceSlots().static voidnpReferenceSlots(long struct, @Nullable VkVideoReferenceSlotInfoKHR.Buffer value) Unsafe version ofpReferenceSlots.static @Nullable VkVideoReferenceSlotInfoKHRnpSetupReferenceSlot(long struct) Unsafe version ofpSetupReferenceSlot().static voidnpSetupReferenceSlot(long struct, @Nullable VkVideoReferenceSlotInfoKHR value) Unsafe version ofpSetupReferenceSlot.static intnreferenceSlotCount(long struct) Unsafe version ofreferenceSlotCount().static voidnreferenceSlotCount(long struct, int value) Sets the specified value to thereferenceSlotCountfield of the specifiedstruct.nsrcPictureResource(long struct) Unsafe version ofsrcPictureResource().static voidnsrcPictureResource(long struct, VkVideoPictureResourceInfoKHR value) Unsafe version ofsrcPictureResource.static intnsType(long struct) Unsafe version ofsType().static voidnsType(long struct, int value) Unsafe version ofsType.longpNext()a pointer to a structure extending this structure.pNext(long value) Sets the specified value to thepNext()field.Prepends the specifiedVkVideoEncodeAV1PictureInfoKHRvalue to thepNextchain.Prepends the specifiedVkVideoEncodeH264PictureInfoKHRvalue to thepNextchain.Prepends the specifiedVkVideoEncodeH265PictureInfoKHRvalue to thepNextchain.Prepends the specifiedVkVideoEncodeQuantizationMapInfoKHRvalue to thepNextchain.pNext(VkVideoInlineQueryInfoKHR value) Prepends the specifiedVkVideoInlineQueryInfoKHRvalue to thepNextchain.intthe number of bytes externally encoded by the application to the video bitstream and is used to update the internal state of the implementation’s rate control algorithm to account for the bitrate budget consumed by these externally encoded bytes.precedingExternallyEncodedBytes(int value) Sets the specified value to theprecedingExternallyEncodedBytes()field.@Nullable VkVideoReferenceSlotInfoKHR.BufferNULLor a pointer to an array ofVkVideoReferenceSlotInfoKHRstructures describing the DPB slots and corresponding reference picture resources to use in this video encode operation (the set of active reference pictures).pReferenceSlots(@Nullable VkVideoReferenceSlotInfoKHR.Buffer value) Sets the address of the specifiedVkVideoReferenceSlotInfoKHR.Bufferto thepReferenceSlots()field.@Nullable VkVideoReferenceSlotInfoKHRNULLor a pointer to aVkVideoReferenceSlotInfoKHRstructure specifying the reconstructed picture information.pSetupReferenceSlot(@Nullable VkVideoReferenceSlotInfoKHR value) Sets the address of the specifiedVkVideoReferenceSlotInfoKHRto thepSetupReferenceSlot()field.intthe number of elements in thepReferenceSlotsarray.set(int sType, long pNext, int flags, long dstBuffer, long dstBufferOffset, long dstBufferRange, VkVideoPictureResourceInfoKHR srcPictureResource, @Nullable VkVideoReferenceSlotInfoKHR pSetupReferenceSlot, @Nullable VkVideoReferenceSlotInfoKHR.Buffer pReferenceSlots, int precedingExternallyEncodedBytes) Initializes this struct with the specified values.set(VkVideoEncodeInfoKHR src) Copies the specified struct data to this struct.intsizeof()the video picture resource to use as the encode input picture.Passes thesrcPictureResource()field to the specifiedConsumer.Copies the specifiedVkVideoPictureResourceInfoKHRto thesrcPictureResource()field.intsType()aVkStructureTypevalue identifying this structure.sType(int value) Sets the specified value to thesType()field.Sets theSTRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHRvalue to thesType()field.static voidvalidate(long struct) Validates pointer members that should not beNULL.Methods inherited from class org.lwjgl.system.Struct
clear, free, isNull, validate, validateMethods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toStringMethods inherited from interface org.lwjgl.system.NativeResource
close, free
-
Field Details
-
SIZEOF
public static final int SIZEOFThe struct size in bytes. -
ALIGNOF
public static final int ALIGNOFThe struct alignment in bytes. -
STYPE
public static final int STYPEThe struct member offsets. -
PNEXT
public static final int PNEXTThe struct member offsets. -
FLAGS
public static final int FLAGSThe struct member offsets. -
DSTBUFFER
public static final int DSTBUFFERThe struct member offsets. -
DSTBUFFEROFFSET
public static final int DSTBUFFEROFFSETThe struct member offsets. -
DSTBUFFERRANGE
public static final int DSTBUFFERRANGEThe struct member offsets. -
SRCPICTURERESOURCE
public static final int SRCPICTURERESOURCEThe struct member offsets. -
PSETUPREFERENCESLOT
public static final int PSETUPREFERENCESLOTThe struct member offsets. -
REFERENCESLOTCOUNT
public static final int REFERENCESLOTCOUNTThe struct member offsets. -
PREFERENCESLOTS
public static final int PREFERENCESLOTSThe struct member offsets. -
PRECEDINGEXTERNALLYENCODEDBYTES
public static final int PRECEDINGEXTERNALLYENCODEDBYTESThe struct member offsets.
-
-
Constructor Details
-
VkVideoEncodeInfoKHR
Creates aVkVideoEncodeInfoKHRinstance at the current position of the specifiedByteBuffercontainer. Changes to the buffer's content will be visible to the struct instance and vice versa.The created instance holds a strong reference to the container object.
-
-
Method Details
-
sizeof
public int sizeof()- Specified by:
sizeofin classorg.lwjgl.system.Struct<VkVideoEncodeInfoKHR>
-
sType
public int sType()aVkStructureTypevalue identifying this structure. -
pNext
public long pNext()a pointer to a structure extending this structure. -
flags
public int flags()a bitmask ofVkVideoEncodeFlagBitsKHRindicating video encode command flags. -
dstBuffer
public long dstBuffer()the destination video bitstream buffer to write the encoded bitstream to. -
dstBufferOffset
public long dstBufferOffset()the starting offset in bytes from the start ofdstBufferto write the encoded bitstream to. -
dstBufferRange
public long dstBufferRange()the maximum bitstream size in bytes that can be written todstBuffer, starting fromdstBufferOffset. -
srcPictureResource
the video picture resource to use as the encode input picture. -
pSetupReferenceSlot
NULLor a pointer to aVkVideoReferenceSlotInfoKHRstructure specifying the reconstructed picture information. -
referenceSlotCount
public int referenceSlotCount()the number of elements in thepReferenceSlotsarray. -
pReferenceSlots
NULLor a pointer to an array ofVkVideoReferenceSlotInfoKHRstructures describing the DPB slots and corresponding reference picture resources to use in this video encode operation (the set of active reference pictures). -
precedingExternallyEncodedBytes
public int precedingExternallyEncodedBytes()the number of bytes externally encoded by the application to the video bitstream and is used to update the internal state of the implementation’s rate control algorithm to account for the bitrate budget consumed by these externally encoded bytes. -
sType
Sets the specified value to thesType()field. -
sType$Default
Sets theSTRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHRvalue to thesType()field. -
pNext
Sets the specified value to thepNext()field. -
pNext
Prepends the specifiedVkVideoEncodeAV1PictureInfoKHRvalue to thepNextchain. -
pNext
Prepends the specifiedVkVideoEncodeH264PictureInfoKHRvalue to thepNextchain. -
pNext
Prepends the specifiedVkVideoEncodeH265PictureInfoKHRvalue to thepNextchain. -
pNext
Prepends the specifiedVkVideoEncodeQuantizationMapInfoKHRvalue to thepNextchain. -
pNext
Prepends the specifiedVkVideoInlineQueryInfoKHRvalue to thepNextchain. -
flags
Sets the specified value to theflags()field. -
dstBuffer
Sets the specified value to thedstBuffer()field. -
dstBufferOffset
Sets the specified value to thedstBufferOffset()field. -
dstBufferRange
Sets the specified value to thedstBufferRange()field. -
srcPictureResource
Copies the specifiedVkVideoPictureResourceInfoKHRto thesrcPictureResource()field. -
srcPictureResource
Passes thesrcPictureResource()field to the specifiedConsumer. -
pSetupReferenceSlot
Sets the address of the specifiedVkVideoReferenceSlotInfoKHRto thepSetupReferenceSlot()field. -
pReferenceSlots
Sets the address of the specifiedVkVideoReferenceSlotInfoKHR.Bufferto thepReferenceSlots()field. -
precedingExternallyEncodedBytes
Sets the specified value to theprecedingExternallyEncodedBytes()field. -
set
public VkVideoEncodeInfoKHR set(int sType, long pNext, int flags, long dstBuffer, long dstBufferOffset, long dstBufferRange, VkVideoPictureResourceInfoKHR srcPictureResource, @Nullable VkVideoReferenceSlotInfoKHR pSetupReferenceSlot, @Nullable VkVideoReferenceSlotInfoKHR.Buffer pReferenceSlots, int precedingExternallyEncodedBytes) Initializes this struct with the specified values. -
set
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
Returns a newVkVideoEncodeInfoKHRinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkVideoEncodeInfoKHRinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkVideoEncodeInfoKHRinstance allocated withBufferUtils. -
create
Returns a newVkVideoEncodeInfoKHRinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVkVideoEncodeInfoKHR.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkVideoEncodeInfoKHR.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkVideoEncodeInfoKHR.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aVkVideoEncodeInfoKHR.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
-
malloc
Returns a newVkVideoEncodeInfoKHRinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newVkVideoEncodeInfoKHRinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
Returns a newVkVideoEncodeInfoKHR.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
Returns a newVkVideoEncodeInfoKHR.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
nsType
public static int nsType(long struct) Unsafe version ofsType(). -
npNext
public static long npNext(long struct) Unsafe version ofpNext(). -
nflags
public static int nflags(long struct) Unsafe version offlags(). -
ndstBuffer
public static long ndstBuffer(long struct) Unsafe version ofdstBuffer(). -
ndstBufferOffset
public static long ndstBufferOffset(long struct) Unsafe version ofdstBufferOffset(). -
ndstBufferRange
public static long ndstBufferRange(long struct) Unsafe version ofdstBufferRange(). -
nsrcPictureResource
Unsafe version ofsrcPictureResource(). -
npSetupReferenceSlot
Unsafe version ofpSetupReferenceSlot(). -
nreferenceSlotCount
public static int nreferenceSlotCount(long struct) Unsafe version ofreferenceSlotCount(). -
npReferenceSlots
Unsafe version ofpReferenceSlots(). -
nprecedingExternallyEncodedBytes
public static int nprecedingExternallyEncodedBytes(long struct) Unsafe version ofprecedingExternallyEncodedBytes(). -
nsType
public static void nsType(long struct, int value) Unsafe version ofsType. -
npNext
public static void npNext(long struct, long value) Unsafe version ofpNext. -
nflags
public static void nflags(long struct, int value) Unsafe version offlags. -
ndstBuffer
public static void ndstBuffer(long struct, long value) Unsafe version ofdstBuffer. -
ndstBufferOffset
public static void ndstBufferOffset(long struct, long value) Unsafe version ofdstBufferOffset. -
ndstBufferRange
public static void ndstBufferRange(long struct, long value) Unsafe version ofdstBufferRange. -
nsrcPictureResource
Unsafe version ofsrcPictureResource. -
npSetupReferenceSlot
Unsafe version ofpSetupReferenceSlot. -
nreferenceSlotCount
public static void nreferenceSlotCount(long struct, int value) Sets the specified value to thereferenceSlotCountfield of the specifiedstruct. -
npReferenceSlots
public static void npReferenceSlots(long struct, @Nullable VkVideoReferenceSlotInfoKHR.Buffer value) Unsafe version ofpReferenceSlots. -
nprecedingExternallyEncodedBytes
public static void nprecedingExternallyEncodedBytes(long struct, int value) Unsafe version ofprecedingExternallyEncodedBytes. -
validate
public static void validate(long struct) Validates pointer members that should not beNULL.- Parameters:
struct- the struct to validate
-