1#ifndef VULKAN_VIDEO_CODEC_H264STD_DECODE_H_
2#define VULKAN_VIDEO_CODEC_H264STD_DECODE_H_ 1
3
4/*
5** Copyright 2015-2023 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
17extern "C" {
18#endif
19
20
21
22#define vulkan_video_codec_h264std_decode 1
23
24#define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_1_0_0 VK_MAKE_VIDEO_STD_VERSION(1, 0, 0)
25
26#define STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE 2
27#define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_1_0_0
28#define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h264_decode"
29
30typedef enum StdVideoDecodeH264FieldOrderCount {
31 STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_TOP = 0,
32 STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_BOTTOM = 1,
33 STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_INVALID = 0x7FFFFFFF,
34 STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_MAX_ENUM = 0x7FFFFFFF
35} StdVideoDecodeH264FieldOrderCount;
36typedef struct StdVideoDecodeH264PictureInfoFlags {
37 uint32_t field_pic_flag : 1;
38 uint32_t is_intra : 1;
39 uint32_t IdrPicFlag : 1;
40 uint32_t bottom_field_flag : 1;
41 uint32_t is_reference : 1;
42 uint32_t complementary_field_pair : 1;
43} StdVideoDecodeH264PictureInfoFlags;
44
45typedef struct StdVideoDecodeH264PictureInfo {
46 StdVideoDecodeH264PictureInfoFlags flags;
47 uint8_t seq_parameter_set_id;
48 uint8_t pic_parameter_set_id;
49 uint8_t reserved1;
50 uint8_t reserved2;
51 uint16_t frame_num;
52 uint16_t idr_pic_id;
53 int32_t PicOrderCnt[STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE];
54} StdVideoDecodeH264PictureInfo;
55
56typedef struct StdVideoDecodeH264ReferenceInfoFlags {
57 uint32_t top_field_flag : 1;
58 uint32_t bottom_field_flag : 1;
59 uint32_t used_for_long_term_reference : 1;
60 uint32_t is_non_existing : 1;
61} StdVideoDecodeH264ReferenceInfoFlags;
62
63typedef struct StdVideoDecodeH264ReferenceInfo {
64 StdVideoDecodeH264ReferenceInfoFlags flags;
65 uint16_t FrameNum;
66 uint16_t reserved;
67 int32_t PicOrderCnt[STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE];
68} StdVideoDecodeH264ReferenceInfo;
69
70
71#ifdef __cplusplus
72}
73#endif
74
75#endif
76