C Specification

The VkVideoEncodeH264NaluSliceEXT structure representing a slice is defined as:

// Provided by VK_EXT_video_encode_h264
typedef struct VkVideoEncodeH264NaluSliceEXT {
    VkStructureType                           sType;
    const void*                               pNext;
    const StdVideoEncodeH264SliceHeader*      pSliceHeaderStd;
    uint32_t                                  mbCount;
    uint8_t                                   refFinalList0EntryCount;
    const VkVideoEncodeH264DpbSlotInfoEXT*    pRefFinalList0Entries;
    uint8_t                                   refFinalList1EntryCount;
    const VkVideoEncodeH264DpbSlotInfoEXT*    pRefFinalList1Entries;
} VkVideoEncodeH264NaluSliceEXT;

Members

  • sType is the type of this structure.

  • pNext is NULL or a pointer to a structure extending this structure.

  • pSliceHeaderStd is a pointer to a StdVideoEncodeH264SliceHeader specifying the standard slice header from the H.264 specification.

  • mbCount is the number of macroblocks in this slice.

  • refFinalList0EntryCount is the number of active references in List0. If zero, the default frame List0 provided in the enclosing VkVideoEncodeH264VclFrameInfoEXT is used. If non-zero, it overrides the default frame List0 for this slice.

  • pRefFinalList0Entries is a pointer to a VkVideoEncodeH264DpbSlotInfoEXT specifying DPB information for the active List0 references. The same restrictions related to order of entries and decoded picture marking operations described for List0 in VkVideoEncodeH264VclFrameInfoEXT apply here.

  • refFinalList1EntryCount is the number of active references in List1. If zero, the default frame List1 provided in the enclosing VkVideoEncodeH264VclFrameInfoEXT is used. If non-zero, it overrides the default frame List1 for this slice.

  • pRefFinalList1Entries is a pointer to a VkVideoEncodeH264DpbSlotInfoEXT structure specifying DPB information for the active List1 references. The same restrictions related to order of entries and decoded picture marking operations described for List1 in VkVideoEncodeH264VclFrameInfoEXT apply here.

Description

Valid Usage (Implicit)
  • VUID-VkVideoEncodeH264NaluSliceEXT-sType-sType
    sType must be VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_EXT

  • VUID-VkVideoEncodeH264NaluSliceEXT-pNext-pNext
    pNext must be NULL

  • VUID-VkVideoEncodeH264NaluSliceEXT-pSliceHeaderStd-parameter
    pSliceHeaderStd must be a valid pointer to a valid StdVideoEncodeH264SliceHeader value

  • VUID-VkVideoEncodeH264NaluSliceEXT-pRefFinalList0Entries-parameter
    pRefFinalList0Entries must be a valid pointer to an array of refFinalList0EntryCount valid VkVideoEncodeH264DpbSlotInfoEXT structures

  • VUID-VkVideoEncodeH264NaluSliceEXT-pRefFinalList1Entries-parameter
    pRefFinalList1Entries must be a valid pointer to an array of refFinalList1EntryCount valid VkVideoEncodeH264DpbSlotInfoEXT structures

  • VUID-VkVideoEncodeH264NaluSliceEXT-refFinalList0EntryCount-arraylength
    refFinalList0EntryCount must be greater than 0

  • VUID-VkVideoEncodeH264NaluSliceEXT-refFinalList1EntryCount-arraylength
    refFinalList1EntryCount must be greater than 0

See Also

Document Notes

For more information, see the Vulkan Specification

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

Copyright 2014-2021 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0