Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
9e5778b8
Commit
9e5778b8
authored
Sep 26, 2023
by
Biswapriyo Nath
Committed by
Alexandre Julliard
Sep 26, 2023
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
include: Add ID3D12VideoEncoder in d3d12video.idl.
parent
dcba11c1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
151 additions
and
0 deletions
+151
-0
d3d12video.idl
include/d3d12video.idl
+151
-0
No files found.
include/d3d12video.idl
View file @
9e5778b8
...
...
@@ -582,3 +582,154 @@ cpp_quote("DEFINE_GUID(D3D12_VIDEO_DECODE_PROFILE_AV1_PROFILE1, 0x6936ff0f, 0x45
cpp_quote
(
"DEFINE_GUID(D3D12_VIDEO_DECODE_PROFILE_AV1_PROFILE2, 0x0c5f2aa1, 0xe541, 0x4089, 0xbb, 0x7b, 0x98, 0x11, 0x0a, 0x19, 0xd7, 0xc8);"
)
cpp_quote
(
"DEFINE_GUID(D3D12_VIDEO_DECODE_PROFILE_AV1_12BIT_PROFILE2, 0x17127009, 0xa00f, 0x4ce1, 0x99, 0x4e, 0xbf, 0x40, 0x81, 0xf6, 0xf3, 0xf0);"
)
cpp_quote
(
"DEFINE_GUID(D3D12_VIDEO_DECODE_PROFILE_AV1_12BIT_PROFILE2_420, 0x2d80bed6, 0x9cac, 0x4835, 0x9e, 0x91, 0x32, 0x7b, 0xbc, 0x4f, 0x9e, 0xe8);"
)
typedef
enum
D3D12_VIDEO_ENCODER_CODEC
{
D3D12_VIDEO_ENCODER_CODEC_H264
=
0
,
D3D12_VIDEO_ENCODER_CODEC_HEVC
=
1
,
}
D3D12_VIDEO_ENCODER_CODEC
;
typedef
enum
D3D12_VIDEO_ENCODER_PROFILE_H264
{
D3D12_VIDEO_ENCODER_PROFILE_H264_MAIN
=
0
,
D3D12_VIDEO_ENCODER_PROFILE_H264_HIGH
=
1
,
D3D12_VIDEO_ENCODER_PROFILE_H264_HIGH_10
=
2
,
}
D3D12_VIDEO_ENCODER_PROFILE_H264
;
typedef
enum
D3D12_VIDEO_ENCODER_PROFILE_HEVC
{
D3D12_VIDEO_ENCODER_PROFILE_HEVC_MAIN
=
0
,
D3D12_VIDEO_ENCODER_PROFILE_HEVC_MAIN10
=
1
,
}
D3D12_VIDEO_ENCODER_PROFILE_HEVC
;
typedef
struct
D3D12_VIDEO_ENCODER_PROFILE_DESC
{
UINT
DataSize
;
union
{
D3D12_VIDEO_ENCODER_PROFILE_H264
*
pH264Profile
;
D3D12_VIDEO_ENCODER_PROFILE_HEVC
*
pHEVCProfile
;
}
;
}
D3D12_VIDEO_ENCODER_PROFILE_DESC
;
typedef
enum
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_SLICES_DEBLOCKING_MODES
{
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_SLICES_DEBLOCKING_MODE_0_ALL_LUMA_CHROMA_SLICE_BLOCK_EDGES_ALWAYS_FILTERED
=
0
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_SLICES_DEBLOCKING_MODE_1_DISABLE_ALL_SLICE_BLOCK_EDGES
=
1
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_SLICES_DEBLOCKING_MODE_2_DISABLE_SLICE_BOUNDARIES_BLOCKS
=
2
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_SLICES_DEBLOCKING_MODE_3_USE_TWO_STAGE_DEBLOCKING
=
3
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_SLICES_DEBLOCKING_MODE_4_DISABLE_CHROMA_BLOCK_EDGES
=
4
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_SLICES_DEBLOCKING_MODE_5_DISABLE_CHROMA_BLOCK_EDGES_AND_LUMA_BOUNDARIES
=
5
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_SLICES_DEBLOCKING_MODE_6_DISABLE_CHROMA_BLOCK_EDGES_AND_USE_LUMA_TWO_STAGE_DEBLOCKING
=
6
,
}
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_SLICES_DEBLOCKING_MODES
;
typedef
enum
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_CUSIZE
{
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_CUSIZE_8x8
=
0
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_CUSIZE_16x16
=
1
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_CUSIZE_32x32
=
2
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_CUSIZE_64x64
=
3
,
}
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_CUSIZE
;
typedef
enum
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_TUSIZE
{
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_TUSIZE_4x4
=
0
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_TUSIZE_8x8
=
1
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_TUSIZE_16x16
=
2
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_TUSIZE_32x32
=
3
,
}
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_TUSIZE
;
typedef
enum
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_FLAGS
{
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_FLAG_NONE
=
0
x0
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_FLAG_USE_CONSTRAINED_INTRAPREDICTION
=
0
x1
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_FLAG_USE_ADAPTIVE_8x8_TRANSFORM
=
0
x2
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_FLAG_ENABLE_CABAC_ENCODING
=
0
x4
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_FLAG_ALLOW_REQUEST_INTRA_CONSTRAINED_SLICES
=
0
x8
,
}
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_FLAGS
;
cpp_quote
(
"DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_FLAGS);"
)
typedef
enum
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_DIRECT_MODES
{
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_DIRECT_MODES_DISABLED
=
0
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_DIRECT_MODES_TEMPORAL
=
1
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_DIRECT_MODES_SPATIAL
=
2
,
}
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_DIRECT_MODES
;
typedef
struct
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264
{
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_FLAGS
ConfigurationFlags
;
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_DIRECT_MODES
DirectModeConfig
;
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264_SLICES_DEBLOCKING_MODES
DisableDeblockingFilterConfig
;
}
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264
;
typedef
enum
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAGS
{
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAG_NONE
=
0
x0
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAG_DISABLE_LOOP_FILTER_ACROSS_SLICES
=
0
x1
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAG_ALLOW_REQUEST_INTRA_CONSTRAINED_SLICES
=
0
x2
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAG_ENABLE_SAO_FILTER
=
0
x4
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAG_ENABLE_LONG_TERM_REFERENCES
=
0
x8
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAG_USE_ASYMETRIC_MOTION_PARTITION
=
0
x10
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAG_ENABLE_TRANSFORM_SKIPPING
=
0
x20
,
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAG_USE_CONSTRAINED_INTRAPREDICTION
=
0
x40
,
}
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAGS
;
cpp_quote
(
"DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAGS);"
)
typedef
struct
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC
{
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAGS
ConfigurationFlags
;
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_CUSIZE
MinLumaCodingUnitSize
;
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_CUSIZE
MaxLumaCodingUnitSize
;
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_TUSIZE
MinLumaTransformUnitSize
;
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_TUSIZE
MaxLumaTransformUnitSize
;
UCHAR
max_transform_hierarchy_depth_inter
;
UCHAR
max_transform_hierarchy_depth_intra
;
}
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC
;
typedef
struct
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION
{
UINT
DataSize
;
union
{
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_H264
*
pH264Config
;
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC
*
pHEVCConfig
;
}
;
}
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION
;
typedef
enum
D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE
{
D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_MAXIMUM
=
0
,
D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_FULL_PIXEL
=
1
,
D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_HALF_PIXEL
=
2
,
D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE_QUARTER_PIXEL
=
3
,
}
D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE
;
typedef
enum
D3D12_VIDEO_ENCODER_FLAGS
{
D3D12_VIDEO_ENCODER_FLAG_NONE
=
0
x0
,
}
D3D12_VIDEO_ENCODER_FLAGS
;
cpp_quote
(
"DEFINE_ENUM_FLAG_OPERATORS(D3D12_VIDEO_ENCODER_FLAGS);"
)
[
uuid
(
2
e0d212d
-
8
df9
-
44
a6
-
a770
-
bb289b182737
),
object
,
local
,
pointer_default
(
unique
)
]
interface
ID3D12VideoEncoder
:
ID3D12Pageable
{
UINT
GetNodeMask
()
;
D3D12_VIDEO_ENCODER_FLAGS
GetEncoderFlags
()
;
D3D12_VIDEO_ENCODER_CODEC
GetCodec
()
;
HRESULT
GetCodecProfile
(
[
in
,
out
]
D3D12_VIDEO_ENCODER_PROFILE_DESC
dst_profile
)
;
HRESULT
GetCodecConfiguration
(
[
in
,
out
]
D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION
dst_codec_config
)
;
DXGI_FORMAT
GetInputFormat
()
;
D3D12_VIDEO_ENCODER_MOTION_ESTIMATION_PRECISION_MODE
GetMaxMotionEstimationPrecision
()
;
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment