Package org.lwjgl.vulkan
Class VkVideoEncodeH264SessionParametersAddInfoEXT
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkVideoEncodeH264SessionParametersAddInfoEXT
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkVideoEncodeH264SessionParametersAddInfoEXT extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceStructure specifies H.264 encoder parameter set information.Valid Usage
- The values of
spsStdCountandppsStdCountmust be less than or equal to the values ofmaxSpsStdCountandmaxPpsStdCount, respectively - When the
maxSpsStdCountnumber of parameters of type StdVideoH264SequenceParameterSet in the Video Session Parameters object is reached, no additional parameters of that type can be added to the object.ERROR_TOO_MANY_OBJECTSwill be returned if an attempt is made to add additional data to this object at this point - When the
maxPpsStdCountnumber of parameters of type StdVideoH264PictureParameterSet in the Video Session Parameters object is reached, no additional parameters of that type can be added to the object.ERROR_TOO_MANY_OBJECTSwill be returned if an attempt is made to add additional data to this object at this point - Each entry to be added must have a unique, to the rest of the parameter array entries and the existing parameters in the Video Session Parameters Object that is being updated, SPS-PPS IDs
- Parameter entries that already exist in Video Session Parameters object with a particular SPS-PPS IDs cannot be replaced nor updated
- When creating a new object using a Video Session Parameters as a template, the array’s parameters with the same SPS-PPS IDs as the ones from the template take precedence
- SPS/PPS parameters must comply with the limits specified in
VkVideoSessionCreateInfoKHRduring Video Session creation
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT- If
pSpsStdis notNULL,pSpsStdmust be a valid pointer to an array ofspsStdCountStdVideoH264SequenceParameterSetvalues - If
pPpsStdis notNULL,pPpsStdmust be a valid pointer to an array ofppsStdCountStdVideoH264PictureParameterSetvalues spsStdCountmust be greater than 0ppsStdCountmust be greater than 0
See Also
VkVideoEncodeH264SessionParametersCreateInfoEXTLayout
struct VkVideoEncodeH264SessionParametersAddInfoEXT { VkStructureTypesType(); void const *pNext(); uint32_tspsStdCount();StdVideoH264SequenceParameterSetconst *pSpsStd(); uint32_tppsStdCount();StdVideoH264PictureParameterSetconst *pPpsStd(); }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkVideoEncodeH264SessionParametersAddInfoEXT.BufferAn array ofVkVideoEncodeH264SessionParametersAddInfoEXTstructs.
-
Field Summary
Fields Modifier and Type Field Description static intALIGNOFThe struct alignment in bytes.static intPNEXT
PPPSSTD
PPSSTDCOUNT
PSPSSTDThe struct member offsets.static intSIZEOFThe struct size in bytes.static intSPSSTDCOUNT
STYPEThe struct member offsets.
-
Constructor Summary
Constructors Constructor Description VkVideoEncodeH264SessionParametersAddInfoEXT(java.nio.ByteBuffer container)Creates aVkVideoEncodeH264SessionParametersAddInfoEXTinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkVideoEncodeH264SessionParametersAddInfoEXTcalloc()Returns a newVkVideoEncodeH264SessionParametersAddInfoEXTinstance allocated withmemCalloc.static VkVideoEncodeH264SessionParametersAddInfoEXT.Buffercalloc(int capacity)Returns a newVkVideoEncodeH264SessionParametersAddInfoEXT.Bufferinstance allocated withmemCalloc.static VkVideoEncodeH264SessionParametersAddInfoEXT.Buffercalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkVideoEncodeH264SessionParametersAddInfoEXT.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkVideoEncodeH264SessionParametersAddInfoEXTcalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkVideoEncodeH264SessionParametersAddInfoEXTinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkVideoEncodeH264SessionParametersAddInfoEXTcreate()Returns a newVkVideoEncodeH264SessionParametersAddInfoEXTinstance allocated withBufferUtils.static VkVideoEncodeH264SessionParametersAddInfoEXT.Buffercreate(int capacity)Returns a newVkVideoEncodeH264SessionParametersAddInfoEXT.Bufferinstance allocated withBufferUtils.static VkVideoEncodeH264SessionParametersAddInfoEXTcreate(long address)Returns a newVkVideoEncodeH264SessionParametersAddInfoEXTinstance for the specified memory address.static VkVideoEncodeH264SessionParametersAddInfoEXT.Buffercreate(long address, int capacity)Create aVkVideoEncodeH264SessionParametersAddInfoEXT.Bufferinstance at the specified memory.static VkVideoEncodeH264SessionParametersAddInfoEXTcreateSafe(long address)static VkVideoEncodeH264SessionParametersAddInfoEXT.BuffercreateSafe(long address, int capacity)static VkVideoEncodeH264SessionParametersAddInfoEXTmalloc()Returns a newVkVideoEncodeH264SessionParametersAddInfoEXTinstance allocated withmemAlloc.static VkVideoEncodeH264SessionParametersAddInfoEXT.Buffermalloc(int capacity)Returns a newVkVideoEncodeH264SessionParametersAddInfoEXT.Bufferinstance allocated withmemAlloc.static VkVideoEncodeH264SessionParametersAddInfoEXT.Buffermalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkVideoEncodeH264SessionParametersAddInfoEXT.Bufferinstance allocated on the specifiedMemoryStack.static VkVideoEncodeH264SessionParametersAddInfoEXTmalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkVideoEncodeH264SessionParametersAddInfoEXTinstance allocated on the specifiedMemoryStack.static longnpNext(long struct)Unsafe version ofpNext().static voidnpNext(long struct, long value)Unsafe version ofpNext.static StdVideoH264PictureParameterSet.BuffernpPpsStd(long struct)Unsafe version ofpPpsStd().static voidnpPpsStd(long struct, StdVideoH264PictureParameterSet.Buffer value)Unsafe version ofpPpsStd.static intnppsStdCount(long struct)Unsafe version ofppsStdCount().static voidnppsStdCount(long struct, int value)Sets the specified value to theppsStdCountfield of the specifiedstruct.static StdVideoH264SequenceParameterSet.BuffernpSpsStd(long struct)Unsafe version ofpSpsStd().static voidnpSpsStd(long struct, StdVideoH264SequenceParameterSet.Buffer value)Unsafe version ofpSpsStd.static intnspsStdCount(long struct)Unsafe version ofspsStdCount().static voidnspsStdCount(long struct, int value)Sets the specified value to thespsStdCountfield of the specifiedstruct.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.VkVideoEncodeH264SessionParametersAddInfoEXTpNext(long value)Sets the specified value to thepNext()field.StdVideoH264PictureParameterSet.BufferpPpsStd()a pointer to an array ofStdVideoH264PictureParameterSetstructures representing H.264 picture parameter sets.VkVideoEncodeH264SessionParametersAddInfoEXTpPpsStd(StdVideoH264PictureParameterSet.Buffer value)Sets the address of the specifiedStdVideoH264PictureParameterSet.Bufferto thepPpsStd()field.intppsStdCount()the number of PPS provided inpPpsStd.VkVideoEncodeH264SessionParametersAddInfoEXTppsStdCount(int value)Sets the specified value to theppsStdCount()field.StdVideoH264SequenceParameterSet.BufferpSpsStd()a pointer to an array ofStdVideoH264SequenceParameterSetstructures representing H.264 sequence parameter sets.VkVideoEncodeH264SessionParametersAddInfoEXTpSpsStd(StdVideoH264SequenceParameterSet.Buffer value)Sets the address of the specifiedStdVideoH264SequenceParameterSet.Bufferto thepSpsStd()field.VkVideoEncodeH264SessionParametersAddInfoEXTset(int sType, long pNext, int spsStdCount, StdVideoH264SequenceParameterSet.Buffer pSpsStd, int ppsStdCount, StdVideoH264PictureParameterSet.Buffer pPpsStd)Initializes this struct with the specified values.VkVideoEncodeH264SessionParametersAddInfoEXTset(VkVideoEncodeH264SessionParametersAddInfoEXT src)Copies the specified struct data to this struct.intsizeof()intspsStdCount()the number of SPS elements in thepSpsStd.VkVideoEncodeH264SessionParametersAddInfoEXTspsStdCount(int value)Sets the specified value to thespsStdCount()field.intsType()the type of this structure.VkVideoEncodeH264SessionParametersAddInfoEXTsType(int value)Sets the specified value to thesType()field.VkVideoEncodeH264SessionParametersAddInfoEXTsType$Default()Sets theSTRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXTvalue to thesType()field.
-
-
-
Constructor Detail
-
VkVideoEncodeH264SessionParametersAddInfoEXT
public VkVideoEncodeH264SessionParametersAddInfoEXT(java.nio.ByteBuffer container)
Creates aVkVideoEncodeH264SessionParametersAddInfoEXTinstance 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.
-
spsStdCount
public int spsStdCount()
the number of SPS elements in thepSpsStd. Its value must be less than or equal to the value ofmaxSpsStdCount.
-
pSpsStd
@Nullable public StdVideoH264SequenceParameterSet.Buffer pSpsStd()
a pointer to an array ofStdVideoH264SequenceParameterSetstructures representing H.264 sequence parameter sets. Each element of the array must have a unique H.264 SPS ID.
-
ppsStdCount
public int ppsStdCount()
the number of PPS provided inpPpsStd. Its value must be less than or equal to the value ofmaxPpsStdCount.
-
pPpsStd
@Nullable public StdVideoH264PictureParameterSet.Buffer pPpsStd()
a pointer to an array ofStdVideoH264PictureParameterSetstructures representing H.264 picture parameter sets. Each element of the array must have a unique H.264 SPS-PPS ID pair.
-
sType
public VkVideoEncodeH264SessionParametersAddInfoEXT sType(int value)
Sets the specified value to thesType()field.
-
sType$Default
public VkVideoEncodeH264SessionParametersAddInfoEXT sType$Default()
Sets theSTRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXTvalue to thesType()field.
-
pNext
public VkVideoEncodeH264SessionParametersAddInfoEXT pNext(long value)
Sets the specified value to thepNext()field.
-
spsStdCount
public VkVideoEncodeH264SessionParametersAddInfoEXT spsStdCount(int value)
Sets the specified value to thespsStdCount()field.
-
pSpsStd
public VkVideoEncodeH264SessionParametersAddInfoEXT pSpsStd(@Nullable StdVideoH264SequenceParameterSet.Buffer value)
Sets the address of the specifiedStdVideoH264SequenceParameterSet.Bufferto thepSpsStd()field.
-
ppsStdCount
public VkVideoEncodeH264SessionParametersAddInfoEXT ppsStdCount(int value)
Sets the specified value to theppsStdCount()field.
-
pPpsStd
public VkVideoEncodeH264SessionParametersAddInfoEXT pPpsStd(@Nullable StdVideoH264PictureParameterSet.Buffer value)
Sets the address of the specifiedStdVideoH264PictureParameterSet.Bufferto thepPpsStd()field.
-
set
public VkVideoEncodeH264SessionParametersAddInfoEXT set(int sType, long pNext, int spsStdCount, @Nullable StdVideoH264SequenceParameterSet.Buffer pSpsStd, int ppsStdCount, @Nullable StdVideoH264PictureParameterSet.Buffer pPpsStd)
Initializes this struct with the specified values.
-
set
public VkVideoEncodeH264SessionParametersAddInfoEXT set(VkVideoEncodeH264SessionParametersAddInfoEXT src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkVideoEncodeH264SessionParametersAddInfoEXT malloc()
Returns a newVkVideoEncodeH264SessionParametersAddInfoEXTinstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkVideoEncodeH264SessionParametersAddInfoEXT calloc()
Returns a newVkVideoEncodeH264SessionParametersAddInfoEXTinstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkVideoEncodeH264SessionParametersAddInfoEXT create()
Returns a newVkVideoEncodeH264SessionParametersAddInfoEXTinstance allocated withBufferUtils.
-
create
public static VkVideoEncodeH264SessionParametersAddInfoEXT create(long address)
Returns a newVkVideoEncodeH264SessionParametersAddInfoEXTinstance for the specified memory address.
-
createSafe
@Nullable public static VkVideoEncodeH264SessionParametersAddInfoEXT createSafe(long address)
-
malloc
public static VkVideoEncodeH264SessionParametersAddInfoEXT.Buffer malloc(int capacity)
Returns a newVkVideoEncodeH264SessionParametersAddInfoEXT.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkVideoEncodeH264SessionParametersAddInfoEXT.Buffer calloc(int capacity)
Returns a newVkVideoEncodeH264SessionParametersAddInfoEXT.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkVideoEncodeH264SessionParametersAddInfoEXT.Buffer create(int capacity)
Returns a newVkVideoEncodeH264SessionParametersAddInfoEXT.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkVideoEncodeH264SessionParametersAddInfoEXT.Buffer create(long address, int capacity)
Create aVkVideoEncodeH264SessionParametersAddInfoEXT.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkVideoEncodeH264SessionParametersAddInfoEXT.Buffer createSafe(long address, int capacity)
-
malloc
public static VkVideoEncodeH264SessionParametersAddInfoEXT malloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkVideoEncodeH264SessionParametersAddInfoEXTinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
public static VkVideoEncodeH264SessionParametersAddInfoEXT calloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkVideoEncodeH264SessionParametersAddInfoEXTinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkVideoEncodeH264SessionParametersAddInfoEXT.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkVideoEncodeH264SessionParametersAddInfoEXT.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
calloc
public static VkVideoEncodeH264SessionParametersAddInfoEXT.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkVideoEncodeH264SessionParametersAddInfoEXT.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().
-
nspsStdCount
public static int nspsStdCount(long struct)
Unsafe version ofspsStdCount().
-
npSpsStd
@Nullable public static StdVideoH264SequenceParameterSet.Buffer npSpsStd(long struct)
Unsafe version ofpSpsStd().
-
nppsStdCount
public static int nppsStdCount(long struct)
Unsafe version ofppsStdCount().
-
npPpsStd
@Nullable public static StdVideoH264PictureParameterSet.Buffer npPpsStd(long struct)
Unsafe version ofpPpsStd().
-
nsType
public static void nsType(long struct, int value)Unsafe version ofsType.
-
npNext
public static void npNext(long struct, long value)Unsafe version ofpNext.
-
nspsStdCount
public static void nspsStdCount(long struct, int value)Sets the specified value to thespsStdCountfield of the specifiedstruct.
-
npSpsStd
public static void npSpsStd(long struct, @Nullable StdVideoH264SequenceParameterSet.Buffer value)Unsafe version ofpSpsStd.
-
nppsStdCount
public static void nppsStdCount(long struct, int value)Sets the specified value to theppsStdCountfield of the specifiedstruct.
-
npPpsStd
public static void npPpsStd(long struct, @Nullable StdVideoH264PictureParameterSet.Buffer value)Unsafe version ofpPpsStd.
-
-