Top Description Inners Fields Constructors Methods
org.lwjgl.vulkan

public Class VkVideoEncodeInfoKHR

extends Struct<VkVideoEncodeInfoKHR>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable
Imports
javax.annotation.*, java.nio.*, org.lwjgl.*, org.lwjgl.system.*

Structure to chain codec-specific structures to.
Description

The coded size of the encode operation is specified in codedExtent of srcPictureResource.

Multiple CmdEncodeVideoKHR commands may be recorded within a Vulkan Video Encode Context. The execution of each CmdEncodeVideoKHR command will result in generating codec-specific bitstream units. These bitstream units are generated consecutively into the bitstream buffer specified in dstBuffer of a VkVideoEncodeInfoKHR structure within the CmdBeginVideoCodingKHR command. The produced bitstream is the sum of all these bitstream units, including any padding between the bitstream units. Any bitstream padding must be filled with data compliant to the codec standard so as not to cause any syntax errors during decoding of the bitstream units with the padding included. The range of the bitstream buffer written can be queried via video encode feedback queries.

Valid Usage
Valid Usage (Implicit)
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 and Inner Type Summary

Modifier and TypeClass and Description
public static class

Field Summary

Modifier and TypeField and Description
public static final int
ALIGNOF

The struct alignment in bytes.

public static final int
DSTBUFFER

The struct member offsets.

public static final int
DSTBUFFEROFFSET

The struct member offsets.

public static final int
DSTBUFFERRANGE

The struct member offsets.

public static final int
FLAGS

The struct member offsets.

public static final int
PNEXT

The struct member offsets.

public static final int
PRECEDINGEXTERNALLYENCODEDBYTES

The struct member offsets.

public static final int
PREFERENCESLOTS

The struct member offsets.

public static final int
PSETUPREFERENCESLOT

The struct member offsets.

public static final int
REFERENCESLOTCOUNT

The struct member offsets.

public static final int
SIZEOF

The struct size in bytes.

public static final int
SRCPICTURERESOURCE

The struct member offsets.

public static final int
STYPE

The struct member offsets.

Inherited from org.lwjgl.system.Struct:
containerDEFAULT_ALIGN_ASDEFAULT_PACK_ALIGNMENT

Constructor Summary

AccessConstructor and Description
protected
VkVideoEncodeInfoKHR(long address, ByteBuffer container)

public
VkVideoEncodeInfoKHR(ByteBuffer container)

Creates a VkVideoEncodeInfoKHR instance at the current position of the specified ByteBuffer container.

Method Summary

Modifier and TypeMethod and Description
public static VkVideoEncodeInfoKHR
calloc()

Returns a new VkVideoEncodeInfoKHR instance allocated with memCalloc.

public static VkVideoEncodeInfoKHR.Buffer
calloc(int
the buffer capacity
capacity
)

Returns a new VkVideoEncodeInfoKHR.Buffer instance allocated with memCalloc.

public static VkVideoEncodeInfoKHR
calloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new VkVideoEncodeInfoKHR instance allocated on the specified MemoryStack and initializes all its bits to zero.

public static VkVideoEncodeInfoKHR.Buffer
calloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new VkVideoEncodeInfoKHR.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.

protected VkVideoEncodeInfoKHR
create(long
the struct memory address
address
,
ByteBuffer
an optional container buffer, to be referenced strongly by the struct instance.
container
)

Implements abstract org.lwjgl.system.Struct.create.

Similar to the constructor, but returns the exact type of the Struct subclass.
public static VkVideoEncodeInfoKHR
create()

Returns a new VkVideoEncodeInfoKHR instance allocated with BufferUtils.

public static VkVideoEncodeInfoKHR
create(long address)

Returns a new VkVideoEncodeInfoKHR instance for the specified memory address.

public static VkVideoEncodeInfoKHR.Buffer
create(int
the buffer capacity
capacity
)

Returns a new VkVideoEncodeInfoKHR.Buffer instance allocated with BufferUtils.

public static VkVideoEncodeInfoKHR.Buffer
create(long
the memory address
address
,
int
the buffer capacity
capacity
)

Create a VkVideoEncodeInfoKHR.Buffer instance at the specified memory.

public static VkVideoEncodeInfoKHR
createSafe(long address)

Like create, but returns null if address is NULL.

public static VkVideoEncodeInfoKHR.Buffer
createSafe(long address, int capacity)

Like create, but returns null if address is NULL.

public long
dstBuffer()

the destination video bitstream buffer to write the encoded bitstream to.

public VkVideoEncodeInfoKHR
dstBuffer(long value)

Sets the specified value to the dstBuffer field.

public long
dstBufferOffset()

the starting offset in bytes from the start of dstBuffer to write the encoded bitstream to.

public VkVideoEncodeInfoKHR
dstBufferOffset(long value)

Sets the specified value to the dstBufferOffset field.

public long
dstBufferRange()

the maximum size in bytes of the encoded bitstream written to dstBuffer, starting from dstBufferOffset.

public VkVideoEncodeInfoKHR
dstBufferRange(long value)

Sets the specified value to the dstBufferRange field.

public int
flags()

reserved for future use.

public VkVideoEncodeInfoKHR
flags(int value)

Sets the specified value to the flags field.

public static VkVideoEncodeInfoKHR
malloc()

