comparison fuhtark_test/Vulkan-Headers-1.4.334/include/vk_video/vulkan_video_codec_vp9std.h @ 1501:f40d9d814c08 default tip main

did: correct vulkan-api generator
author sam <sam@basx.dev>
date Wed, 26 Nov 2025 23:34:29 +0700
parents
children
comparison
equal deleted inserted replaced
1500:91c8c3b7cbf0 1501:f40d9d814c08
1 #ifndef VULKAN_VIDEO_CODEC_VP9STD_H_
2 #define VULKAN_VIDEO_CODEC_VP9STD_H_ 1
3
4 /*
5 ** Copyright 2015-2025 The Khronos Group Inc.
6 **
7 ** SPDX-License-Identifier: Apache-2.0
8 */
9
10 /*
11 ** This header is generated from the Khronos Vulkan XML API Registry.
12 **
13 */
14
15
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19
20
21
22 // vulkan_video_codec_vp9std is a preprocessor guard. Do not pass it to API calls.
23 #define vulkan_video_codec_vp9std 1
24 #include "vulkan_video_codecs_common.h"
25 #define STD_VIDEO_VP9_NUM_REF_FRAMES 8U
26 #define STD_VIDEO_VP9_REFS_PER_FRAME 3U
27 #define STD_VIDEO_VP9_MAX_REF_FRAMES 4U
28 #define STD_VIDEO_VP9_LOOP_FILTER_ADJUSTMENTS 2U
29 #define STD_VIDEO_VP9_MAX_SEGMENTS 8U
30 #define STD_VIDEO_VP9_SEG_LVL_MAX 4U
31 #define STD_VIDEO_VP9_MAX_SEGMENTATION_TREE_PROBS 7U
32 #define STD_VIDEO_VP9_MAX_SEGMENTATION_PRED_PROB 3U
33
34 typedef enum StdVideoVP9Profile {
35 STD_VIDEO_VP9_PROFILE_0 = 0,
36 STD_VIDEO_VP9_PROFILE_1 = 1,
37 STD_VIDEO_VP9_PROFILE_2 = 2,
38 STD_VIDEO_VP9_PROFILE_3 = 3,
39 STD_VIDEO_VP9_PROFILE_INVALID = 0x7FFFFFFF,
40 STD_VIDEO_VP9_PROFILE_MAX_ENUM = 0x7FFFFFFF
41 } StdVideoVP9Profile;
42
43 typedef enum StdVideoVP9Level {
44 STD_VIDEO_VP9_LEVEL_1_0 = 0,
45 STD_VIDEO_VP9_LEVEL_1_1 = 1,
46 STD_VIDEO_VP9_LEVEL_2_0 = 2,
47 STD_VIDEO_VP9_LEVEL_2_1 = 3,
48 STD_VIDEO_VP9_LEVEL_3_0 = 4,
49 STD_VIDEO_VP9_LEVEL_3_1 = 5,
50 STD_VIDEO_VP9_LEVEL_4_0 = 6,
51 STD_VIDEO_VP9_LEVEL_4_1 = 7,
52 STD_VIDEO_VP9_LEVEL_5_0 = 8,
53 STD_VIDEO_VP9_LEVEL_5_1 = 9,
54 STD_VIDEO_VP9_LEVEL_5_2 = 10,
55 STD_VIDEO_VP9_LEVEL_6_0 = 11,
56 STD_VIDEO_VP9_LEVEL_6_1 = 12,
57 STD_VIDEO_VP9_LEVEL_6_2 = 13,
58 STD_VIDEO_VP9_LEVEL_INVALID = 0x7FFFFFFF,
59 STD_VIDEO_VP9_LEVEL_MAX_ENUM = 0x7FFFFFFF
60 } StdVideoVP9Level;
61
62 typedef enum StdVideoVP9FrameType {
63 STD_VIDEO_VP9_FRAME_TYPE_KEY = 0,
64 STD_VIDEO_VP9_FRAME_TYPE_NON_KEY = 1,
65 STD_VIDEO_VP9_FRAME_TYPE_INVALID = 0x7FFFFFFF,
66 STD_VIDEO_VP9_FRAME_TYPE_MAX_ENUM = 0x7FFFFFFF
67 } StdVideoVP9FrameType;
68
69 typedef enum StdVideoVP9ReferenceName {
70 STD_VIDEO_VP9_REFERENCE_NAME_INTRA_FRAME = 0,
71 STD_VIDEO_VP9_REFERENCE_NAME_LAST_FRAME = 1,
72 STD_VIDEO_VP9_REFERENCE_NAME_GOLDEN_FRAME = 2,
73 STD_VIDEO_VP9_REFERENCE_NAME_ALTREF_FRAME = 3,
74 STD_VIDEO_VP9_REFERENCE_NAME_INVALID = 0x7FFFFFFF,
75 STD_VIDEO_VP9_REFERENCE_NAME_MAX_ENUM = 0x7FFFFFFF
76 } StdVideoVP9ReferenceName;
77
78 typedef enum StdVideoVP9InterpolationFilter {
79 STD_VIDEO_VP9_INTERPOLATION_FILTER_EIGHTTAP = 0,
80 STD_VIDEO_VP9_INTERPOLATION_FILTER_EIGHTTAP_SMOOTH = 1,
81 STD_VIDEO_VP9_INTERPOLATION_FILTER_EIGHTTAP_SHARP = 2,
82 STD_VIDEO_VP9_INTERPOLATION_FILTER_BILINEAR = 3,
83 STD_VIDEO_VP9_INTERPOLATION_FILTER_SWITCHABLE = 4,
84 STD_VIDEO_VP9_INTERPOLATION_FILTER_INVALID = 0x7FFFFFFF,
85 STD_VIDEO_VP9_INTERPOLATION_FILTER_MAX_ENUM = 0x7FFFFFFF
86 } StdVideoVP9InterpolationFilter;
87
88 typedef enum StdVideoVP9ColorSpace {
89 STD_VIDEO_VP9_COLOR_SPACE_UNKNOWN = 0,
90 STD_VIDEO_VP9_COLOR_SPACE_BT_601 = 1,
91 STD_VIDEO_VP9_COLOR_SPACE_BT_709 = 2,
92 STD_VIDEO_VP9_COLOR_SPACE_SMPTE_170 = 3,
93 STD_VIDEO_VP9_COLOR_SPACE_SMPTE_240 = 4,
94 STD_VIDEO_VP9_COLOR_SPACE_BT_2020 = 5,
95 STD_VIDEO_VP9_COLOR_SPACE_RESERVED = 6,
96 STD_VIDEO_VP9_COLOR_SPACE_RGB = 7,
97 STD_VIDEO_VP9_COLOR_SPACE_INVALID = 0x7FFFFFFF,
98 STD_VIDEO_VP9_COLOR_SPACE_MAX_ENUM = 0x7FFFFFFF
99 } StdVideoVP9ColorSpace;
100 typedef struct StdVideoVP9ColorConfigFlags {
101 uint32_t color_range : 1;
102 uint32_t reserved : 31;
103 } StdVideoVP9ColorConfigFlags;
104
105 typedef struct StdVideoVP9ColorConfig {
106 StdVideoVP9ColorConfigFlags flags;
107 uint8_t BitDepth;
108 uint8_t subsampling_x;
109 uint8_t subsampling_y;
110 uint8_t reserved1;
111 StdVideoVP9ColorSpace color_space;
112 } StdVideoVP9ColorConfig;
113
114 typedef struct StdVideoVP9LoopFilterFlags {
115 uint32_t loop_filter_delta_enabled : 1;
116 uint32_t loop_filter_delta_update : 1;
117 uint32_t reserved : 30;
118 } StdVideoVP9LoopFilterFlags;
119
120 typedef struct StdVideoVP9LoopFilter {
121 StdVideoVP9LoopFilterFlags flags;
122 uint8_t loop_filter_level;
123 uint8_t loop_filter_sharpness;
124 uint8_t update_ref_delta;
125 int8_t loop_filter_ref_deltas[STD_VIDEO_VP9_MAX_REF_FRAMES];
126 uint8_t update_mode_delta;
127 int8_t loop_filter_mode_deltas[STD_VIDEO_VP9_LOOP_FILTER_ADJUSTMENTS];
128 } StdVideoVP9LoopFilter;
129
130 typedef struct StdVideoVP9SegmentationFlags {
131 uint32_t segmentation_update_map : 1;
132 uint32_t segmentation_temporal_update : 1;
133 uint32_t segmentation_update_data : 1;
134 uint32_t segmentation_abs_or_delta_update : 1;
135 uint32_t reserved : 28;
136 } StdVideoVP9SegmentationFlags;
137
138 typedef struct StdVideoVP9Segmentation {
139 StdVideoVP9SegmentationFlags flags;
140 uint8_t segmentation_tree_probs[STD_VIDEO_VP9_MAX_SEGMENTATION_TREE_PROBS];
141 uint8_t segmentation_pred_prob[STD_VIDEO_VP9_MAX_SEGMENTATION_PRED_PROB];
142 uint8_t FeatureEnabled[STD_VIDEO_VP9_MAX_SEGMENTS];
143 int16_t FeatureData[STD_VIDEO_VP9_MAX_SEGMENTS][STD_VIDEO_VP9_SEG_LVL_MAX];
144 } StdVideoVP9Segmentation;
145
146
147 #ifdef __cplusplus
148 }
149 #endif
150
151 #endif