|
|
@@ -22,7 +22,7 @@ extern "C" {
|
|
|
#define VK_KHR_video_queue 1
|
|
|
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkVideoSessionKHR)
|
|
|
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkVideoSessionParametersKHR)
|
|
|
-#define VK_KHR_VIDEO_QUEUE_SPEC_VERSION 1
|
|
|
+#define VK_KHR_VIDEO_QUEUE_SPEC_VERSION 2
|
|
|
#define VK_KHR_VIDEO_QUEUE_EXTENSION_NAME "VK_KHR_video_queue"
|
|
|
|
|
|
typedef enum VkQueryResultStatusKHR {
|
|
|
@@ -66,12 +66,12 @@ typedef enum VkVideoComponentBitDepthFlagBitsKHR {
|
|
|
} VkVideoComponentBitDepthFlagBitsKHR;
|
|
|
typedef VkFlags VkVideoComponentBitDepthFlagsKHR;
|
|
|
|
|
|
-typedef enum VkVideoCapabilitiesFlagBitsKHR {
|
|
|
- VK_VIDEO_CAPABILITIES_PROTECTED_CONTENT_BIT_KHR = 0x00000001,
|
|
|
- VK_VIDEO_CAPABILITIES_SEPARATE_REFERENCE_IMAGES_BIT_KHR = 0x00000002,
|
|
|
- VK_VIDEO_CAPABILITIES_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
|
|
|
-} VkVideoCapabilitiesFlagBitsKHR;
|
|
|
-typedef VkFlags VkVideoCapabilitiesFlagsKHR;
|
|
|
+typedef enum VkVideoCapabilityFlagBitsKHR {
|
|
|
+ VK_VIDEO_CAPABILITY_PROTECTED_CONTENT_BIT_KHR = 0x00000001,
|
|
|
+ VK_VIDEO_CAPABILITY_SEPARATE_REFERENCE_IMAGES_BIT_KHR = 0x00000002,
|
|
|
+ VK_VIDEO_CAPABILITY_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
|
|
|
+} VkVideoCapabilityFlagBitsKHR;
|
|
|
+typedef VkFlags VkVideoCapabilityFlagsKHR;
|
|
|
|
|
|
typedef enum VkVideoSessionCreateFlagBitsKHR {
|
|
|
VK_VIDEO_SESSION_CREATE_DEFAULT_KHR = 0,
|
|
|
@@ -120,16 +120,16 @@ typedef struct VkVideoProfilesKHR {
|
|
|
} VkVideoProfilesKHR;
|
|
|
|
|
|
typedef struct VkVideoCapabilitiesKHR {
|
|
|
- VkStructureType sType;
|
|
|
- void* pNext;
|
|
|
- VkVideoCapabilitiesFlagsKHR capabilityFlags;
|
|
|
- VkDeviceSize minBitstreamBufferOffsetAlignment;
|
|
|
- VkDeviceSize minBitstreamBufferSizeAlignment;
|
|
|
- VkExtent2D videoPictureExtentGranularity;
|
|
|
- VkExtent2D minExtent;
|
|
|
- VkExtent2D maxExtent;
|
|
|
- uint32_t maxReferencePicturesSlotsCount;
|
|
|
- uint32_t maxReferencePicturesActiveCount;
|
|
|
+ VkStructureType sType;
|
|
|
+ void* pNext;
|
|
|
+ VkVideoCapabilityFlagsKHR capabilityFlags;
|
|
|
+ VkDeviceSize minBitstreamBufferOffsetAlignment;
|
|
|
+ VkDeviceSize minBitstreamBufferSizeAlignment;
|
|
|
+ VkExtent2D videoPictureExtentGranularity;
|
|
|
+ VkExtent2D minExtent;
|
|
|
+ VkExtent2D maxExtent;
|
|
|
+ uint32_t maxReferencePicturesSlotsCount;
|
|
|
+ uint32_t maxReferencePicturesActiveCount;
|
|
|
} VkVideoCapabilitiesKHR;
|
|
|
|
|
|
typedef struct VkPhysicalDeviceVideoFormatInfoKHR {
|
|
|
@@ -433,10 +433,10 @@ VKAPI_ATTR void VKAPI_CALL vkCmdEncodeVideoKHR(
|
|
|
#define VK_EXT_video_encode_h264 1
|
|
|
#include "vk_video/vulkan_video_codec_h264std.h"
|
|
|
#include "vk_video/vulkan_video_codec_h264std_encode.h"
|
|
|
-#define VK_EXT_VIDEO_ENCODE_H264_SPEC_VERSION 1
|
|
|
+#define VK_EXT_VIDEO_ENCODE_H264_SPEC_VERSION 2
|
|
|
#define VK_EXT_VIDEO_ENCODE_H264_EXTENSION_NAME "VK_EXT_video_encode_h264"
|
|
|
|
|
|
-typedef enum VkVideoEncodeH264CapabilitiesFlagBitsEXT {
|
|
|
+typedef enum VkVideoEncodeH264CapabilityFlagBitsEXT {
|
|
|
VK_VIDEO_ENCODE_H264_CAPABILITY_CABAC_BIT_EXT = 0x00000001,
|
|
|
VK_VIDEO_ENCODE_H264_CAPABILITY_CAVLC_BIT_EXT = 0x00000002,
|
|
|
VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BI_PRED_IMPLICIT_BIT_EXT = 0x00000004,
|
|
|
@@ -448,9 +448,9 @@ typedef enum VkVideoEncodeH264CapabilitiesFlagBitsEXT {
|
|
|
VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_PARTIAL_BIT_EXT = 0x00000100,
|
|
|
VK_VIDEO_ENCODE_H264_CAPABILITY_MULTIPLE_SLICE_PER_FRAME_BIT_EXT = 0x00000200,
|
|
|
VK_VIDEO_ENCODE_H264_CAPABILITY_EVENLY_DISTRIBUTED_SLICE_SIZE_BIT_EXT = 0x00000400,
|
|
|
- VK_VIDEO_ENCODE_H264_CAPABILITIES_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
|
|
|
-} VkVideoEncodeH264CapabilitiesFlagBitsEXT;
|
|
|
-typedef VkFlags VkVideoEncodeH264CapabilitiesFlagsEXT;
|
|
|
+ VK_VIDEO_ENCODE_H264_CAPABILITY_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
|
|
|
+} VkVideoEncodeH264CapabilityFlagBitsEXT;
|
|
|
+typedef VkFlags VkVideoEncodeH264CapabilityFlagsEXT;
|
|
|
|
|
|
typedef enum VkVideoEncodeH264InputModeFlagBitsEXT {
|
|
|
VK_VIDEO_ENCODE_H264_INPUT_MODE_FRAME_BIT_EXT = 0x00000001,
|
|
|
@@ -475,19 +475,19 @@ typedef enum VkVideoEncodeH264CreateFlagBitsEXT {
|
|
|
} VkVideoEncodeH264CreateFlagBitsEXT;
|
|
|
typedef VkFlags VkVideoEncodeH264CreateFlagsEXT;
|
|
|
typedef struct VkVideoEncodeH264CapabilitiesEXT {
|
|
|
- VkStructureType sType;
|
|
|
- const void* pNext;
|
|
|
- VkVideoEncodeH264CapabilitiesFlagsEXT flags;
|
|
|
- VkVideoEncodeH264InputModeFlagsEXT inputModeFlags;
|
|
|
- VkVideoEncodeH264OutputModeFlagsEXT outputModeFlags;
|
|
|
- VkExtent2D minPictureSizeInMbs;
|
|
|
- VkExtent2D maxPictureSizeInMbs;
|
|
|
- VkExtent2D inputImageDataAlignment;
|
|
|
- uint8_t maxNumL0ReferenceForP;
|
|
|
- uint8_t maxNumL0ReferenceForB;
|
|
|
- uint8_t maxNumL1Reference;
|
|
|
- uint8_t qualityLevelCount;
|
|
|
- VkExtensionProperties stdExtensionVersion;
|
|
|
+ VkStructureType sType;
|
|
|
+ const void* pNext;
|
|
|
+ VkVideoEncodeH264CapabilityFlagsEXT flags;
|
|
|
+ VkVideoEncodeH264InputModeFlagsEXT inputModeFlags;
|
|
|
+ VkVideoEncodeH264OutputModeFlagsEXT outputModeFlags;
|
|
|
+ VkExtent2D minPictureSizeInMbs;
|
|
|
+ VkExtent2D maxPictureSizeInMbs;
|
|
|
+ VkExtent2D inputImageDataAlignment;
|
|
|
+ uint8_t maxNumL0ReferenceForP;
|
|
|
+ uint8_t maxNumL0ReferenceForB;
|
|
|
+ uint8_t maxNumL1Reference;
|
|
|
+ uint8_t qualityLevelCount;
|
|
|
+ VkExtensionProperties stdExtensionVersion;
|
|
|
} VkVideoEncodeH264CapabilitiesEXT;
|
|
|
|
|
|
typedef struct VkVideoEncodeH264SessionCreateInfoEXT {
|
|
|
@@ -567,22 +567,22 @@ typedef struct VkVideoEncodeH264ProfileEXT {
|
|
|
|
|
|
#define VK_EXT_video_decode_h264 1
|
|
|
#include "vk_video/vulkan_video_codec_h264std_decode.h"
|
|
|
-#define VK_EXT_VIDEO_DECODE_H264_SPEC_VERSION 1
|
|
|
+#define VK_EXT_VIDEO_DECODE_H264_SPEC_VERSION 3
|
|
|
#define VK_EXT_VIDEO_DECODE_H264_EXTENSION_NAME "VK_EXT_video_decode_h264"
|
|
|
|
|
|
-typedef enum VkVideoDecodeH264FieldLayoutFlagBitsEXT {
|
|
|
- VK_VIDEO_DECODE_H264_PROGRESSIVE_PICTURES_ONLY_EXT = 0,
|
|
|
- VK_VIDEO_DECODE_H264_FIELD_LAYOUT_LINE_INTERLACED_PLANE_BIT_EXT = 0x00000001,
|
|
|
- VK_VIDEO_DECODE_H264_FIELD_LAYOUT_SEPARATE_INTERLACED_PLANE_BIT_EXT = 0x00000002,
|
|
|
- VK_VIDEO_DECODE_H264_FIELD_LAYOUT_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
|
|
|
-} VkVideoDecodeH264FieldLayoutFlagBitsEXT;
|
|
|
-typedef VkFlags VkVideoDecodeH264FieldLayoutFlagsEXT;
|
|
|
+typedef enum VkVideoDecodeH264PictureLayoutFlagBitsEXT {
|
|
|
+ VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_PROGRESSIVE_EXT = 0,
|
|
|
+ VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_INTERLEAVED_LINES_BIT_EXT = 0x00000001,
|
|
|
+ VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_SEPARATE_PLANES_BIT_EXT = 0x00000002,
|
|
|
+ VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
|
|
|
+} VkVideoDecodeH264PictureLayoutFlagBitsEXT;
|
|
|
+typedef VkFlags VkVideoDecodeH264PictureLayoutFlagsEXT;
|
|
|
typedef VkFlags VkVideoDecodeH264CreateFlagsEXT;
|
|
|
typedef struct VkVideoDecodeH264ProfileEXT {
|
|
|
- VkStructureType sType;
|
|
|
- const void* pNext;
|
|
|
- StdVideoH264ProfileIdc stdProfileIdc;
|
|
|
- VkVideoDecodeH264FieldLayoutFlagsEXT fieldLayout;
|
|
|
+ VkStructureType sType;
|
|
|
+ const void* pNext;
|
|
|
+ StdVideoH264ProfileIdc stdProfileIdc;
|
|
|
+ VkVideoDecodeH264PictureLayoutFlagsEXT pictureLayout;
|
|
|
} VkVideoDecodeH264ProfileEXT;
|
|
|
|
|
|
typedef struct VkVideoDecodeH264CapabilitiesEXT {
|