Class VkVideoDecodeH265PictureInfoKHR
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
Description
This structure is specified in the pNext chain of the VkVideoDecodeInfoKHR structure passed to CmdDecodeVideoKHR to specify the codec-specific picture information for an H.265 decode operation.
- Decode Output Picture Information
- The image subregion used is determined according to the H.265 Decode Picture Data Access section.
- The decode output picture is associated with the H.265 picture information provided in
pStdPictureInfo.
- Std Picture Information
reservedis used only for padding purposes and is otherwise ignored;flags.IrapPicFlagas defined in section 3.73 of the ITU-T H.265 Specification;flags.IdrPicFlagas defined in section 3.67 of the ITU-T H.265 Specification;flags.IsReferenceas defined in section 3.132 of the ITU-T H.265 Specification;sps_video_parameter_set_id,pps_seq_parameter_set_id, andpps_pic_parameter_set_idare used to identify the active parameter sets, as described below;PicOrderCntValas defined in section 8.3.1 of the ITU-T H.265 Specification;NumBitsForSTRefPicSetInSliceis the number of bits used inst_ref_pic_setwhenshort_term_ref_pic_set_sps_flagis 0, or 0 otherwise, as defined in sections 7.4.7 and 7.4.8 of the ITU-T H.265 Specification;NumDeltaPocsOfRefRpsIdxis the value ofNumDeltaPocs[RefRpsIdx]whenshort_term_ref_pic_set_sps_flagis 1, or 0 otherwise, as defined in sections 7.4.7 and 7.4.8 of the ITU-T H.265 Specification;RefPicSetStCurrBefore,RefPicSetStCurrAfter, andRefPicSetLtCurrare interpreted as defined in section 8.3.2 of the ITU-T H.265 Specification where each element of these arrays either identifies an active reference picture using its DPB slot index or contains the valueSTD_VIDEO_H265_NO_REFERENCE_PICTUREto indicate “no reference picture”;- all other members are interpreted as defined in section 8.3.2 of the ITU-T H.265 Specification.
Reference picture setup is controlled by the value of StdVideoDecodeH265PictureInfo::flags.IsReference. If it is set and a reconstructed picture is specified, then the latter is used as the target of picture reconstruction to activate the corresponding DPB slot. If StdVideoDecodeH265PictureInfo::flags.IsReference is not set, but a reconstructed picture is specified, then the corresponding picture reference associated with the DPB slot is invalidated, as described in the DPB Slot States section.
- Active Parameter Sets
- The active VPS is the VPS identified by the key specified in
StdVideoDecodeH265PictureInfo::sps_video_parameter_set_id. - The active SPS is the SPS identified by the key specified by the pair constructed from
StdVideoDecodeH265PictureInfo::sps_video_parameter_set_idandStdVideoDecodeH265PictureInfo::pps_seq_parameter_set_id. - The active PPS is the PPS identified by the key specified by the triplet constructed from
StdVideoDecodeH265PictureInfo::sps_video_parameter_set_id,StdVideoDecodeH265PictureInfo::pps_seq_parameter_set_id, andStdVideoDecodeH265PictureInfo::pps_pic_parameter_set_id.
- The active VPS is the VPS identified by the key specified in
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_KHRpStdPictureInfomust be a valid pointer to a validStdVideoDecodeH265PictureInfovaluepSliceSegmentOffsetsmust be a valid pointer to an array ofsliceSegmentCountuint32_tvaluessliceSegmentCountmust be greater than 0
Layout
struct VkVideoDecodeH265PictureInfoKHR {
VkStructureType sType();
void const * pNext();
StdVideoDecodeH265PictureInfo const * pStdPictureInfo();
uint32_t sliceSegmentCount();
uint32_t const * pSliceSegmentOffsets();
}-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAn array ofVkVideoDecodeH265PictureInfoKHRstructs.Nested 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 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
ConstructorsConstructorDescriptionVkVideoDecodeH265PictureInfoKHR(ByteBuffer container) Creates aVkVideoDecodeH265PictureInfoKHRinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptioncalloc()Returns a newVkVideoDecodeH265PictureInfoKHRinstance allocated withmemCalloc.calloc(int capacity) Returns a newVkVideoDecodeH265PictureInfoKHR.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkVideoDecodeH265PictureInfoKHR.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.calloc(org.lwjgl.system.MemoryStack stack) Returns a newVkVideoDecodeH265PictureInfoKHRinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.create()Returns a newVkVideoDecodeH265PictureInfoKHRinstance allocated withBufferUtils.create(int capacity) Returns a newVkVideoDecodeH265PictureInfoKHR.Bufferinstance allocated withBufferUtils.create(long address) Returns a newVkVideoDecodeH265PictureInfoKHRinstance for the specified memory address.create(long address, int capacity) Create aVkVideoDecodeH265PictureInfoKHR.Bufferinstance at the specified memory.static @Nullable VkVideoDecodeH265PictureInfoKHRcreateSafe(long address) static @Nullable VkVideoDecodeH265PictureInfoKHR.BuffercreateSafe(long address, int capacity) malloc()Returns a newVkVideoDecodeH265PictureInfoKHRinstance allocated withmemAlloc.malloc(int capacity) Returns a newVkVideoDecodeH265PictureInfoKHR.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkVideoDecodeH265PictureInfoKHR.Bufferinstance allocated on the specifiedMemoryStack.malloc(org.lwjgl.system.MemoryStack stack) Returns a newVkVideoDecodeH265PictureInfoKHRinstance allocated on the specifiedMemoryStack.static longnpNext(long struct) Unsafe version ofpNext().static voidnpNext(long struct, long value) Unsafe version ofpNext.static IntBuffernpSliceSegmentOffsets(long struct) Unsafe version ofpSliceSegmentOffsets.static voidnpSliceSegmentOffsets(long struct, IntBuffer value) Unsafe version ofpSliceSegmentOffsets.npStdPictureInfo(long struct) Unsafe version ofpStdPictureInfo().static voidnpStdPictureInfo(long struct, StdVideoDecodeH265PictureInfo value) Unsafe version ofpStdPictureInfo.static intnsliceSegmentCount(long struct) Unsafe version ofsliceSegmentCount().static voidnsliceSegmentCount(long struct, int value) Sets the specified value to thesliceSegmentCountfield 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.pNext(long value) Sets the specified value to thepNext()field.a pointer to an array ofsliceSegmentCountoffsets specifying the start offset of the slice segments of the picture within the video bitstream buffer range specified inVkVideoDecodeInfoKHR.pSliceSegmentOffsets(IntBuffer value) Sets the address of the specifiedIntBufferto thepSliceSegmentOffsets()field.a pointer to aStdVideoDecodeH265PictureInfostructure specifying H.265 picture information.Sets the address of the specifiedStdVideoDecodeH265PictureInfoto thepStdPictureInfo()field.set(int sType, long pNext, StdVideoDecodeH265PictureInfo pStdPictureInfo, IntBuffer pSliceSegmentOffsets) Initializes this struct with the specified values.Copies the specified struct data to this struct.intsizeof()intthe number of elements inpSliceSegmentOffsets.intsType()aVkStructureTypevalue identifying this structure.sType(int value) Sets the specified value to thesType()field.Sets theSTRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_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. -
PSTDPICTUREINFO
public static final int PSTDPICTUREINFOThe struct member offsets. -
SLICESEGMENTCOUNT
public static final int SLICESEGMENTCOUNTThe struct member offsets. -
PSLICESEGMENTOFFSETS
public static final int PSLICESEGMENTOFFSETSThe struct member offsets.
-
-
Constructor Details
-
VkVideoDecodeH265PictureInfoKHR
Creates aVkVideoDecodeH265PictureInfoKHRinstance 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<VkVideoDecodeH265PictureInfoKHR>
-
sType
public int sType()aVkStructureTypevalue identifying this structure. -
pNext
public long pNext()NULLor a pointer to a structure extending this structure. -
pStdPictureInfo
a pointer to aStdVideoDecodeH265PictureInfostructure specifying H.265 picture information. -
sliceSegmentCount
public int sliceSegmentCount()the number of elements inpSliceSegmentOffsets. -
pSliceSegmentOffsets
a pointer to an array ofsliceSegmentCountoffsets specifying the start offset of the slice segments of the picture within the video bitstream buffer range specified inVkVideoDecodeInfoKHR. -
sType
Sets the specified value to thesType()field. -
sType$Default
Sets theSTRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_KHRvalue to thesType()field. -
pNext
Sets the specified value to thepNext()field. -
pStdPictureInfo
Sets the address of the specifiedStdVideoDecodeH265PictureInfoto thepStdPictureInfo()field. -
pSliceSegmentOffsets
Sets the address of the specifiedIntBufferto thepSliceSegmentOffsets()field. -
set
public VkVideoDecodeH265PictureInfoKHR set(int sType, long pNext, StdVideoDecodeH265PictureInfo pStdPictureInfo, IntBuffer pSliceSegmentOffsets) 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 newVkVideoDecodeH265PictureInfoKHRinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkVideoDecodeH265PictureInfoKHRinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkVideoDecodeH265PictureInfoKHRinstance allocated withBufferUtils. -
create
Returns a newVkVideoDecodeH265PictureInfoKHRinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVkVideoDecodeH265PictureInfoKHR.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkVideoDecodeH265PictureInfoKHR.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkVideoDecodeH265PictureInfoKHR.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aVkVideoDecodeH265PictureInfoKHR.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
public static @Nullable VkVideoDecodeH265PictureInfoKHR.Buffer createSafe(long address, int capacity) -
malloc
Returns a newVkVideoDecodeH265PictureInfoKHRinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newVkVideoDecodeH265PictureInfoKHRinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkVideoDecodeH265PictureInfoKHR.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkVideoDecodeH265PictureInfoKHR.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static VkVideoDecodeH265PictureInfoKHR.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkVideoDecodeH265PictureInfoKHR.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(). -
npStdPictureInfo
Unsafe version ofpStdPictureInfo(). -
nsliceSegmentCount
public static int nsliceSegmentCount(long struct) Unsafe version ofsliceSegmentCount(). -
npSliceSegmentOffsets
Unsafe version ofpSliceSegmentOffsets. -
nsType
public static void nsType(long struct, int value) Unsafe version ofsType. -
npNext
public static void npNext(long struct, long value) Unsafe version ofpNext. -
npStdPictureInfo
Unsafe version ofpStdPictureInfo. -
nsliceSegmentCount
public static void nsliceSegmentCount(long struct, int value) Sets the specified value to thesliceSegmentCountfield of the specifiedstruct. -
npSliceSegmentOffsets
Unsafe version ofpSliceSegmentOffsets. -
validate
public static void validate(long struct) Validates pointer members that should not beNULL.- Parameters:
struct- the struct to validate
-