Package org.lwjgl.vulkan
Class VkVideoDecodeInfoKHR
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkVideoDecodeInfoKHR
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkVideoDecodeInfoKHR extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceStructure specifying parameters of decoding a frame.Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR- Each
pNextmember of any structure (including this one) in thepNextchain must be eitherNULLor a pointer to a valid instance ofVkVideoDecodeH264PictureInfoEXTorVkVideoDecodeH265PictureInfoEXT - The
sTypevalue of each struct in thepNextchain must be unique flagsmust be a valid combination ofVkVideoDecodeFlagBitsKHRvaluessrcBuffermust be a validVkBufferhandledstPictureResourcemust be a validVkVideoPictureResourceKHRstructurepSetupReferenceSlotmust be a valid pointer to a validVkVideoReferenceSlotKHRstructure- If
referenceSlotCountis not 0,pReferenceSlotsmust be a valid pointer to an array ofreferenceSlotCountvalidVkVideoReferenceSlotKHRstructures
See Also
VkExtent2D,VkOffset2D,VkVideoPictureResourceKHR,VkVideoReferenceSlotKHR,CmdDecodeVideoKHRLayout
struct VkVideoDecodeInfoKHR { VkStructureTypesType(); void const *pNext(); VkVideoDecodeFlagsKHRflags();VkOffset2DcodedOffset();VkExtent2DcodedExtent(); VkBuffersrcBuffer(); VkDeviceSizesrcBufferOffset(); VkDeviceSizesrcBufferRange();VkVideoPictureResourceKHRdstPictureResource();VkVideoReferenceSlotKHRconst *pSetupReferenceSlot(); uint32_treferenceSlotCount();VkVideoReferenceSlotKHRconst *pReferenceSlots(); }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkVideoDecodeInfoKHR.BufferAn array ofVkVideoDecodeInfoKHRstructs.
-
Field Summary
Fields Modifier and Type Field Description static intALIGNOFThe struct alignment in bytes.static intCODEDEXTENT
CODEDOFFSET
DSTPICTURERESOURCE
FLAGS
PNEXT
PREFERENCESLOTS
PSETUPREFERENCESLOT
REFERENCESLOTCOUNTThe struct member offsets.static intSIZEOFThe struct size in bytes.static intSRCBUFFER
SRCBUFFEROFFSET
SRCBUFFERRANGE
STYPEThe struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkVideoDecodeInfoKHR(java.nio.ByteBuffer container)Creates aVkVideoDecodeInfoKHRinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkVideoDecodeInfoKHRcalloc()Returns a newVkVideoDecodeInfoKHRinstance allocated withmemCalloc.static VkVideoDecodeInfoKHR.Buffercalloc(int capacity)Returns a newVkVideoDecodeInfoKHR.Bufferinstance allocated withmemCalloc.static VkVideoDecodeInfoKHR.Buffercalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkVideoDecodeInfoKHR.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkVideoDecodeInfoKHRcalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkVideoDecodeInfoKHRinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.VkExtent2DcodedExtent()the coded size of the decode operations.VkVideoDecodeInfoKHRcodedExtent(java.util.function.Consumer<VkExtent2D> consumer)Passes thecodedExtent()field to the specifiedConsumer.VkVideoDecodeInfoKHRcodedExtent(VkExtent2D value)Copies the specifiedVkExtent2Dto thecodedExtent()field.VkOffset2DcodedOffset()the coded offset of the decode operations.VkVideoDecodeInfoKHRcodedOffset(java.util.function.Consumer<VkOffset2D> consumer)Passes thecodedOffset()field to the specifiedConsumer.VkVideoDecodeInfoKHRcodedOffset(VkOffset2D value)Copies the specifiedVkOffset2Dto thecodedOffset()field.static VkVideoDecodeInfoKHRcreate()Returns a newVkVideoDecodeInfoKHRinstance allocated withBufferUtils.static VkVideoDecodeInfoKHR.Buffercreate(int capacity)Returns a newVkVideoDecodeInfoKHR.Bufferinstance allocated withBufferUtils.static VkVideoDecodeInfoKHRcreate(long address)Returns a newVkVideoDecodeInfoKHRinstance for the specified memory address.static VkVideoDecodeInfoKHR.Buffercreate(long address, int capacity)Create aVkVideoDecodeInfoKHR.Bufferinstance at the specified memory.static VkVideoDecodeInfoKHRcreateSafe(long address)static VkVideoDecodeInfoKHR.BuffercreateSafe(long address, int capacity)VkVideoPictureResourceKHRdstPictureResource()the destination Decoded Output Picture Resource.VkVideoDecodeInfoKHRdstPictureResource(java.util.function.Consumer<VkVideoPictureResourceKHR> consumer)Passes thedstPictureResource()field to the specifiedConsumer.VkVideoDecodeInfoKHRdstPictureResource(VkVideoPictureResourceKHR value)Copies the specifiedVkVideoPictureResourceKHRto thedstPictureResource()field.intflags()a bitmask ofVkVideoDecodeFlagBitsKHRspecifying decode flags, reserved for future versions of this specification.VkVideoDecodeInfoKHRflags(int value)Sets the specified value to theflags()field.static VkVideoDecodeInfoKHRmalloc()Returns a newVkVideoDecodeInfoKHRinstance allocated withmemAlloc.static VkVideoDecodeInfoKHR.Buffermalloc(int capacity)Returns a newVkVideoDecodeInfoKHR.Bufferinstance allocated withmemAlloc.static VkVideoDecodeInfoKHR.Buffermalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkVideoDecodeInfoKHR.Bufferinstance allocated on the specifiedMemoryStack.static VkVideoDecodeInfoKHRmalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkVideoDecodeInfoKHRinstance allocated on the specifiedMemoryStack.static VkExtent2DncodedExtent(long struct)Unsafe version ofcodedExtent().static voidncodedExtent(long struct, VkExtent2D value)Unsafe version ofcodedExtent.static VkOffset2DncodedOffset(long struct)Unsafe version ofcodedOffset().static voidncodedOffset(long struct, VkOffset2D value)Unsafe version ofcodedOffset.static VkVideoPictureResourceKHRndstPictureResource(long struct)Unsafe version ofdstPictureResource().static voidndstPictureResource(long struct, VkVideoPictureResourceKHR value)Unsafe version ofdstPictureResource.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 VkVideoReferenceSlotKHR.BuffernpReferenceSlots(long struct)Unsafe version ofpReferenceSlots().static voidnpReferenceSlots(long struct, VkVideoReferenceSlotKHR.Buffer value)Unsafe version ofpReferenceSlots.static VkVideoReferenceSlotKHRnpSetupReferenceSlot(long struct)Unsafe version ofpSetupReferenceSlot().static voidnpSetupReferenceSlot(long struct, VkVideoReferenceSlotKHR 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.static longnsrcBuffer(long struct)Unsafe version ofsrcBuffer().static voidnsrcBuffer(long struct, long value)Unsafe version ofsrcBuffer.static longnsrcBufferOffset(long struct)Unsafe version ofsrcBufferOffset().static voidnsrcBufferOffset(long struct, long value)Unsafe version ofsrcBufferOffset.static longnsrcBufferRange(long struct)Unsafe version ofsrcBufferRange().static voidnsrcBufferRange(long struct, long value)Unsafe version ofsrcBufferRange.static intnsType(long struct)Unsafe version ofsType().static voidnsType(long struct, int value)Unsafe version ofsType.longpNext()NULLor a pointer to a structure extending this structure.VkVideoDecodeInfoKHRpNext(long value)Sets the specified value to thepNext()field.VkVideoDecodeInfoKHRpNext(VkVideoDecodeH264PictureInfoEXT value)Prepends the specifiedVkVideoDecodeH264PictureInfoEXTvalue to thepNextchain.VkVideoDecodeInfoKHRpNext(VkVideoDecodeH265PictureInfoEXT value)Prepends the specifiedVkVideoDecodeH265PictureInfoEXTvalue to thepNextchain.VkVideoReferenceSlotKHR.BufferpReferenceSlots()a pointer to an array ofVkVideoReferenceSlotKHRstructures specifying the DPB Reference pictures that will be used when this decoding operation is executing.VkVideoDecodeInfoKHRpReferenceSlots(VkVideoReferenceSlotKHR.Buffer value)Sets the address of the specifiedVkVideoReferenceSlotKHR.Bufferto thepReferenceSlots()field.VkVideoReferenceSlotKHRpSetupReferenceSlot()NULLor a pointer to aVkVideoReferenceSlotKHRstructure used for generating a DPB reference slot and Picture Resource.VkVideoDecodeInfoKHRpSetupReferenceSlot(VkVideoReferenceSlotKHR value)Sets the address of the specifiedVkVideoReferenceSlotKHRto thepSetupReferenceSlot()field.intreferenceSlotCount()the number of the DPB Reference Pictures that will be used when this decoding operation is executing.VkVideoDecodeInfoKHRset(int sType, long pNext, int flags, VkOffset2D codedOffset, VkExtent2D codedExtent, long srcBuffer, long srcBufferOffset, long srcBufferRange, VkVideoPictureResourceKHR dstPictureResource, VkVideoReferenceSlotKHR pSetupReferenceSlot, VkVideoReferenceSlotKHR.Buffer pReferenceSlots)Initializes this struct with the specified values.VkVideoDecodeInfoKHRset(VkVideoDecodeInfoKHR src)Copies the specified struct data to this struct.intsizeof()longsrcBuffer()the source buffer that holds the encoded bitstream.VkVideoDecodeInfoKHRsrcBuffer(long value)Sets the specified value to thesrcBuffer()field.longsrcBufferOffset()the buffer offset where the valid encoded bitstream starts in srcBuffer.VkVideoDecodeInfoKHRsrcBufferOffset(long value)Sets the specified value to thesrcBufferOffset()field.longsrcBufferRange()the size of the srcBuffer with valid encoded bitstream, starting fromsrcBufferOffset.VkVideoDecodeInfoKHRsrcBufferRange(long value)Sets the specified value to thesrcBufferRange()field.intsType()the type of this structure.VkVideoDecodeInfoKHRsType(int value)Sets the specified value to thesType()field.VkVideoDecodeInfoKHRsType$Default()Sets theSTRUCTURE_TYPE_VIDEO_DECODE_INFO_KHRvalue to thesType()field.static voidvalidate(long struct)Validates pointer members that should not beNULL.
-
-
-
Constructor Detail
-
VkVideoDecodeInfoKHR
public VkVideoDecodeInfoKHR(java.nio.ByteBuffer container)
Creates aVkVideoDecodeInfoKHRinstance 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 Detail
-
sizeof
public int sizeof()
- Specified by:
sizeofin classorg.lwjgl.system.Struct
-
sType
public int sType()
the type of this structure.
-
pNext
public long pNext()
NULLor a pointer to a structure extending this structure. All the codec specific structures related to each frame(picture parameters, quantization matrix, etc.) must be chained here and pass to decode session with the function callCmdDecodeVideoKHR.
-
flags
public int flags()
a bitmask ofVkVideoDecodeFlagBitsKHRspecifying decode flags, reserved for future versions of this specification.
-
codedOffset
public VkOffset2D codedOffset()
the coded offset of the decode operations. The purpose of this field is interpreted based on the codec extension. When decoding content in H.264 field mode, thecodedOffsetspecifies the line or picture field’s offset within the image.
-
codedExtent
public VkExtent2D codedExtent()
the coded size of the decode operations.
-
srcBuffer
public long srcBuffer()
the source buffer that holds the encoded bitstream.
-
srcBufferOffset
public long srcBufferOffset()
the buffer offset where the valid encoded bitstream starts in srcBuffer. It must meet the alignment requirementminBitstreamBufferOffsetAlignmentwithinVkVideoCapabilitiesKHRqueried with theGetPhysicalDeviceVideoCapabilitiesKHRfunction.
-
srcBufferRange
public long srcBufferRange()
the size of the srcBuffer with valid encoded bitstream, starting fromsrcBufferOffset. It must meet the alignment requirementminBitstreamBufferSizeAlignmentwithinVkVideoCapabilitiesKHRqueried with theGetPhysicalDeviceVideoCapabilitiesKHRfunction.
-
dstPictureResource
public VkVideoPictureResourceKHR dstPictureResource()
the destination Decoded Output Picture Resource.
-
pSetupReferenceSlot
public VkVideoReferenceSlotKHR pSetupReferenceSlot()
NULLor a pointer to aVkVideoReferenceSlotKHRstructure used for generating a DPB reference slot and Picture Resource.pSetupReferenceSlot\u2192slotIndexspecifies the slot index number to use as a target for producing the DPB data.slotIndexmust reference a valid entry as specified inVkVideoBeginCodingInfoKHRvia thepReferenceSlotswithin theCmdBeginVideoCodingKHRcommand that established the Vulkan Video Decode Context for this command.
-
referenceSlotCount
public int referenceSlotCount()
the number of the DPB Reference Pictures that will be used when this decoding operation is executing.
-
pReferenceSlots
@Nullable public VkVideoReferenceSlotKHR.Buffer pReferenceSlots()
a pointer to an array ofVkVideoReferenceSlotKHRstructures specifying the DPB Reference pictures that will be used when this decoding operation is executing.
-
sType
public VkVideoDecodeInfoKHR sType(int value)
Sets the specified value to thesType()field.
-
sType$Default
public VkVideoDecodeInfoKHR sType$Default()
Sets theSTRUCTURE_TYPE_VIDEO_DECODE_INFO_KHRvalue to thesType()field.
-
pNext
public VkVideoDecodeInfoKHR pNext(long value)
Sets the specified value to thepNext()field.
-
pNext
public VkVideoDecodeInfoKHR pNext(VkVideoDecodeH264PictureInfoEXT value)
Prepends the specifiedVkVideoDecodeH264PictureInfoEXTvalue to thepNextchain.
-
pNext
public VkVideoDecodeInfoKHR pNext(VkVideoDecodeH265PictureInfoEXT value)
Prepends the specifiedVkVideoDecodeH265PictureInfoEXTvalue to thepNextchain.
-
flags
public VkVideoDecodeInfoKHR flags(int value)
Sets the specified value to theflags()field.
-
codedOffset
public VkVideoDecodeInfoKHR codedOffset(VkOffset2D value)
Copies the specifiedVkOffset2Dto thecodedOffset()field.
-
codedOffset
public VkVideoDecodeInfoKHR codedOffset(java.util.function.Consumer<VkOffset2D> consumer)
Passes thecodedOffset()field to the specifiedConsumer.
-
codedExtent
public VkVideoDecodeInfoKHR codedExtent(VkExtent2D value)
Copies the specifiedVkExtent2Dto thecodedExtent()field.
-
codedExtent
public VkVideoDecodeInfoKHR codedExtent(java.util.function.Consumer<VkExtent2D> consumer)
Passes thecodedExtent()field to the specifiedConsumer.
-
srcBuffer
public VkVideoDecodeInfoKHR srcBuffer(long value)
Sets the specified value to thesrcBuffer()field.
-
srcBufferOffset
public VkVideoDecodeInfoKHR srcBufferOffset(long value)
Sets the specified value to thesrcBufferOffset()field.
-
srcBufferRange
public VkVideoDecodeInfoKHR srcBufferRange(long value)
Sets the specified value to thesrcBufferRange()field.
-
dstPictureResource
public VkVideoDecodeInfoKHR dstPictureResource(VkVideoPictureResourceKHR value)
Copies the specifiedVkVideoPictureResourceKHRto thedstPictureResource()field.
-
dstPictureResource
public VkVideoDecodeInfoKHR dstPictureResource(java.util.function.Consumer<VkVideoPictureResourceKHR> consumer)
Passes thedstPictureResource()field to the specifiedConsumer.
-
pSetupReferenceSlot
public VkVideoDecodeInfoKHR pSetupReferenceSlot(VkVideoReferenceSlotKHR value)
Sets the address of the specifiedVkVideoReferenceSlotKHRto thepSetupReferenceSlot()field.
-
pReferenceSlots
public VkVideoDecodeInfoKHR pReferenceSlots(@Nullable VkVideoReferenceSlotKHR.Buffer value)
Sets the address of the specifiedVkVideoReferenceSlotKHR.Bufferto thepReferenceSlots()field.
-
set
public VkVideoDecodeInfoKHR set(int sType, long pNext, int flags, VkOffset2D codedOffset, VkExtent2D codedExtent, long srcBuffer, long srcBufferOffset, long srcBufferRange, VkVideoPictureResourceKHR dstPictureResource, VkVideoReferenceSlotKHR pSetupReferenceSlot, @Nullable VkVideoReferenceSlotKHR.Buffer pReferenceSlots)
Initializes this struct with the specified values.
-
set
public VkVideoDecodeInfoKHR set(VkVideoDecodeInfoKHR src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkVideoDecodeInfoKHR malloc()
Returns a newVkVideoDecodeInfoKHRinstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkVideoDecodeInfoKHR calloc()
Returns a newVkVideoDecodeInfoKHRinstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkVideoDecodeInfoKHR create()
Returns a newVkVideoDecodeInfoKHRinstance allocated withBufferUtils.
-
create
public static VkVideoDecodeInfoKHR create(long address)
Returns a newVkVideoDecodeInfoKHRinstance for the specified memory address.
-
createSafe
@Nullable public static VkVideoDecodeInfoKHR createSafe(long address)
-
malloc
public static VkVideoDecodeInfoKHR.Buffer malloc(int capacity)
Returns a newVkVideoDecodeInfoKHR.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkVideoDecodeInfoKHR.Buffer calloc(int capacity)
Returns a newVkVideoDecodeInfoKHR.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkVideoDecodeInfoKHR.Buffer create(int capacity)
Returns a newVkVideoDecodeInfoKHR.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkVideoDecodeInfoKHR.Buffer create(long address, int capacity)
Create aVkVideoDecodeInfoKHR.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkVideoDecodeInfoKHR.Buffer createSafe(long address, int capacity)
-
malloc
public static VkVideoDecodeInfoKHR malloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkVideoDecodeInfoKHRinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
public static VkVideoDecodeInfoKHR calloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkVideoDecodeInfoKHRinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkVideoDecodeInfoKHR.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkVideoDecodeInfoKHR.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
calloc
public static VkVideoDecodeInfoKHR.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkVideoDecodeInfoKHR.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
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().
-
ncodedOffset
public static VkOffset2D ncodedOffset(long struct)
Unsafe version ofcodedOffset().
-
ncodedExtent
public static VkExtent2D ncodedExtent(long struct)
Unsafe version ofcodedExtent().
-
nsrcBuffer
public static long nsrcBuffer(long struct)
Unsafe version ofsrcBuffer().
-
nsrcBufferOffset
public static long nsrcBufferOffset(long struct)
Unsafe version ofsrcBufferOffset().
-
nsrcBufferRange
public static long nsrcBufferRange(long struct)
Unsafe version ofsrcBufferRange().
-
ndstPictureResource
public static VkVideoPictureResourceKHR ndstPictureResource(long struct)
Unsafe version ofdstPictureResource().
-
npSetupReferenceSlot
public static VkVideoReferenceSlotKHR npSetupReferenceSlot(long struct)
Unsafe version ofpSetupReferenceSlot().
-
nreferenceSlotCount
public static int nreferenceSlotCount(long struct)
Unsafe version ofreferenceSlotCount().
-
npReferenceSlots
@Nullable public static VkVideoReferenceSlotKHR.Buffer npReferenceSlots(long struct)
Unsafe version ofpReferenceSlots().
-
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.
-
ncodedOffset
public static void ncodedOffset(long struct, VkOffset2D value)Unsafe version ofcodedOffset.
-
ncodedExtent
public static void ncodedExtent(long struct, VkExtent2D value)Unsafe version ofcodedExtent.
-
nsrcBuffer
public static void nsrcBuffer(long struct, long value)Unsafe version ofsrcBuffer.
-
nsrcBufferOffset
public static void nsrcBufferOffset(long struct, long value)Unsafe version ofsrcBufferOffset.
-
nsrcBufferRange
public static void nsrcBufferRange(long struct, long value)Unsafe version ofsrcBufferRange.
-
ndstPictureResource
public static void ndstPictureResource(long struct, VkVideoPictureResourceKHR value)Unsafe version ofdstPictureResource.
-
npSetupReferenceSlot
public static void npSetupReferenceSlot(long struct, VkVideoReferenceSlotKHR value)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 VkVideoReferenceSlotKHR.Buffer value)Unsafe version ofpReferenceSlots.
-
validate
public static void validate(long struct)
Validates pointer members that should not beNULL.- Parameters:
struct- the struct to validate
-
-