Class VkVideoEncodeH265CapabilitiesKHR

java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkVideoEncodeH265CapabilitiesKHR>
org.lwjgl.vulkan.VkVideoEncodeH265CapabilitiesKHR
All Implemented Interfaces:
AutoCloseable, org.lwjgl.system.NativeResource, org.lwjgl.system.Pointer

public class VkVideoEncodeH265CapabilitiesKHR extends org.lwjgl.system.Struct<VkVideoEncodeH265CapabilitiesKHR> implements org.lwjgl.system.NativeResource
Structure describing H.265 encode capabilities.
Valid Usage (Implicit)
See Also

VkExtent2D

Layout


 struct VkVideoEncodeH265CapabilitiesKHR {
     VkStructureType sType();
     void * pNext();
     VkVideoEncodeH265CapabilityFlagsKHR flags();
     StdVideoH265LevelIdc maxLevelIdc();
     uint32_t maxSliceSegmentCount();
     VkExtent2D maxTiles();
     VkVideoEncodeH265CtbSizeFlagsKHR ctbSizes();
     VkVideoEncodeH265TransformBlockSizeFlagsKHR transformBlockSizes();
     uint32_t maxPPictureL0ReferenceCount();
     uint32_t maxBPictureL0ReferenceCount();
     uint32_t maxL1ReferenceCount();
     uint32_t maxSubLayerCount();
     VkBool32 expectDyadicTemporalSubLayerPattern();
     int32_t minQp();
     int32_t maxQp();
     VkBool32 prefersGopRemainingFrames();
     VkBool32 requiresGopRemainingFrames();
     VkVideoEncodeH265StdFlagsKHR stdSyntaxFlags();
 }
  • Field Details

    • SIZEOF

      public static final int SIZEOF
      The struct size in bytes.
    • ALIGNOF

      public static final int ALIGNOF
      The struct alignment in bytes.
    • STYPE

      public static final int STYPE
      The struct member offsets.
    • PNEXT

      public static final int PNEXT
      The struct member offsets.
    • FLAGS

      public static final int FLAGS
      The struct member offsets.
    • MAXLEVELIDC

      public static final int MAXLEVELIDC
      The struct member offsets.
    • MAXSLICESEGMENTCOUNT

      public static final int MAXSLICESEGMENTCOUNT
      The struct member offsets.
    • MAXTILES

      public static final int MAXTILES
      The struct member offsets.
    • CTBSIZES

      public static final int CTBSIZES
      The struct member offsets.
    • TRANSFORMBLOCKSIZES

      public static final int TRANSFORMBLOCKSIZES
      The struct member offsets.
    • MAXPPICTUREL0REFERENCECOUNT

      public static final int MAXPPICTUREL0REFERENCECOUNT
      The struct member offsets.
    • MAXBPICTUREL0REFERENCECOUNT

      public static final int MAXBPICTUREL0REFERENCECOUNT
      The struct member offsets.
    • MAXL1REFERENCECOUNT

      public static final int MAXL1REFERENCECOUNT
      The struct member offsets.
    • MAXSUBLAYERCOUNT

      public static final int MAXSUBLAYERCOUNT
      The struct member offsets.
    • EXPECTDYADICTEMPORALSUBLAYERPATTERN

      public static final int EXPECTDYADICTEMPORALSUBLAYERPATTERN
      The struct member offsets.
    • MINQP

      public static final int MINQP
      The struct member offsets.
    • MAXQP

      public static final int MAXQP
      The struct member offsets.
    • PREFERSGOPREMAININGFRAMES

      public static final int PREFERSGOPREMAININGFRAMES
      The struct member offsets.
    • REQUIRESGOPREMAININGFRAMES

      public static final int REQUIRESGOPREMAININGFRAMES
      The struct member offsets.
    • STDSYNTAXFLAGS

      public static final int STDSYNTAXFLAGS
      The struct member offsets.
  • Constructor Details

    • VkVideoEncodeH265CapabilitiesKHR

      public VkVideoEncodeH265CapabilitiesKHR(ByteBuffer container)
      Creates a VkVideoEncodeH265CapabilitiesKHR instance at the current position of the specified ByteBuffer container. 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:
      sizeof in class org.lwjgl.system.Struct<VkVideoEncodeH265CapabilitiesKHR>
    • sType

      public int sType()
      a VkStructureType value identifying this structure.
    • pNext

      public long pNext()
      NULL or a pointer to a structure extending this structure.
    • flags

      public int flags()
      a bitmask of VkVideoEncodeH265CapabilityFlagBitsKHR indicating supported H.265 encoding capabilities.
    • maxLevelIdc

      public int maxLevelIdc()
      a StdVideoH265LevelIdc value indicating the maximum H.265 level supported by the profile, where enum constant STD_VIDEO_H265_LEVEL_IDC_&lt;major&gt;_&lt;minor&gt; identifies H.265 level &lt;major&gt;.&lt;minor&gt; as defined in section A.4 of the ITU-T H.265 Specification.
    • maxSliceSegmentCount

      public int maxSliceSegmentCount()
      indicates the maximum number of slice segments that can be encoded for a single picture. Further restrictions may apply to the number of slice segments that can be encoded for a single picture depending on other capabilities and codec-specific rules.
    • maxTiles

      public VkExtent2D maxTiles()
      indicates the maximum number of H.265 tile columns and rows, as defined in sections 3.175 and 3.176 of the ITU-T H.265 Specification that can be encoded for a single picture. Further restrictions may apply to the number of H.265 tiles that can be encoded for a single picture depending on other capabilities and codec-specific rules.
    • ctbSizes

      public int ctbSizes()
      a bitmask of VkVideoEncodeH265CtbSizeFlagBitsKHR describing the supported CTB sizes.
    • transformBlockSizes

      public int transformBlockSizes()
      a bitmask of VkVideoEncodeH265TransformBlockSizeFlagBitsKHR describing the supported transform block sizes.
    • maxPPictureL0ReferenceCount

      public int maxPPictureL0ReferenceCount()
      indicates the maximum number of reference pictures the implementation supports in the reference list L0 for P pictures.
      Note

      As implementations may override the reference lists, maxPPictureL0ReferenceCount does not limit the number of elements that the application can specify in the L0 reference list for P pictures. However, if maxPPictureL0ReferenceCount is zero, then the use of P pictures is not allowed. In case of H.265 encoding, pictures can be encoded using only forward prediction even if P pictures are not supported, as the ITU-T H.265 Specification supports generalized P & B frames (also known as low delay B frames) whereas B frames can refer to past frames through both the L0 and L1 reference lists.

    • maxBPictureL0ReferenceCount

      public int maxBPictureL0ReferenceCount()
      indicates the maximum number of reference pictures the implementation supports in the reference list L0 for B pictures.
    • maxL1ReferenceCount

      public int maxL1ReferenceCount()
      indicates the maximum number of reference pictures the implementation supports in the reference list L1 if encoding of B pictures is supported.
      Note

      As implementations may override the reference lists, maxBPictureL0ReferenceCount and maxL1ReferenceCount does not limit the number of elements that the application can specify in the L0 and L1 reference lists for B pictures. However, if maxBPictureL0ReferenceCount and maxL1ReferenceCount are both zero, then the use of B pictures is not allowed.

    • maxSubLayerCount

      public int maxSubLayerCount()
      indicates the maximum number of H.265 sub-layers supported by the implementation.
    • expectDyadicTemporalSubLayerPattern

      public boolean expectDyadicTemporalSubLayerPattern()
      indicates that the implementation’s rate control algorithms expect the application to use a dyadic temporal sub-layer pattern when encoding multiple temporal sub-layers.
    • minQp

      public int minQp()
      indicates the minimum QP value supported.
    • maxQp

      public int maxQp()
      indicates the maximum QP value supported.
    • prefersGopRemainingFrames

      public boolean prefersGopRemainingFrames()
      indicates that the implementation’s rate control algorithm prefers the application to specify the number of frames of each type remaining in the current group of pictures when beginning a video coding scope.
    • requiresGopRemainingFrames

      public boolean requiresGopRemainingFrames()
      indicates that the implementation’s rate control algorithm requires the application to specify the number of frames of each type remaining in the current group of pictures when beginning a video coding scope.
    • stdSyntaxFlags

      public int stdSyntaxFlags()
      a bitmask of VkVideoEncodeH265StdFlagBitsKHR indicating capabilities related to H.265 syntax elements.
    • sType

      public VkVideoEncodeH265CapabilitiesKHR sType(int value)
      Sets the specified value to the sType() field.
    • sType$Default

      public VkVideoEncodeH265CapabilitiesKHR sType$Default()
    • pNext

      public VkVideoEncodeH265CapabilitiesKHR pNext(long value)
      Sets the specified value to the pNext() field.
    • set

      public VkVideoEncodeH265CapabilitiesKHR set(int sType, long pNext)
      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

      public static VkVideoEncodeH265CapabilitiesKHR malloc()
      Returns a new VkVideoEncodeH265CapabilitiesKHR instance allocated with memAlloc. The instance must be explicitly freed.
    • calloc

      public static VkVideoEncodeH265CapabilitiesKHR calloc()
      Returns a new VkVideoEncodeH265CapabilitiesKHR instance allocated with memCalloc. The instance must be explicitly freed.
    • create

      public static VkVideoEncodeH265CapabilitiesKHR create()
      Returns a new VkVideoEncodeH265CapabilitiesKHR instance allocated with BufferUtils.
    • create

      public static VkVideoEncodeH265CapabilitiesKHR create(long address)
      Returns a new VkVideoEncodeH265CapabilitiesKHR instance for the specified memory address.
    • createSafe

      public static @Nullable VkVideoEncodeH265CapabilitiesKHR createSafe(long address)
      Like create, but returns null if address is NULL.
    • malloc

      public static VkVideoEncodeH265CapabilitiesKHR.Buffer malloc(int capacity)
      Returns a new VkVideoEncodeH265CapabilitiesKHR.Buffer instance allocated with memAlloc. The instance must be explicitly freed.
      Parameters:
      capacity - the buffer capacity
    • calloc

      public static VkVideoEncodeH265CapabilitiesKHR.Buffer calloc(int capacity)
      Returns a new VkVideoEncodeH265CapabilitiesKHR.Buffer instance allocated with memCalloc. The instance must be explicitly freed.
      Parameters:
      capacity - the buffer capacity
    • create

      public static VkVideoEncodeH265CapabilitiesKHR.Buffer create(int capacity)
      Returns a new VkVideoEncodeH265CapabilitiesKHR.Buffer instance allocated with BufferUtils.
      Parameters:
      capacity - the buffer capacity
    • create

      public static VkVideoEncodeH265CapabilitiesKHR.Buffer create(long address, int capacity)
      Create a VkVideoEncodeH265CapabilitiesKHR.Buffer instance at the specified memory.
      Parameters:
      address - the memory address
      capacity - the buffer capacity
    • createSafe

      public static @Nullable VkVideoEncodeH265CapabilitiesKHR.Buffer createSafe(long address, int capacity)
      Like create, but returns null if address is NULL.
    • malloc

      public static VkVideoEncodeH265CapabilitiesKHR malloc(org.lwjgl.system.MemoryStack stack)
      Returns a new VkVideoEncodeH265CapabilitiesKHR instance allocated on the specified MemoryStack.
      Parameters:
      stack - the stack from which to allocate
    • calloc

      public static VkVideoEncodeH265CapabilitiesKHR calloc(org.lwjgl.system.MemoryStack stack)
      Returns a new VkVideoEncodeH265CapabilitiesKHR instance allocated on the specified MemoryStack and initializes all its bits to zero.
      Parameters:
      stack - the stack from which to allocate
    • malloc

      public static VkVideoEncodeH265CapabilitiesKHR.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack)
      Returns a new VkVideoEncodeH265CapabilitiesKHR.Buffer instance allocated on the specified MemoryStack.
      Parameters:
      capacity - the buffer capacity
      stack - the stack from which to allocate
    • calloc

      public static VkVideoEncodeH265CapabilitiesKHR.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
      Returns a new VkVideoEncodeH265CapabilitiesKHR.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.
      Parameters:
      capacity - the buffer capacity
      stack - the stack from which to allocate
    • nsType

      public static int nsType(long struct)
      Unsafe version of sType().
    • npNext

      public static long npNext(long struct)
      Unsafe version of pNext().
    • nflags

      public static int nflags(long struct)
      Unsafe version of flags().
    • nmaxLevelIdc

      public static int nmaxLevelIdc(long struct)
      Unsafe version of maxLevelIdc().
    • nmaxSliceSegmentCount

      public static int nmaxSliceSegmentCount(long struct)
      Unsafe version of maxSliceSegmentCount().
    • nmaxTiles

      public static VkExtent2D nmaxTiles(long struct)
      Unsafe version of maxTiles().
    • nctbSizes

      public static int nctbSizes(long struct)
      Unsafe version of ctbSizes().
    • ntransformBlockSizes

      public static int ntransformBlockSizes(long struct)
      Unsafe version of transformBlockSizes().
    • nmaxPPictureL0ReferenceCount

      public static int nmaxPPictureL0ReferenceCount(long struct)
    • nmaxBPictureL0ReferenceCount

      public static int nmaxBPictureL0ReferenceCount(long struct)
    • nmaxL1ReferenceCount

      public static int nmaxL1ReferenceCount(long struct)
      Unsafe version of maxL1ReferenceCount().
    • nmaxSubLayerCount

      public static int nmaxSubLayerCount(long struct)
      Unsafe version of maxSubLayerCount().
    • nexpectDyadicTemporalSubLayerPattern

      public static int nexpectDyadicTemporalSubLayerPattern(long struct)
    • nminQp

      public static int nminQp(long struct)
      Unsafe version of minQp().
    • nmaxQp

      public static int nmaxQp(long struct)
      Unsafe version of maxQp().
    • nprefersGopRemainingFrames

      public static int nprefersGopRemainingFrames(long struct)
      Unsafe version of prefersGopRemainingFrames().
    • nrequiresGopRemainingFrames

      public static int nrequiresGopRemainingFrames(long struct)
      Unsafe version of requiresGopRemainingFrames().
    • nstdSyntaxFlags

      public static int nstdSyntaxFlags(long struct)
      Unsafe version of stdSyntaxFlags().
    • nsType

      public static void nsType(long struct, int value)
      Unsafe version of sType.
    • npNext

      public static void npNext(long struct, long value)
      Unsafe version of pNext.