Returns a new VkVideoEncodeInfoKHR instance allocated with memAlloc.

public static VkVideoEncodeInfoKHR.Buffer
malloc(int
the buffer capacity
capacity
)

Returns a new VkVideoEncodeInfoKHR.Buffer instance allocated with memAlloc.

public static VkVideoEncodeInfoKHR
malloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new VkVideoEncodeInfoKHR instance allocated on the specified MemoryStack.

public static VkVideoEncodeInfoKHR.Buffer
malloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new VkVideoEncodeInfoKHR.Buffer instance allocated on the specified MemoryStack.

public static long
ndstBuffer(long struct)

Unsafe version of dstBuffer.

public static void
ndstBuffer(long struct, long value)

Unsafe version of dstBuffer.

public static long
ndstBufferOffset(long struct)

Unsafe version of dstBufferOffset.

public static void
ndstBufferOffset(long struct, long value)

Unsafe version of dstBufferOffset.

public static long
ndstBufferRange(long struct)

Unsafe version of dstBufferRange.

public static void
ndstBufferRange(long struct, long value)

Unsafe version of dstBufferRange.

public static int
nflags(long struct)

Unsafe version of flags.

public static void
nflags(long struct, int value)

Unsafe version of flags.

public static long
npNext(long struct)

Unsafe version of pNext.

public static void
npNext(long struct, long value)

Unsafe version of pNext.

public static int
public static void
nprecedingExternallyEncodedBytes(long struct, int value)

Unsafe version of precedingExternallyEncodedBytes.

public static VkVideoReferenceSlotInfoKHR.Buffer
npReferenceSlots(long struct)

Unsafe version of pReferenceSlots.

public static void
public static VkVideoReferenceSlotInfoKHR
npSetupReferenceSlot(long struct)

Unsafe version of pSetupReferenceSlot.

public static void
public static int
nreferenceSlotCount(long struct)

Unsafe version of referenceSlotCount.

public static void
nreferenceSlotCount(long struct, int value)

Sets the specified value to the referenceSlotCount field of the specified struct.

public static VkVideoPictureResourceInfoKHR
nsrcPictureResource(long struct)

Unsafe version of srcPictureResource.

public static void
public static int
nsType(long struct)

Unsafe version of sType.

public static void
nsType(long struct, int value)

Unsafe version of sType.

public long
pNext()

a pointer to a structure extending this structure.

public VkVideoEncodeInfoKHR
pNext(long value)

Sets the specified value to the pNext field.

public VkVideoEncodeInfoKHR
pNext(VkVideoEncodeH264PictureInfoEXT value)

Prepends the specified VkVideoEncodeH264PictureInfoEXT value to the pNext chain.

public VkVideoEncodeInfoKHR
pNext(VkVideoEncodeH265PictureInfoEXT value)

Prepends the specified VkVideoEncodeH265PictureInfoEXT value to the pNext chain.

public int
precedingExternallyEncodedBytes()

the number of bytes externally encoded for insertion in the active video encode session overall bitstream prior to the bitstream that will be generated by the implementation for this instance of VkVideoEncodeInfoKHR.

public VkVideoEncodeInfoKHR
precedingExternallyEncodedBytes(int value)

Sets the specified value to the precedingExternallyEncodedBytes field.

public VkVideoReferenceSlotInfoKHR.Buffer
pReferenceSlots()

NULL or a pointer to an array of VkVideoReferenceSlotInfoKHR structures that will be used when this encoding operation is executing.

public VkVideoEncodeInfoKHR
public VkVideoReferenceSlotInfoKHR
pSetupReferenceSlot()

a pointer to a VkVideoReferenceSlotInfoKHR structure used for generating a reconstructed reference slot and Picture Resource.

public VkVideoEncodeInfoKHR
public int
referenceSlotCount()

the number of Reconstructed Reference Pictures that will be used when this encoding operation is executing.

public VkVideoEncodeInfoKHR
set(int sType, long pNext, int flags, long dstBuffer, long dstBufferOffset, long dstBufferRange, VkVideoPictureResourceInfoKHR srcPictureResource, VkVideoReferenceSlotInfoKHR pSetupReferenceSlot, VkVideoReferenceSlotInfoKHR.Buffer pReferenceSlots, int precedingExternallyEncodedBytes)

Initializes this struct with the specified values.

public VkVideoEncodeInfoKHR

Returns:

this struct
set
(VkVideoEncodeInfoKHR
the source struct
src
)

Copies the specified struct data to this struct.

public int
sizeof()

Implements abstract org.lwjgl.system.Struct.sizeof.

Returns sizeof(struct).
public VkVideoPictureResourceInfoKHR
srcPictureResource()

the Picture Resource of the Input Picture to be encoded by the operation.

public VkVideoEncodeInfoKHR
public VkVideoEncodeInfoKHR
public int
sType()

a VkStructureType value identifying this structure.

public VkVideoEncodeInfoKHR
sType(int value)

Sets the specified value to the sType field.

public VkVideoEncodeInfoKHR
public static void
validate(long
the struct to validate
struct
)

Validates pointer members that should not be NULL.

Inherited from org.lwjgl.system.Struct:
__array__array__array__checkContainer__checkMalloc__create__getContainer__getContainer__member__member__member__padding__padding__struct__struct__union__unionclearfreeisNullvalidate