Update dependencies
This commit is contained in:
		
							parent
							
								
									94395ac891
								
							
						
					
					
						commit
						0960900c6b
					
				
					 29 changed files with 32 additions and 341 deletions
				
			
		| 
						 | 
				
			
			@ -1,309 +0,0 @@
 | 
			
		|||
From 4ede80067d321e75ea082f8c7e66fb167052fde9 Mon Sep 17 00:00:00 2001
 | 
			
		||||
From: Steve Lhomme <robux4@ycbcr.xyz>
 | 
			
		||||
Date: Sat, 15 May 2021 15:26:42 +0200
 | 
			
		||||
Subject: [PATCH] headers: add AV1 support to dxva.h
 | 
			
		||||
 | 
			
		||||
Based on the DXVA AV1 specs
 | 
			
		||||
https://www.microsoft.com/en-us/download/details.aspx?id=101577
 | 
			
		||||
 | 
			
		||||
The structures and the associated define are available in Windows SDK
 | 
			
		||||
since at least 10.0.20231.0.
 | 
			
		||||
 | 
			
		||||
The GUIDs were present in previous SDKs as well.
 | 
			
		||||
---
 | 
			
		||||
 mingw-w64-headers/include/dxva.h | 279 +++++++++++++++++++++++++++++++
 | 
			
		||||
 1 file changed, 279 insertions(+)
 | 
			
		||||
 | 
			
		||||
diff --git a/mingw-w64-headers/include/dxva.h b/mingw-w64-headers/include/dxva.h
 | 
			
		||||
index 4f18f2e..0bd1990 100644
 | 
			
		||||
--- a/mingw-w64-headers/include/dxva.h
 | 
			
		||||
+++ b/mingw-w64-headers/include/dxva.h
 | 
			
		||||
@@ -563,6 +563,285 @@ typedef struct _DXVA_Status_VPx
 | 
			
		||||
     USHORT wNumMbsAffected;
 | 
			
		||||
 } DXVA_Status_VPx, *LPDXVA_Status_VPx;
 | 
			
		||||
 
 | 
			
		||||
+
 | 
			
		||||
+#define _DIRECTX_AV1_VA_
 | 
			
		||||
+
 | 
			
		||||
+/* AV1 decoder GUIDs */
 | 
			
		||||
+DEFINE_GUID(DXVA_ModeAV1_VLD_Profile0,           0xb8be4ccb, 0xcf53, 0x46ba, 0x8d, 0x59, 0xd6, 0xb8, 0xa6, 0xda, 0x5d, 0x2a);
 | 
			
		||||
+DEFINE_GUID(DXVA_ModeAV1_VLD_Profile1,           0x6936ff0f, 0x45b1, 0x4163, 0x9c, 0xc1, 0x64, 0x6e, 0xf6, 0x94, 0x61, 0x08);
 | 
			
		||||
+DEFINE_GUID(DXVA_ModeAV1_VLD_Profile2,           0x0c5f2aa1, 0xe541, 0x4089, 0xbb, 0x7b, 0x98, 0x11, 0x0a, 0x19, 0xd7, 0xc8);
 | 
			
		||||
+DEFINE_GUID(DXVA_ModeAV1_VLD_12bit_Profile2,     0x17127009, 0xa00f, 0x4ce1, 0x99, 0x4e, 0xbf, 0x40, 0x81, 0xf6, 0xf3, 0xf0);
 | 
			
		||||
+DEFINE_GUID(DXVA_ModeAV1_VLD_12bit_Profile2_420, 0x2d80bed6, 0x9cac, 0x4835, 0x9e, 0x91, 0x32, 0x7b, 0xbc, 0x4f, 0x9e, 0xe8);
 | 
			
		||||
+
 | 
			
		||||
+/* AV1 picture entry data structure */
 | 
			
		||||
+typedef struct _DXVA_PicEntry_AV1 {
 | 
			
		||||
+    UINT width;
 | 
			
		||||
+    UINT height;
 | 
			
		||||
+
 | 
			
		||||
+    // Global motion parameters
 | 
			
		||||
+    INT wmmat[6];
 | 
			
		||||
+    union {
 | 
			
		||||
+        struct {
 | 
			
		||||
+            UCHAR wminvalid : 1;
 | 
			
		||||
+            UCHAR wmtype : 2;
 | 
			
		||||
+            UCHAR Reserved : 5;
 | 
			
		||||
+        };
 | 
			
		||||
+        UCHAR GlobalMotionFlags;
 | 
			
		||||
+    };
 | 
			
		||||
+    UCHAR Index;
 | 
			
		||||
+    USHORT Reserved16Bits;
 | 
			
		||||
+} DXVA_PicEntry_AV1, *LPDXVA_PicEntry_AV1;
 | 
			
		||||
+
 | 
			
		||||
+/* AV1 picture parameters data structure */
 | 
			
		||||
+typedef struct _DXVA_PicParams_AV1 {
 | 
			
		||||
+    UINT width;
 | 
			
		||||
+    UINT height;
 | 
			
		||||
+
 | 
			
		||||
+    UINT max_width;
 | 
			
		||||
+    UINT max_height;
 | 
			
		||||
+
 | 
			
		||||
+    UCHAR CurrPicTextureIndex;
 | 
			
		||||
+    UCHAR superres_denom;
 | 
			
		||||
+    UCHAR bitdepth;
 | 
			
		||||
+    UCHAR seq_profile;
 | 
			
		||||
+
 | 
			
		||||
+    // Tiles:
 | 
			
		||||
+    struct {
 | 
			
		||||
+        UCHAR cols;
 | 
			
		||||
+        UCHAR rows;
 | 
			
		||||
+        USHORT context_update_id;
 | 
			
		||||
+        USHORT widths[64];
 | 
			
		||||
+        USHORT heights[64];
 | 
			
		||||
+    } tiles;
 | 
			
		||||
+
 | 
			
		||||
+    // Coding Tools
 | 
			
		||||
+    union {
 | 
			
		||||
+        struct {
 | 
			
		||||
+            UINT use_128x128_superblock : 1;
 | 
			
		||||
+            UINT intra_edge_filter : 1;
 | 
			
		||||
+            UINT interintra_compound : 1;
 | 
			
		||||
+            UINT masked_compound : 1;
 | 
			
		||||
+            UINT warped_motion : 1;
 | 
			
		||||
+            UINT dual_filter : 1;
 | 
			
		||||
+            UINT jnt_comp : 1;
 | 
			
		||||
+            UINT screen_content_tools : 1;
 | 
			
		||||
+            UINT integer_mv : 1;
 | 
			
		||||
+            UINT cdef : 1;
 | 
			
		||||
+            UINT restoration : 1;
 | 
			
		||||
+            UINT film_grain : 1;
 | 
			
		||||
+            UINT intrabc : 1;
 | 
			
		||||
+            UINT high_precision_mv : 1;
 | 
			
		||||
+            UINT switchable_motion_mode : 1;
 | 
			
		||||
+            UINT filter_intra : 1;
 | 
			
		||||
+            UINT disable_frame_end_update_cdf : 1;
 | 
			
		||||
+            UINT disable_cdf_update : 1;
 | 
			
		||||
+            UINT reference_mode : 1;
 | 
			
		||||
+            UINT skip_mode : 1;
 | 
			
		||||
+            UINT reduced_tx_set : 1;
 | 
			
		||||
+            UINT superres : 1;
 | 
			
		||||
+            UINT tx_mode : 2;
 | 
			
		||||
+            UINT use_ref_frame_mvs : 1;
 | 
			
		||||
+            UINT enable_ref_frame_mvs : 1;
 | 
			
		||||
+            UINT reference_frame_update : 1;
 | 
			
		||||
+            UINT Reserved : 5;
 | 
			
		||||
+        };
 | 
			
		||||
+        UINT32 CodingParamToolFlags;
 | 
			
		||||
+    } coding;
 | 
			
		||||
+
 | 
			
		||||
+    // Format & Picture Info flags
 | 
			
		||||
+    union {
 | 
			
		||||
+        struct {
 | 
			
		||||
+            UCHAR frame_type : 2;
 | 
			
		||||
+            UCHAR show_frame : 1;
 | 
			
		||||
+            UCHAR showable_frame : 1;
 | 
			
		||||
+            UCHAR subsampling_x : 1;
 | 
			
		||||
+            UCHAR subsampling_y : 1;
 | 
			
		||||
+            UCHAR mono_chrome : 1;
 | 
			
		||||
+            UCHAR Reserved : 1;
 | 
			
		||||
+        };
 | 
			
		||||
+        UCHAR FormatAndPictureInfoFlags;
 | 
			
		||||
+    } format;
 | 
			
		||||
+
 | 
			
		||||
+    // References
 | 
			
		||||
+    UCHAR primary_ref_frame;
 | 
			
		||||
+    UCHAR order_hint;
 | 
			
		||||
+    UCHAR order_hint_bits;
 | 
			
		||||
+
 | 
			
		||||
+    DXVA_PicEntry_AV1 frame_refs[7];
 | 
			
		||||
+    UCHAR RefFrameMapTextureIndex[8];
 | 
			
		||||
+
 | 
			
		||||
+    // Loop filter parameters
 | 
			
		||||
+    struct {
 | 
			
		||||
+        UCHAR filter_level[2];
 | 
			
		||||
+        UCHAR filter_level_u;
 | 
			
		||||
+        UCHAR filter_level_v;
 | 
			
		||||
+
 | 
			
		||||
+        UCHAR sharpness_level;
 | 
			
		||||
+        union {
 | 
			
		||||
+            struct {
 | 
			
		||||
+                UCHAR mode_ref_delta_enabled : 1;
 | 
			
		||||
+                UCHAR mode_ref_delta_update : 1;
 | 
			
		||||
+                UCHAR delta_lf_multi : 1;
 | 
			
		||||
+                UCHAR delta_lf_present : 1;
 | 
			
		||||
+                UCHAR Reserved : 4;
 | 
			
		||||
+            };
 | 
			
		||||
+            UCHAR ControlFlags;
 | 
			
		||||
+        } DUMMYUNIONNAME;
 | 
			
		||||
+        CHAR ref_deltas[8];
 | 
			
		||||
+        CHAR mode_deltas[2];
 | 
			
		||||
+        UCHAR delta_lf_res;
 | 
			
		||||
+        UCHAR frame_restoration_type[3];
 | 
			
		||||
+        USHORT log2_restoration_unit_size[3];
 | 
			
		||||
+        UINT16 Reserved16Bits;
 | 
			
		||||
+    } loop_filter;
 | 
			
		||||
+
 | 
			
		||||
+    // Quantization
 | 
			
		||||
+    struct {
 | 
			
		||||
+        union {
 | 
			
		||||
+            struct {
 | 
			
		||||
+                UCHAR delta_q_present : 1;
 | 
			
		||||
+                UCHAR delta_q_res : 2;
 | 
			
		||||
+                UCHAR Reserved : 5;
 | 
			
		||||
+            };
 | 
			
		||||
+            UCHAR ControlFlags;
 | 
			
		||||
+        } DUMMYUNIONNAME;
 | 
			
		||||
+
 | 
			
		||||
+        UCHAR base_qindex;
 | 
			
		||||
+        CHAR y_dc_delta_q;
 | 
			
		||||
+        CHAR u_dc_delta_q;
 | 
			
		||||
+        CHAR v_dc_delta_q;
 | 
			
		||||
+        CHAR u_ac_delta_q;
 | 
			
		||||
+        CHAR v_ac_delta_q;
 | 
			
		||||
+        // using_qmatrix:
 | 
			
		||||
+        UCHAR qm_y;
 | 
			
		||||
+        UCHAR qm_u;
 | 
			
		||||
+        UCHAR qm_v;
 | 
			
		||||
+        UINT16 Reserved16Bits;
 | 
			
		||||
+    } quantization;
 | 
			
		||||
+
 | 
			
		||||
+    // Cdef parameters
 | 
			
		||||
+    struct {
 | 
			
		||||
+        union {
 | 
			
		||||
+            struct {
 | 
			
		||||
+                UCHAR damping : 2;
 | 
			
		||||
+                UCHAR bits : 2;
 | 
			
		||||
+                UCHAR Reserved : 4;
 | 
			
		||||
+            };
 | 
			
		||||
+            UCHAR ControlFlags;
 | 
			
		||||
+        } DUMMYUNIONNAME;
 | 
			
		||||
+
 | 
			
		||||
+        union {
 | 
			
		||||
+            struct {
 | 
			
		||||
+                UCHAR primary : 6;
 | 
			
		||||
+                UCHAR secondary : 2;
 | 
			
		||||
+            };
 | 
			
		||||
+            UCHAR combined;
 | 
			
		||||
+        } y_strengths[8];
 | 
			
		||||
+
 | 
			
		||||
+        union {
 | 
			
		||||
+            struct {
 | 
			
		||||
+                UCHAR primary : 6;
 | 
			
		||||
+                UCHAR secondary : 2;
 | 
			
		||||
+            };
 | 
			
		||||
+            UCHAR combined;
 | 
			
		||||
+        } uv_strengths[8];
 | 
			
		||||
+
 | 
			
		||||
+    } cdef;
 | 
			
		||||
+
 | 
			
		||||
+    UCHAR interp_filter;
 | 
			
		||||
+
 | 
			
		||||
+    // Segmentation
 | 
			
		||||
+    struct {
 | 
			
		||||
+        union {
 | 
			
		||||
+            struct {
 | 
			
		||||
+                UCHAR enabled : 1;
 | 
			
		||||
+                UCHAR update_map : 1;
 | 
			
		||||
+                UCHAR update_data : 1;
 | 
			
		||||
+                UCHAR temporal_update : 1;
 | 
			
		||||
+                UCHAR Reserved : 4;
 | 
			
		||||
+            };
 | 
			
		||||
+            UCHAR ControlFlags;
 | 
			
		||||
+        } DUMMYUNIONNAME;
 | 
			
		||||
+        UCHAR Reserved24Bits[3];
 | 
			
		||||
+
 | 
			
		||||
+        union {
 | 
			
		||||
+            struct {
 | 
			
		||||
+                UCHAR alt_q : 1;
 | 
			
		||||
+                UCHAR alt_lf_y_v : 1;
 | 
			
		||||
+                UCHAR alt_lf_y_h : 1;
 | 
			
		||||
+                UCHAR alt_lf_u : 1;
 | 
			
		||||
+                UCHAR alt_lf_v : 1;
 | 
			
		||||
+                UCHAR ref_frame : 1;
 | 
			
		||||
+                UCHAR skip : 1;
 | 
			
		||||
+                UCHAR globalmv : 1;
 | 
			
		||||
+            };
 | 
			
		||||
+            UCHAR mask;
 | 
			
		||||
+        } feature_mask[8];
 | 
			
		||||
+
 | 
			
		||||
+        SHORT feature_data[8][8];
 | 
			
		||||
+
 | 
			
		||||
+    } segmentation;
 | 
			
		||||
+
 | 
			
		||||
+    struct {
 | 
			
		||||
+        union {
 | 
			
		||||
+            struct {
 | 
			
		||||
+                USHORT apply_grain : 1;
 | 
			
		||||
+                USHORT scaling_shift_minus8 : 2;
 | 
			
		||||
+                USHORT chroma_scaling_from_luma : 1;
 | 
			
		||||
+                USHORT ar_coeff_lag : 2;
 | 
			
		||||
+                USHORT ar_coeff_shift_minus6 : 2;
 | 
			
		||||
+                USHORT grain_scale_shift : 2;
 | 
			
		||||
+                USHORT overlap_flag : 1;
 | 
			
		||||
+                USHORT clip_to_restricted_range : 1;
 | 
			
		||||
+                USHORT matrix_coeff_is_identity : 1;
 | 
			
		||||
+                USHORT Reserved : 3;
 | 
			
		||||
+            };
 | 
			
		||||
+            USHORT ControlFlags;
 | 
			
		||||
+        } DUMMYUNIONNAME;
 | 
			
		||||
+
 | 
			
		||||
+        USHORT grain_seed;
 | 
			
		||||
+        UCHAR scaling_points_y[14][2];
 | 
			
		||||
+        UCHAR num_y_points;
 | 
			
		||||
+        UCHAR scaling_points_cb[10][2];
 | 
			
		||||
+        UCHAR num_cb_points;
 | 
			
		||||
+        UCHAR scaling_points_cr[10][2];
 | 
			
		||||
+        UCHAR num_cr_points;
 | 
			
		||||
+        UCHAR ar_coeffs_y[24];
 | 
			
		||||
+        UCHAR ar_coeffs_cb[25];
 | 
			
		||||
+        UCHAR ar_coeffs_cr[25];
 | 
			
		||||
+        UCHAR cb_mult;
 | 
			
		||||
+        UCHAR cb_luma_mult;
 | 
			
		||||
+        UCHAR cr_mult;
 | 
			
		||||
+        UCHAR cr_luma_mult;
 | 
			
		||||
+        UCHAR Reserved8Bits;
 | 
			
		||||
+        SHORT cb_offset;
 | 
			
		||||
+        SHORT cr_offset;
 | 
			
		||||
+    } film_grain;
 | 
			
		||||
+
 | 
			
		||||
+    UINT   Reserved32Bits;
 | 
			
		||||
+    UINT   StatusReportFeedbackNumber;
 | 
			
		||||
+} DXVA_PicParams_AV1, *LPDXVA_PicParams_AV1;
 | 
			
		||||
