Package org.lwjgl.vulkan
Class VkVideoSessionCreateInfoKHR
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkVideoSessionCreateInfoKHR
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkVideoSessionCreateInfoKHR extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceStructure specifying parameters of a newly created video decode session.Valid Usage
pVideoProfilemust be a pointer to a validVkVideoProfileKHRstructure whosepNextchain must include a valid codec-specific profile structure- If Reference Pictures are required for use with the created video session, the
maxReferencePicturesSlotsCountmust be set to a value bigger than 0 maxReferencePicturesSlotsCountcannot exceed the implementation reportedVkVideoCapabilitiesKHR::maxReferencePicturesSlotsCount- If Reference Pictures are required for use with the created video session, the
maxReferencePicturesActiveCountmust be set to a value bigger than 0 maxReferencePicturesActiveCountcannot exceed the implementation reportedVkVideoCapabilitiesKHR::maxReferencePicturesActiveCountmaxReferencePicturesActiveCountcannot exceed themaxReferencePicturesSlotsCountmaxCodedExtentcannot be smaller thanVkVideoCapabilitiesKHR::minExtentand bigger thanVkVideoCapabilitiesKHR::maxExtentreferencePicturesFormatmust be one of the supported formats inVkVideoFormatPropertiesKHRformatreturned by theGetPhysicalDeviceVideoFormatPropertiesKHRwhen theVkPhysicalDeviceVideoFormatInfoKHRimageUsagecontainsIMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHRorIMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHRdepending on the session codec operationpictureFormatfor decode output must be one of the supported formats inVkVideoFormatPropertiesKHRformatreturned by theGetPhysicalDeviceVideoFormatPropertiesKHRwhen theVkPhysicalDeviceVideoFormatInfoKHRimageUsagecontainsIMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHRpictureFormattargeting encode operations must be one of the supported formats inVkVideoFormatPropertiesKHRformatreturned by theGetPhysicalDeviceVideoFormatPropertiesKHRwhen theVkPhysicalDeviceVideoFormatInfoKHRimageUsagecontainsIMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR- Each
pNextmember of any structure (including this one) in thepNextchain must be eitherNULLor a pointer to a valid instance ofVkVideoDecodeH264SessionCreateInfoEXT,VkVideoDecodeH265SessionCreateInfoEXT,VkVideoEncodeH264SessionCreateInfoEXT, orVkVideoEncodeH265SessionCreateInfoEXT - The
sTypevalue of each struct in thepNextchain must be unique flagsmust be a valid combination ofVkVideoSessionCreateFlagBitsKHRvaluespVideoProfilemust be a valid pointer to a validVkVideoProfileKHRstructurepictureFormatmust be a validVkFormatvaluereferencePicturesFormatmust be a validVkFormatvalue
See Also
VkExtent2D,VkVideoProfileKHR,CreateVideoSessionKHRLayout
struct VkVideoSessionCreateInfoKHR { VkStructureTypesType(); void const *pNext(); uint32_tqueueFamilyIndex(); VkVideoSessionCreateFlagsKHRflags();VkVideoProfileKHRconst *pVideoProfile(); VkFormatpictureFormat();VkExtent2DmaxCodedExtent(); VkFormatreferencePicturesFormat(); uint32_tmaxReferencePicturesSlotsCount(); uint32_tmaxReferencePicturesActiveCount(); }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkVideoSessionCreateInfoKHR.BufferAn array ofVkVideoSessionCreateInfoKHRstructs.
-
Field Summary
Fields Modifier and Type Field Description static intALIGNOFThe struct alignment in bytes.static intFLAGS
MAXCODEDEXTENT
MAXREFERENCEPICTURESACTIVECOUNT
MAXREFERENCEPICTURESSLOTSCOUNT
PICTUREFORMAT
PNEXT
PVIDEOPROFILE
QUEUEFAMILYINDEX
REFERENCEPICTURESFORMATThe struct member offsets.static intSIZEOFThe struct size in bytes.static intSTYPEThe struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkVideoSessionCreateInfoKHR(java.nio.ByteBuffer container)Creates aVkVideoSessionCreateInfoKHRinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkVideoSessionCreateInfoKHRcalloc()Returns a newVkVideoSessionCreateInfoKHRinstance allocated withmemCalloc.static VkVideoSessionCreateInfoKHR.Buffercalloc(int capacity)Returns a newVkVideoSessionCreateInfoKHR.Bufferinstance allocated withmemCalloc.static VkVideoSessionCreateInfoKHR.Buffercalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkVideoSessionCreateInfoKHR.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkVideoSessionCreateInfoKHRcalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkVideoSessionCreateInfoKHRinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkVideoSessionCreateInfoKHRcreate()Returns a newVkVideoSessionCreateInfoKHRinstance allocated withBufferUtils.static VkVideoSessionCreateInfoKHR.Buffercreate(int capacity)Returns a newVkVideoSessionCreateInfoKHR.Bufferinstance allocated withBufferUtils.static VkVideoSessionCreateInfoKHRcreate(long address)Returns a newVkVideoSessionCreateInfoKHRinstance for the specified memory address.static VkVideoSessionCreateInfoKHR.Buffercreate(long address, int capacity)Create aVkVideoSessionCreateInfoKHR.Bufferinstance at the specified memory.static VkVideoSessionCreateInfoKHRcreateSafe(long address)static VkVideoSessionCreateInfoKHR.BuffercreateSafe(long address, int capacity)intflags()a bitmask ofVkVideoSessionCreateFlagBitsKHRspecifying creation flags.VkVideoSessionCreateInfoKHRflags(int value)Sets the specified value to theflags()field.static VkVideoSessionCreateInfoKHRmalloc()Returns a newVkVideoSessionCreateInfoKHRinstance allocated withmemAlloc.static VkVideoSessionCreateInfoKHR.Buffermalloc(int capacity)Returns a newVkVideoSessionCreateInfoKHR.Bufferinstance allocated withmemAlloc.static VkVideoSessionCreateInfoKHR.Buffermalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkVideoSessionCreateInfoKHR.Bufferinstance allocated on the specifiedMemoryStack.static VkVideoSessionCreateInfoKHRmalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkVideoSessionCreateInfoKHRinstance allocated on the specifiedMemoryStack.VkExtent2DmaxCodedExtent()the maximum width and height of the coded pictures that this instance will be able to support.VkVideoSessionCreateInfoKHRmaxCodedExtent(java.util.function.Consumer<VkExtent2D> consumer)Passes themaxCodedExtent()field to the specifiedConsumer.VkVideoSessionCreateInfoKHRmaxCodedExtent(VkExtent2D value)Copies the specifiedVkExtent2Dto themaxCodedExtent()field.intmaxReferencePicturesActiveCount()the maximum number of active DPB Slots that can be used as Dpb or Reconstructed Reference Pictures within a single decode or encode operation for the created video session.VkVideoSessionCreateInfoKHRmaxReferencePicturesActiveCount(int value)Sets the specified value to themaxReferencePicturesActiveCount()field.intmaxReferencePicturesSlotsCount()the maximum number of DPB Slots that can be activated with associated Video Picture Resources for the created video session.VkVideoSessionCreateInfoKHRmaxReferencePicturesSlotsCount(int value)Sets the specified value to themaxReferencePicturesSlotsCount()field.static intnflags(long struct)Unsafe version offlags().static voidnflags(long struct, int value)Unsafe version offlags.static VkExtent2DnmaxCodedExtent(long struct)Unsafe version ofmaxCodedExtent().static voidnmaxCodedExtent(long struct, VkExtent2D value)Unsafe version ofmaxCodedExtent.static intnmaxReferencePicturesActiveCount(long struct)Unsafe version ofmaxReferencePicturesActiveCount().static voidnmaxReferencePicturesActiveCount(long struct, int value)Unsafe version ofmaxReferencePicturesActiveCount.static intnmaxReferencePicturesSlotsCount(long struct)Unsafe version ofmaxReferencePicturesSlotsCount().static voidnmaxReferencePicturesSlotsCount(long struct, int value)Unsafe version ofmaxReferencePicturesSlotsCount.static intnpictureFormat(long struct)Unsafe version ofpictureFormat().static voidnpictureFormat(long struct, int value)Unsafe version ofpictureFormat.static longnpNext(long struct)Unsafe version ofpNext().static voidnpNext(long struct, long value)Unsafe version ofpNext.static VkVideoProfileKHRnpVideoProfile(long struct)Unsafe version ofpVideoProfile().static voidnpVideoProfile(long struct, VkVideoProfileKHR value)Unsafe version ofpVideoProfile.static intnqueueFamilyIndex(long struct)Unsafe version ofqueueFamilyIndex().static voidnqueueFamilyIndex(long struct, int value)Unsafe version ofqueueFamilyIndex.static intnreferencePicturesFormat(long struct)Unsafe version ofreferencePicturesFormat().static voidnreferencePicturesFormat(long struct, int value)Unsafe version ofreferencePicturesFormat.static intnsType(long struct)Unsafe version ofsType().static voidnsType(long struct, int value)Unsafe version ofsType.intpictureFormat()VkVideoSessionCreateInfoKHRpictureFormat(int value)Sets the specified value to thepictureFormat()field.longpNext()NULLor a pointer to a structure extending this structure.VkVideoSessionCreateInfoKHRpNext(long value)Sets the specified value to thepNext()field.VkVideoSessionCreateInfoKHRpNext(VkVideoDecodeH264SessionCreateInfoEXT value)Prepends the specifiedVkVideoDecodeH264SessionCreateInfoEXTvalue to thepNextchain.VkVideoSessionCreateInfoKHRpNext(VkVideoDecodeH265SessionCreateInfoEXT value)Prepends the specifiedVkVideoDecodeH265SessionCreateInfoEXTvalue to thepNextchain.VkVideoSessionCreateInfoKHRpNext(VkVideoEncodeH264SessionCreateInfoEXT value)Prepends the specifiedVkVideoEncodeH264SessionCreateInfoEXTvalue to thepNextchain.VkVideoSessionCreateInfoKHRpNext(VkVideoEncodeH265SessionCreateInfoEXT value)Prepends the specifiedVkVideoEncodeH265SessionCreateInfoEXTvalue to thepNextchain.VkVideoProfileKHRpVideoProfile()a pointer to aVkVideoProfileKHRstructure.VkVideoSessionCreateInfoKHRpVideoProfile(VkVideoProfileKHR value)Sets the address of the specifiedVkVideoProfileKHRto thepVideoProfile()field.intqueueFamilyIndex()the queue family of the created video session.VkVideoSessionCreateInfoKHRqueueFamilyIndex(int value)Sets the specified value to thequeueFamilyIndex()field.intreferencePicturesFormat()the format of the DPB image views representing the Reference Pictures.VkVideoSessionCreateInfoKHRreferencePicturesFormat(int value)Sets the specified value to thereferencePicturesFormat()field.VkVideoSessionCreateInfoKHRset(int sType, long pNext, int queueFamilyIndex, int flags, VkVideoProfileKHR pVideoProfile, int pictureFormat, VkExtent2D maxCodedExtent, int referencePicturesFormat, int maxReferencePicturesSlotsCount, int maxReferencePicturesActiveCount)Initializes this struct with the specified values.VkVideoSessionCreateInfoKHRset(VkVideoSessionCreateInfoKHR src)Copies the specified struct data to this struct.intsizeof()intsType()the type of this structure.VkVideoSessionCreateInfoKHRsType(int value)Sets the specified value to thesType()field.VkVideoSessionCreateInfoKHRsType$Default()Sets theSTRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHRvalue to thesType()field.static voidvalidate(long struct)Validates pointer members that should not beNULL.
-
-
-
Constructor Detail
-
VkVideoSessionCreateInfoKHR
public VkVideoSessionCreateInfoKHR(java.nio.ByteBuffer container)
Creates aVkVideoSessionCreateInfoKHRinstance 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.
-
queueFamilyIndex
public int queueFamilyIndex()
the queue family of the created video session.
-
flags
public int flags()
a bitmask ofVkVideoSessionCreateFlagBitsKHRspecifying creation flags.
-
pVideoProfile
public VkVideoProfileKHR pVideoProfile()
a pointer to aVkVideoProfileKHRstructure.
-
pictureFormat
public int pictureFormat()
-
maxCodedExtent
public VkExtent2D maxCodedExtent()
the maximum width and height of the coded pictures that this instance will be able to support.
-
referencePicturesFormat
public int referencePicturesFormat()
the format of the DPB image views representing the Reference Pictures.
-
maxReferencePicturesSlotsCount
public int maxReferencePicturesSlotsCount()
the maximum number of DPB Slots that can be activated with associated Video Picture Resources for the created video session.
-
maxReferencePicturesActiveCount
public int maxReferencePicturesActiveCount()
the maximum number of active DPB Slots that can be used as Dpb or Reconstructed Reference Pictures within a single decode or encode operation for the created video session.
-
sType
public VkVideoSessionCreateInfoKHR sType(int value)
Sets the specified value to thesType()field.
-
sType$Default
public VkVideoSessionCreateInfoKHR sType$Default()
Sets theSTRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHRvalue to thesType()field.
-
pNext
public VkVideoSessionCreateInfoKHR pNext(long value)
Sets the specified value to thepNext()field.
-
pNext
public VkVideoSessionCreateInfoKHR pNext(VkVideoDecodeH264SessionCreateInfoEXT value)
Prepends the specifiedVkVideoDecodeH264SessionCreateInfoEXTvalue to thepNextchain.
-
pNext
public VkVideoSessionCreateInfoKHR pNext(VkVideoDecodeH265SessionCreateInfoEXT value)
Prepends the specifiedVkVideoDecodeH265SessionCreateInfoEXTvalue to thepNextchain.
-
pNext
public VkVideoSessionCreateInfoKHR pNext(VkVideoEncodeH264SessionCreateInfoEXT value)
Prepends the specifiedVkVideoEncodeH264SessionCreateInfoEXTvalue to thepNextchain.
-
pNext
public VkVideoSessionCreateInfoKHR pNext(VkVideoEncodeH265SessionCreateInfoEXT value)
Prepends the specifiedVkVideoEncodeH265SessionCreateInfoEXTvalue to thepNextchain.
-
queueFamilyIndex
public VkVideoSessionCreateInfoKHR queueFamilyIndex(int value)
Sets the specified value to thequeueFamilyIndex()field.
-
flags
public VkVideoSessionCreateInfoKHR flags(int value)
Sets the specified value to theflags()field.
-
pVideoProfile
public VkVideoSessionCreateInfoKHR pVideoProfile(VkVideoProfileKHR value)
Sets the address of the specifiedVkVideoProfileKHRto thepVideoProfile()field.
-
pictureFormat
public VkVideoSessionCreateInfoKHR pictureFormat(int value)
Sets the specified value to thepictureFormat()field.
-
maxCodedExtent
public VkVideoSessionCreateInfoKHR maxCodedExtent(VkExtent2D value)
Copies the specifiedVkExtent2Dto themaxCodedExtent()field.
-
maxCodedExtent
public VkVideoSessionCreateInfoKHR maxCodedExtent(java.util.function.Consumer<VkExtent2D> consumer)
Passes themaxCodedExtent()field to the specifiedConsumer.
-
referencePicturesFormat
public VkVideoSessionCreateInfoKHR referencePicturesFormat(int value)
Sets the specified value to thereferencePicturesFormat()field.
-
maxReferencePicturesSlotsCount
public VkVideoSessionCreateInfoKHR maxReferencePicturesSlotsCount(int value)
Sets the specified value to themaxReferencePicturesSlotsCount()field.
-
maxReferencePicturesActiveCount
public VkVideoSessionCreateInfoKHR maxReferencePicturesActiveCount(int value)
Sets the specified value to themaxReferencePicturesActiveCount()field.
-
set
public VkVideoSessionCreateInfoKHR set(int sType, long pNext, int queueFamilyIndex, int flags, VkVideoProfileKHR pVideoProfile, int pictureFormat, VkExtent2D maxCodedExtent, int referencePicturesFormat, int maxReferencePicturesSlotsCount, int maxReferencePicturesActiveCount)
Initializes this struct with the specified values.
-
set
public VkVideoSessionCreateInfoKHR set(VkVideoSessionCreateInfoKHR src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkVideoSessionCreateInfoKHR malloc()
Returns a newVkVideoSessionCreateInfoKHRinstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkVideoSessionCreateInfoKHR calloc()
Returns a newVkVideoSessionCreateInfoKHRinstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkVideoSessionCreateInfoKHR create()
Returns a newVkVideoSessionCreateInfoKHRinstance allocated withBufferUtils.
-
create
public static VkVideoSessionCreateInfoKHR create(long address)
Returns a newVkVideoSessionCreateInfoKHRinstance for the specified memory address.
-
createSafe
@Nullable public static VkVideoSessionCreateInfoKHR createSafe(long address)
-
malloc
public static VkVideoSessionCreateInfoKHR.Buffer malloc(int capacity)
Returns a newVkVideoSessionCreateInfoKHR.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkVideoSessionCreateInfoKHR.Buffer calloc(int capacity)
Returns a newVkVideoSessionCreateInfoKHR.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkVideoSessionCreateInfoKHR.Buffer create(int capacity)
Returns a newVkVideoSessionCreateInfoKHR.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkVideoSessionCreateInfoKHR.Buffer create(long address, int capacity)
Create aVkVideoSessionCreateInfoKHR.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkVideoSessionCreateInfoKHR.Buffer createSafe(long address, int capacity)
-
malloc
public static VkVideoSessionCreateInfoKHR malloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkVideoSessionCreateInfoKHRinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
public static VkVideoSessionCreateInfoKHR calloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkVideoSessionCreateInfoKHRinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkVideoSessionCreateInfoKHR.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkVideoSessionCreateInfoKHR.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
calloc
public static VkVideoSessionCreateInfoKHR.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkVideoSessionCreateInfoKHR.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().
-
nqueueFamilyIndex
public static int nqueueFamilyIndex(long struct)
Unsafe version ofqueueFamilyIndex().
-
nflags
public static int nflags(long struct)
Unsafe version offlags().
-
npVideoProfile
public static VkVideoProfileKHR npVideoProfile(long struct)
Unsafe version ofpVideoProfile().
-
npictureFormat
public static int npictureFormat(long struct)
Unsafe version ofpictureFormat().
-
nmaxCodedExtent
public static VkExtent2D nmaxCodedExtent(long struct)
Unsafe version ofmaxCodedExtent().
-
nreferencePicturesFormat
public static int nreferencePicturesFormat(long struct)
Unsafe version ofreferencePicturesFormat().
-
nmaxReferencePicturesSlotsCount
public static int nmaxReferencePicturesSlotsCount(long struct)
Unsafe version ofmaxReferencePicturesSlotsCount().
-
nmaxReferencePicturesActiveCount
public static int nmaxReferencePicturesActiveCount(long struct)
Unsafe version ofmaxReferencePicturesActiveCount().
-
nsType
public static void nsType(long struct, int value)Unsafe version ofsType.
-
npNext
public static void npNext(long struct, long value)Unsafe version ofpNext.
-
nqueueFamilyIndex
public static void nqueueFamilyIndex(long struct, int value)Unsafe version ofqueueFamilyIndex.
-
nflags
public static void nflags(long struct, int value)Unsafe version offlags.
-
npVideoProfile
public static void npVideoProfile(long struct, VkVideoProfileKHR value)Unsafe version ofpVideoProfile.
-
npictureFormat
public static void npictureFormat(long struct, int value)Unsafe version ofpictureFormat.
-
nmaxCodedExtent
public static void nmaxCodedExtent(long struct, VkExtent2D value)Unsafe version ofmaxCodedExtent.
-
nreferencePicturesFormat
public static void nreferencePicturesFormat(long struct, int value)Unsafe version ofreferencePicturesFormat.
-
nmaxReferencePicturesSlotsCount
public static void nmaxReferencePicturesSlotsCount(long struct, int value)Unsafe version ofmaxReferencePicturesSlotsCount.
-
nmaxReferencePicturesActiveCount
public static void nmaxReferencePicturesActiveCount(long struct, int value)Unsafe version ofmaxReferencePicturesActiveCount.
-
validate
public static void validate(long struct)
Validates pointer members that should not beNULL.- Parameters:
struct- the struct to validate
-
-