10 struct ID3D11Multithread;
11 struct ID3D11VideoContext2;
12 struct ID3D11VideoContext3;
13 struct ID3D11VideoDevice2;
83 struct __declspec(novtable, uuid("8992ab71-02e6-4b8d-ba48-b056dcda42c4"))
84 ID3D11Device4 :
public ID3D11Device3
86 virtual HRESULT RegisterDeviceRemovedEvent(
HANDLE a_event, std::uint32_t* a_cookie) = 0;
87 virtual void UnregisterDeviceRemoved(std::uint32_t a_cookie) = 0;
90 struct __declspec(novtable, uuid("8ffde202-a0e7-45df-9e01-e837801b5ea0"))
91 ID3D11Device5 :
public ID3D11Device4
93 virtual HRESULT OpenSharedFence(
HANDLE a_fenceHandle,
const IID& a_returnedInterface,
void** a_fence) = 0;
94 virtual HRESULT CreateFence(std::uint64_t a_initialValue,
D3D11_FENCE_FLAG a_flags,
const IID& a_returnedInterface,
void** a_fence) = 0;
97 struct __declspec(novtable, uuid("9B7E4E00-342C-4106-A19F-4F2704F689F0"))
98 ID3D11Multithread :
public IUnknown
100 virtual void Enter(
void) = 0;
101 virtual void Leave(
void) = 0;
102 virtual BOOL SetMultithreadProtected(
BOOL a_mtProtect) = 0;
103 virtual BOOL GetMultithreadProtected(
void) = 0;
106 struct __declspec(novtable, uuid("C4E7374C-6243-4D1B-AE87-52B4F740E261"))
107 ID3D11VideoContext2 :
public ID3D11VideoContext1
109 virtual void VideoProcessorSetOutputHDRMetaData(ID3D11VideoProcessor* a_videoProcessor,
DXGI_HDR_METADATA_TYPE a_type, std::uint32_t a_size,
const void* a_hdrMetaData) = 0;
110 virtual void VideoProcessorGetOutputHDRMetaData(ID3D11VideoProcessor* a_videoProcessor,
DXGI_HDR_METADATA_TYPE* a_type, std::uint32_t a_size,
void* a_hdrMetaData) = 0;
111 virtual void VideoProcessorSetStreamHDRMetaData(ID3D11VideoProcessor* a_videoProcessor, std::uint32_t a_streamIndex,
DXGI_HDR_METADATA_TYPE a_type, std::uint32_t a_size,
const void* a_hdrMetaData) = 0;
112 virtual void VideoProcessorGetStreamHDRMetaData(ID3D11VideoProcessor* a_videoProcessor, std::uint32_t a_streamIndex,
DXGI_HDR_METADATA_TYPE* a_type, std::uint32_t a_size,
void* a_hdrMetaData) = 0;
115 struct __declspec(novtable, uuid("A9E2FAA0-CB39-418F-A0B7-D8AAD4DE672E"))
116 ID3D11VideoContext3 :
public ID3D11VideoContext2
118 virtual HRESULT DecoderBeginFrame1(ID3D11VideoDecoder* a_decoder, ID3D11VideoDecoderOutputView* a_view, std::uint32_t a_contentKeySize,
const void* a_contentKey, std::uint32_t a_numComponentHistograms,
const std::uint32_t* a_histogramOffsets, ID3D11Buffer*
const* a_histogramBuffers) = 0;
119 virtual HRESULT SubmitDecoderBuffers2(ID3D11VideoDecoder* a_decoder, std::uint32_t a_numBuffers,
const D3D11_VIDEO_DECODER_BUFFER_DESC2* a_bufferDesc) = 0;
122 struct __declspec(novtable, uuid("59C0CB01-35F0-4A70-8F67-87905C906A53"))
123 ID3D11VideoDevice2 :
public ID3D11VideoDevice1
125 virtual HRESULT CheckFeatureSupport(
D3D11_FEATURE_VIDEO a_feature,
void* a_featureSupportData, std::uint32_t a_featureSupportDataSize) = 0;
132 inline constexpr
IID IID_ID3D11Device4{ 0x8992AB71, 0x02E6, 0x4B8D, { 0xBA, 0x48, 0xB0, 0x56, 0xDC, 0xDA, 0x42, 0xC4 } };
133 inline constexpr
IID IID_ID3D11Device5{ 0x8FFDE202, 0xA0E7, 0x45DF, { 0x9E, 0x01, 0xE8, 0x37, 0x80, 0x1B, 0x5E, 0xA0 } };
134 inline constexpr
IID IID_ID3D11Multithread{ 0x9B7E4E00, 0x342C, 0x4106, { 0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0 } };
135 inline constexpr
IID IID_ID3D11VideoContext2{ 0xC4E7374C, 0x6243, 0x4D1B, { 0xAE, 0x87, 0x52, 0xB4, 0xF7, 0x40, 0xE2, 0x61 } };
136 inline constexpr
IID IID_ID3D11VideoContext3{ 0xA9E2FAA0, 0xCB39, 0x418F, { 0xA0, 0xB7, 0xD8, 0xAA, 0xD4, 0xDE, 0x67, 0x2E } };
137 inline constexpr
IID IID_ID3D11VideoDevice2{ 0x59C0CB01, 0x35F0, 0x4A70, { 0x8F, 0x67, 0x87, 0x90, 0x5C, 0x90, 0x6A, 0x53 } };
Definition: BSDirectInputManager.h:8
void * HANDLE
Definition: BASE.h:14
constexpr IID IID_ID3D11Device4
Definition: D3D11_4.h:132
struct __declspec(novtable, uuid("00000000-0000-0000-c000-000000000046")) IUnknown
Definition: COM.h:7
D3D11_VIDEO_DECODER_BUFFER_TYPE
Definition: D3D11.h:1074
std::int32_t BOOL
Definition: BASE.h:13
D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAGS
Definition: D3D11_4.h:19
@ D3D11_CRYPTO_SESSION_KEY_EXCHANGE_FLAG_NONE
Definition: D3D11_4.h:20
constexpr IID IID_ID3D11Device5
Definition: D3D11_4.h:133
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT
Definition: D3D11_4.h:29
@ D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_A
Definition: D3D11_4.h:36
@ D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_V
Definition: D3D11_4.h:32
@ D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_B
Definition: D3D11_4.h:35
@ D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_R
Definition: D3D11_4.h:33
@ D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_G
Definition: D3D11_4.h:34
@ D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_U
Definition: D3D11_4.h:31
@ D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_Y
Definition: D3D11_4.h:30
DXGI_HDR_METADATA_TYPE
Definition: DXGI_5.h:21
D3D11_FEATURE_VIDEO
Definition: D3D11_4.h:24
@ D3D11_FEATURE_VIDEO_DECODER_HISTOGRAM
Definition: D3D11_4.h:25
D3D11_FENCE_FLAG
Definition: D3D11_3.h:38
constexpr IID IID_ID3D11VideoContext3
Definition: D3D11_4.h:136
constexpr IID IID_ID3D11VideoContext2
Definition: D3D11_4.h:135
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS
Definition: D3D11_4.h:40
@ D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_R
Definition: D3D11_4.h:45
@ D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_A
Definition: D3D11_4.h:48
@ D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_NONE
Definition: D3D11_4.h:41
@ D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_Y
Definition: D3D11_4.h:42
@ D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_G
Definition: D3D11_4.h:46
@ D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_V
Definition: D3D11_4.h:44
@ D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_U
Definition: D3D11_4.h:43
@ D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAG_B
Definition: D3D11_4.h:47
constexpr IID IID_ID3D11VideoDevice2
Definition: D3D11_4.h:137
std::int32_t HRESULT
Definition: BASE.h:28
GUID IID
Definition: BASE.h:87
constexpr IID IID_ID3D11Multithread
Definition: D3D11_4.h:134
BOOL extendedNV12SharedTextureSupported
Definition: D3D11_4.h:56
std::uint32_t binCount
Definition: D3D11_4.h:63
std::uint32_t counterBitDepth
Definition: D3D11_4.h:64
D3D11_VIDEO_DECODER_DESC decoderDesc
Definition: D3D11_4.h:61
D3D11_VIDEO_DECODER_HISTOGRAM_COMPONENT_FLAGS components
Definition: D3D11_4.h:62
std::uint32_t cBlocksStripeClear
Definition: D3D11_4.h:77
D3D11_VIDEO_DECODER_SUB_SAMPLE_MAPPING_BLOCK * subSampleMappingBlock
Definition: D3D11_4.h:74
std::uint32_t subSampleMappingCount
Definition: D3D11_4.h:75
void * iv
Definition: D3D11_4.h:72
std::uint32_t dataSize
Definition: D3D11_4.h:71
std::uint32_t ivSize
Definition: D3D11_4.h:73
std::uint32_t dataOffset
Definition: D3D11_4.h:70
std::uint32_t cBlocksStripeEncrypted
Definition: D3D11_4.h:76
D3D11_VIDEO_DECODER_BUFFER_TYPE bufferType
Definition: D3D11_4.h:69
Definition: D3D11_1.h:158