+
 | 
			
		||||
+/* AV1 tile data structure */
 | 
			
		||||
+typedef struct _DXVA_Tile_AV1 {
 | 
			
		||||
+    UINT   DataOffset;
 | 
			
		||||
+    UINT   DataSize;
 | 
			
		||||
+    USHORT row;
 | 
			
		||||
+    USHORT column;
 | 
			
		||||
+    USHORT Reserved16Bits;
 | 
			
		||||
+    UCHAR  anchor_frame;
 | 
			
		||||
+    UCHAR Reserved8Bits;
 | 
			
		||||
+} DXVA_Tile_AV1, *LPDXVA_Tile_AV1;
 | 
			
		||||
+
 | 
			
		||||
+typedef struct _DXVA_Status_AV1 {
 | 
			
		||||
+    UINT  StatusReportFeedbackNumber;
 | 
			
		||||
+    DXVA_PicEntry_AV1 CurrPic;
 | 
			
		||||
+    UCHAR  bBufType;
 | 
			
		||||
+    UCHAR  bStatus;
 | 
			
		||||
+    UCHAR  bReserved8Bits;
 | 
			
		||||
+    USHORT wNumMbsAffected;
 | 
			
		||||
+} DXVA_Status_AV1, *LPDXVA_Status_AV1;
 | 
			
		||||
+
 | 
			
		||||
 #include <poppack.h>
 | 
			
		||||
 
 | 
			
		||||
 typedef enum _DXVA_VideoChromaSubsampling
 | 
			
		||||
-- 
 | 
			
		||||
2.25.1
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue