---
These COM classes are needed by VLC
---
 mingw-w64-headers/direct-x/include/d3d11.h   | 811 +++++++++++++++++++++++++++
 mingw-w64-headers/direct-x/include/d3d11.idl | 199 +++++++
 2 files changed, 1010 insertions(+)

diff --git a/mingw-w64-headers/direct-x/include/d3d11.h 
b/mingw-w64-headers/direct-x/include/d3d11.h
index cc64c3f..c81905a 100644
--- a/mingw-w64-headers/direct-x/include/d3d11.h
+++ b/mingw-w64-headers/direct-x/include/d3d11.h
@@ -172,6 +172,26 @@ typedef interface ID3D11DeviceContext ID3D11DeviceContext;
 typedef interface ID3D11Device ID3D11Device;
 #endif
 
+#ifndef __ID3D11VideoDecoder_FWD_DEFINED__
+#define __ID3D11VideoDecoder_FWD_DEFINED__
+typedef interface ID3D11VideoDecoder ID3D11VideoDecoder;
+#endif
+
+#ifndef __ID3D11VideoDecoderOutputView_FWD_DEFINED__
+#define __ID3D11VideoDecoderOutputView_FWD_DEFINED__
+typedef interface ID3D11VideoDecoderOutputView ID3D11VideoDecoderOutputView;
+#endif
+
+#ifndef __ID3D11VideoContext_FWD_DEFINED__
+#define __ID3D11VideoContext_FWD_DEFINED__
+typedef interface ID3D11VideoContext ID3D11VideoContext;
+#endif
+
+#ifndef __ID3D11VideoDevice_FWD_DEFINED__
+#define __ID3D11VideoDevice_FWD_DEFINED__
+typedef interface ID3D11VideoDevice ID3D11VideoDevice;
+#endif
+
 /* Headers for imported files */
 
 #include <oaidl.h>
@@ -8850,6 +8870,797 @@ void __RPC_STUB ID3D11Device_GetExceptionMode_Stub(
 
 #endif  /* __ID3D11Device_INTERFACE_DEFINED__ */
 
+DEFINE_GUID(D3D11_DECODER_PROFILE_H264_MOCOMP_NOFGT, 0x1b81be64, 0xa0c7, 
0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
+DEFINE_GUID(D3D11_DECODER_PROFILE_H264_MOCOMP_FGT,   0x1b81be65, 0xa0c7, 
0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
+DEFINE_GUID(D3D11_DECODER_PROFILE_H264_IDCT_NOFGT,   0x1b81be66, 0xa0c7, 
0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
+DEFINE_GUID(D3D11_DECODER_PROFILE_H264_IDCT_FGT,     0x1b81be67, 0xa0c7, 
0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
+DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_NOFGT,    0x1b81be68, 0xa0c7, 
0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
+DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_FGT,      0x1b81be69, 0xa0c7, 
0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
+DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_WITHFMOASO_NOFGT,  0xd5f04ff9, 
0x3418, 0x45d8, 0x95, 0x61, 0x32, 0xa7, 0x6a, 0xae, 0x2d, 0xdd);
+DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_STEREO_PROGRESSIVE_NOFGT, 
0xd79be8da, 0x0cf1, 0x4c81, 0xb8, 0x2a, 0x69, 0xa4, 0xe2, 0x36, 0xf4, 0x3d);
+DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_STEREO_NOFGT,             
0xf9aaccbb, 0xc2b6, 0x4cfc, 0x87, 0x79, 0x57, 0x07, 0xb1, 0x76, 0x05, 0x52);
+DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_MULTIVIEW_NOFGT,          
0x705b9d82, 0x76cf, 0x49d6, 0xb7, 0xe6, 0xac, 0x88, 0x72, 0xdb, 0x01, 0x3c);
+DEFINE_GUID(D3D11_DECODER_PROFILE_WMV8_POSTPROC,     0x1b81be80, 0xa0c7, 
0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
+DEFINE_GUID(D3D11_DECODER_PROFILE_WMV8_MOCOMP,       0x1b81be81, 0xa0c7, 
0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
+DEFINE_GUID(D3D11_DECODER_PROFILE_WMV9_POSTPROC,     0x1b81be90, 0xa0c7, 
0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
+DEFINE_GUID(D3D11_DECODER_PROFILE_WMV9_MOCOMP,       0x1b81be91, 0xa0c7, 
0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
+DEFINE_GUID(D3D11_DECODER_PROFILE_WMV9_IDCT,         0x1b81be94, 0xa0c7, 
0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
+DEFINE_GUID(D3D11_DECODER_PROFILE_VC1_POSTPROC,      0x1b81beA0, 0xa0c7, 
0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
+DEFINE_GUID(D3D11_DECODER_PROFILE_VC1_MOCOMP,        0x1b81beA1, 0xa0c7, 
0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
+DEFINE_GUID(D3D11_DECODER_PROFILE_VC1_IDCT,          0x1b81beA2, 0xa0c7, 
0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
+DEFINE_GUID(D3D11_DECODER_PROFILE_VC1_VLD,           0x1b81beA3, 0xa0c7, 
0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
+DEFINE_GUID(D3D11_DECODER_PROFILE_VC1_D2010,         0x1b81beA4, 0xa0c7, 
0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);
+DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG4PT2_VLD_SIMPLE,           0xefd64d74, 
0xc9e8, 0x41d7, 0xa5, 0xe9, 0xe9, 0xb0, 0xe3, 0x9f, 0xa3, 0x19);
+DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_NOGMC,  0xed418a9f, 
0x010d, 0x4eda, 0x9a, 0xe3, 0x9a, 0x65, 0x35, 0x8d, 0x8d, 0x2e);
+DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_GMC,    0xab998b5b, 
0x4258, 0x44a9, 0x9f, 0xeb, 0x94, 0xe5, 0x97, 0xa6, 0xba, 0xae);
+DEFINE_GUID(D3D11_DECODER_PROFILE_HEVC_VLD_MAIN,     0x5b11d51b, 0x2f4c, 
0x4452, 0xbc, 0xc3, 0x09, 0xf2, 0xa1, 0x16, 0x0c, 0xc0);
+DEFINE_GUID(D3D11_DECODER_PROFILE_HEVC_VLD_MAIN10,   0x107af0e0, 0xef1a, 
0x4d19, 0xab, 0xa8, 0x67, 0xa1, 0x63, 0x07, 0x3d, 0x13);
+DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG2_MOCOMP,      0xe6a9f44b, 0x61b0, 
0x4563, 0x9e, 0xa4, 0x63, 0xd2, 0xa3, 0xc6, 0xfe, 0x66);
+DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG2_IDCT,        0xbf22ad00, 0x03ea, 
0x4690, 0x80, 0x77, 0x47, 0x33, 0x46, 0x20, 0x9b, 0x7e);
+DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG2_VLD,         0xee27417f, 0x5e28, 
0x4e65, 0xbe, 0xea, 0x1d, 0x26, 0xb5, 0x08, 0xad, 0xc9);
+DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG1_VLD,         0x6f3ec719, 0x3735, 
0x42cc, 0x80, 0x63, 0x65, 0xcc, 0x3c, 0xb3, 0x66, 0x16);
+DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG2and1_VLD,     0x86695f12, 0x340e, 
0x4f04, 0x9f, 0xd3, 0x92, 0x53, 0xdd, 0x32, 0x74, 0x60);
+typedef struct D3D11_VIDEO_DECODER_DESC {
+    GUID Guid;
+    UINT SampleWidth;
+    UINT SampleHeight;
+    DXGI_FORMAT OutputFormat;
+} D3D11_VIDEO_DECODER_DESC;
+typedef struct D3D11_VIDEO_DECODER_CONFIG {
+    GUID guidConfigBitstreamEncryption;
+    GUID guidConfigMBcontrolEncryption;
+    GUID guidConfigResidDiffEncryption;
+    UINT ConfigBitstreamRaw;
+    UINT ConfigMBcontrolRasterOrder;
+    UINT ConfigResidDiffHost;
+    UINT ConfigSpatialResid8;
+    UINT ConfigResid8Subtraction;
+    UINT ConfigSpatialHost8or9Clipping;
+    UINT ConfigSpatialResidInterleaved;
+    UINT ConfigIntraResidUnsigned;
+    UINT ConfigResidDiffAccelerator;
+    UINT ConfigHostInverseScan;
+    UINT ConfigSpecificIDCT;
+    UINT Config4GroupedCoefs;
+    USHORT ConfigMinRenderTargetBuffCount;
+    USHORT ConfigDecoderSpecific;
+} D3D11_VIDEO_DECODER_CONFIG;
+typedef enum D3D11_VIDEO_DECODER_BUFFER_TYPE {
+    D3D11_VIDEO_DECODER_BUFFER_PICTURE_PARAMETERS = 0,
+    D3D11_VIDEO_DECODER_BUFFER_MACROBLOCK_CONTROL = 1,
+    D3D11_VIDEO_DECODER_BUFFER_RESIDUAL_DIFFERENCE = 2,
+    D3D11_VIDEO_DECODER_BUFFER_DEBLOCKING_CONTROL = 3,
+    D3D11_VIDEO_DECODER_BUFFER_INVERSE_QUANTIZATION_MATRIX = 4,
+    D3D11_VIDEO_DECODER_BUFFER_SLICE_CONTROL = 5,
+    D3D11_VIDEO_DECODER_BUFFER_BITSTREAM = 6,
+    D3D11_VIDEO_DECODER_BUFFER_MOTION_VECTOR = 7,
+    D3D11_VIDEO_DECODER_BUFFER_FILM_GRAIN = 8
+} D3D11_VIDEO_DECODER_BUFFER_TYPE;
+typedef struct D3D11_ENCRYPTED_BLOCK_INFO {
+    UINT NumEncryptedBytesAtBeginning;
+    UINT NumBytesInSkipPattern;
+    UINT NumBytesInEncryptPattern;
+} D3D11_ENCRYPTED_BLOCK_INFO;
+typedef struct D3D11_VIDEO_DECODER_BUFFER_DESC {
+    D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType;
+    UINT BufferIndex;
+    UINT DataOffset;
+    UINT DataSize;
+    UINT FirstMBaddress;
+    UINT NumMBsInBuffer;
+    UINT Width;
+    UINT Height;
+    UINT Stride;
+    UINT ReservedBits;
+    void *pIV;
+    UINT IVSize;
+    WINBOOL PartialEncryption;
+    D3D11_ENCRYPTED_BLOCK_INFO EncryptedBlockInfo;
+} D3D11_VIDEO_DECODER_BUFFER_DESC;
+/*****************************************************************************
+ * ID3D11VideoDecoder interface
+ */
+#ifndef __ID3D11VideoDecoder_INTERFACE_DEFINED__
+#define __ID3D11VideoDecoder_INTERFACE_DEFINED__
+
+DEFINE_GUID(IID_ID3D11VideoDecoder, 0x3c9c5b51, 0x995d, 0x48d1, 0x9b,0x8d, 
0xfa,0x5c,0xae,0xde,0xd6,0x5c);
+#if defined(__cplusplus) && !defined(CINTERFACE)
+MIDL_INTERFACE("3c9c5b51-995d-48d1-9b8d-fa5caeded65c")
+ID3D11VideoDecoder : public ID3D11DeviceChild
+{
+};
+#ifdef __CRT_UUID_DECL
+__CRT_UUID_DECL(ID3D11VideoDecoder, 0x3c9c5b51, 0x995d, 0x48d1, 0x9b,0x8d, 
0xfa,0x5c,0xae,0xde,0xd6,0x5c)
+#endif
+#else
+typedef struct ID3D11VideoDecoderVtbl {
+    BEGIN_INTERFACE
+
+    /*** IUnknown methods ***/
+    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
+        ID3D11VideoDecoder* This,
+        REFIID riid,
+        void **ppvObject);
+
+    ULONG (STDMETHODCALLTYPE *AddRef)(
+        ID3D11VideoDecoder* This);
+
+    ULONG (STDMETHODCALLTYPE *Release)(
+        ID3D11VideoDecoder* This);
+
+    /*** ID3D11DeviceChild methods ***/
+    void (STDMETHODCALLTYPE *GetDevice)(
+        ID3D11VideoDecoder* This,
+        ID3D11Device **ppDevice);
+
+    HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
+        ID3D11VideoDecoder* This,
+        REFGUID guid,
+        UINT *pDataSize,
+        void *pData);
+
+    HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
+        ID3D11VideoDecoder* This,
+        REFGUID guid,
+        UINT DataSize,
+        const void *pData);
+
+    HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
+        ID3D11VideoDecoder* This,
+        REFGUID guid,
+        const IUnknown *pData);
+
+    END_INTERFACE
+} ID3D11VideoDecoderVtbl;
+interface ID3D11VideoDecoder {
+    CONST_VTBL ID3D11VideoDecoderVtbl* lpVtbl;
+};
+
+#ifdef COBJMACROS
+#ifndef WIDL_C_INLINE_WRAPPERS
+/*** IUnknown methods ***/
+#define ID3D11VideoDecoder_QueryInterface(This,riid,ppvObject) 
(This)->lpVtbl->QueryInterface(This,riid,ppvObject)
+#define ID3D11VideoDecoder_AddRef(This) (This)->lpVtbl->AddRef(This)
+#define ID3D11VideoDecoder_Release(This) (This)->lpVtbl->Release(This)
+/*** ID3D11DeviceChild methods ***/
+#define ID3D11VideoDecoder_GetDevice(This,ppDevice) 
(This)->lpVtbl->GetDevice(This,ppDevice)
+#define ID3D11VideoDecoder_GetPrivateData(This,guid,pDataSize,pData) 
(This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
+#define ID3D11VideoDecoder_SetPrivateData(This,guid,DataSize,pData) 
(This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
+#define ID3D11VideoDecoder_SetPrivateDataInterface(This,guid,pData) 
(This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
+#else
+/*** IUnknown methods ***/
+static FORCEINLINE HRESULT 
ID3D11VideoDecoder_QueryInterface(ID3D11VideoDecoder* This,REFIID riid,void 
**ppvObject) {
+    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
+}
+static FORCEINLINE ULONG ID3D11VideoDecoder_AddRef(ID3D11VideoDecoder* This) {
+    return This->lpVtbl->AddRef(This);
+}
+static FORCEINLINE ULONG ID3D11VideoDecoder_Release(ID3D11VideoDecoder* This) {
+    return This->lpVtbl->Release(This);
+}
+/*** ID3D11DeviceChild methods ***/
+static FORCEINLINE void ID3D11VideoDecoder_GetDevice(ID3D11VideoDecoder* 
This,ID3D11Device **ppDevice) {
+    This->lpVtbl->GetDevice(This,ppDevice);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoDecoder_GetPrivateData(ID3D11VideoDecoder* This,REFGUID guid,UINT 
*pDataSize,void *pData) {
+    return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoDecoder_SetPrivateData(ID3D11VideoDecoder* This,REFGUID guid,UINT 
DataSize,const void *pData) {
+    return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoDecoder_SetPrivateDataInterface(ID3D11VideoDecoder* This,REFGUID 
guid,const IUnknown *pData) {
+    return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
+}
+#endif
+#endif
+
+#endif
+
+
+#endif  /* __ID3D11VideoDecoder_INTERFACE_DEFINED__ */
+
+typedef enum D3D11_VDOV_DIMENSION {
+    D3D11_VDOV_DIMENSION_UNKNOWN = 0,
+    D3D11_VDOV_DIMENSION_TEXTURE2D = 1
+} D3D11_VDOV_DIMENSION;
+typedef struct D3D11_TEX2D_VDOV {
+    UINT ArraySlice;
+} D3D11_TEX2D_VDOV;
+typedef struct D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC {
+    GUID DecodeProfile;
+    D3D11_VDOV_DIMENSION ViewDimension;
+    __C89_NAMELESS union {
+        D3D11_TEX2D_VDOV Texture2D;
+    } __C89_NAMELESSUNIONNAME;
+} D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC;
+/*****************************************************************************
+ * ID3D11VideoDecoderOutputView interface
+ */
+#ifndef __ID3D11VideoDecoderOutputView_INTERFACE_DEFINED__
+#define __ID3D11VideoDecoderOutputView_INTERFACE_DEFINED__
+
+DEFINE_GUID(IID_ID3D11VideoDecoderOutputView, 0xc2931aea, 0x2a85, 0x4f20, 
0x86,0x0f, 0xfb,0xa1,0xfd,0x25,0x6e,0x18);
+#if defined(__cplusplus) && !defined(CINTERFACE)
+MIDL_INTERFACE("c2931aea-2a85-4f20-860f-fba1fd256e18")
+ID3D11VideoDecoderOutputView : public ID3D11View
+{
+    virtual void STDMETHODCALLTYPE GetDesc(
+        D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc) = 0;
+
+};
+#ifdef __CRT_UUID_DECL
+__CRT_UUID_DECL(ID3D11VideoDecoderOutputView, 0xc2931aea, 0x2a85, 0x4f20, 
0x86,0x0f, 0xfb,0xa1,0xfd,0x25,0x6e,0x18)
+#endif
+#else
+typedef struct ID3D11VideoDecoderOutputViewVtbl {
+    BEGIN_INTERFACE
+
+    /*** IUnknown methods ***/
+    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
+        ID3D11VideoDecoderOutputView* This,
+        REFIID riid,
+        void **ppvObject);
+
+    ULONG (STDMETHODCALLTYPE *AddRef)(
+        ID3D11VideoDecoderOutputView* This);
+
+    ULONG (STDMETHODCALLTYPE *Release)(
+        ID3D11VideoDecoderOutputView* This);
+
+    /*** ID3D11DeviceChild methods ***/
+    void (STDMETHODCALLTYPE *GetDevice)(
+        ID3D11VideoDecoderOutputView* This,
+        ID3D11Device **ppDevice);
+
+    HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
+        ID3D11VideoDecoderOutputView* This,
+        REFGUID guid,
+        UINT *pDataSize,
+        void *pData);
+
+    HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
+        ID3D11VideoDecoderOutputView* This,
+        REFGUID guid,
+        UINT DataSize,
+        const void *pData);
+
+    HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
+        ID3D11VideoDecoderOutputView* This,
+        REFGUID guid,
+        const IUnknown *pData);
+
+    /*** ID3D11View methods ***/
+    void (STDMETHODCALLTYPE *GetResource)(
+        ID3D11VideoDecoderOutputView* This,
+        ID3D11Resource **ppResource);
+
+    /*** ID3D11VideoDecoderOutputView methods ***/
+    void (STDMETHODCALLTYPE *GetDesc)(
+        ID3D11VideoDecoderOutputView* This,
+        D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc);
+
+    END_INTERFACE
+} ID3D11VideoDecoderOutputViewVtbl;
+interface ID3D11VideoDecoderOutputView {
+    CONST_VTBL ID3D11VideoDecoderOutputViewVtbl* lpVtbl;
+};
+
+#ifdef COBJMACROS
+#ifndef WIDL_C_INLINE_WRAPPERS
+/*** IUnknown methods ***/
+#define ID3D11VideoDecoderOutputView_QueryInterface(This,riid,ppvObject) 
(This)->lpVtbl->QueryInterface(This,riid,ppvObject)
+#define ID3D11VideoDecoderOutputView_AddRef(This) (This)->lpVtbl->AddRef(This)
+#define ID3D11VideoDecoderOutputView_Release(This) 
(This)->lpVtbl->Release(This)
+/*** ID3D11DeviceChild methods ***/
+#define ID3D11VideoDecoderOutputView_GetDevice(This,ppDevice) 
(This)->lpVtbl->GetDevice(This,ppDevice)
+#define ID3D11VideoDecoderOutputView_GetPrivateData(This,guid,pDataSize,pData) 
(This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
+#define ID3D11VideoDecoderOutputView_SetPrivateData(This,guid,DataSize,pData) 
(This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
+#define ID3D11VideoDecoderOutputView_SetPrivateDataInterface(This,guid,pData) 
(This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
+/*** ID3D11View methods ***/
+#define ID3D11VideoDecoderOutputView_GetResource(This,ppResource) 
(This)->lpVtbl->GetResource(This,ppResource)
+/*** ID3D11VideoDecoderOutputView methods ***/
+#define ID3D11VideoDecoderOutputView_GetDesc(This,pDesc) 
(This)->lpVtbl->GetDesc(This,pDesc)
+#else
+/*** IUnknown methods ***/
+static FORCEINLINE HRESULT 
ID3D11VideoDecoderOutputView_QueryInterface(ID3D11VideoDecoderOutputView* 
This,REFIID riid,void **ppvObject) {
+    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
+}
+static FORCEINLINE ULONG 
ID3D11VideoDecoderOutputView_AddRef(ID3D11VideoDecoderOutputView* This) {
+    return This->lpVtbl->AddRef(This);
+}
+static FORCEINLINE ULONG 
ID3D11VideoDecoderOutputView_Release(ID3D11VideoDecoderOutputView* This) {
+    return This->lpVtbl->Release(This);
+}
+/*** ID3D11DeviceChild methods ***/
+static FORCEINLINE void 
ID3D11VideoDecoderOutputView_GetDevice(ID3D11VideoDecoderOutputView* 
This,ID3D11Device **ppDevice) {
+    This->lpVtbl->GetDevice(This,ppDevice);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoDecoderOutputView_GetPrivateData(ID3D11VideoDecoderOutputView* 
This,REFGUID guid,UINT *pDataSize,void *pData) {
+    return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoDecoderOutputView_SetPrivateData(ID3D11VideoDecoderOutputView* 
This,REFGUID guid,UINT DataSize,const void *pData) {
+    return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoDecoderOutputView_SetPrivateDataInterface(ID3D11VideoDecoderOutputView*
 This,REFGUID guid,const IUnknown *pData) {
+    return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
+}
+/*** ID3D11View methods ***/
+static FORCEINLINE void 
ID3D11VideoDecoderOutputView_GetResource(ID3D11VideoDecoderOutputView* 
This,ID3D11Resource **ppResource) {
+    This->lpVtbl->GetResource(This,ppResource);
+}
+/*** ID3D11VideoDecoderOutputView methods ***/
+static FORCEINLINE void 
ID3D11VideoDecoderOutputView_GetDesc(ID3D11VideoDecoderOutputView* 
This,D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc) {
+    This->lpVtbl->GetDesc(This,pDesc);
+}
+#endif
+#endif
+
+#endif
+
+void STDMETHODCALLTYPE ID3D11VideoDecoderOutputView_GetDesc_Proxy(
+    ID3D11VideoDecoderOutputView* This,
+    D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc);
+void __RPC_STUB ID3D11VideoDecoderOutputView_GetDesc_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+
+#endif  /* __ID3D11VideoDecoderOutputView_INTERFACE_DEFINED__ */
+
+/*****************************************************************************
+ * ID3D11VideoContext interface
+ */
+#ifndef __ID3D11VideoContext_INTERFACE_DEFINED__
+#define __ID3D11VideoContext_INTERFACE_DEFINED__
+
+DEFINE_GUID(IID_ID3D11VideoContext, 0x61f21c45, 0x3c0e, 0x4a74, 0x9c,0xea, 
0x67,0x10,0x0d,0x9a,0xd5,0xe4);
+#if defined(__cplusplus) && !defined(CINTERFACE)
+MIDL_INTERFACE("61f21c45-3c0e-4a74-9cea-67100d9ad5e4")
+ID3D11VideoContext : public ID3D11DeviceChild
+{
+    virtual HRESULT STDMETHODCALLTYPE GetDecoderBuffer(
+        ID3D11VideoDecoder *pDecoder,
+        D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType,
+        UINT *pBufferSize,
+        void **ppBuffer) = 0;
+
+    virtual HRESULT STDMETHODCALLTYPE ReleaseDecoderBuffer(
+        ID3D11VideoDecoder *pDecoder,
+        D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType) = 0;
+
+    virtual HRESULT STDMETHODCALLTYPE DecoderBeginFrame(
+        ID3D11VideoDecoder *pDecoder,
+        ID3D11VideoDecoderOutputView *pVideoDecoderOutputView,
+        UINT ContentKeySize,
+        const void *pContentKey) = 0;
+
+    virtual HRESULT STDMETHODCALLTYPE DecoderEndFrame(
+        ID3D11VideoDecoder *pDecoder) = 0;
+
+    virtual HRESULT STDMETHODCALLTYPE SubmitDecoderBuffers(
+        ID3D11VideoDecoder *pDecoder,
+        UINT NumBuffers,
+        const D3D11_VIDEO_DECODER_BUFFER_DESC *pBufferDesc) = 0;
+
+};
+#ifdef __CRT_UUID_DECL
+__CRT_UUID_DECL(ID3D11VideoContext, 0x61f21c45, 0x3c0e, 0x4a74, 0x9c,0xea, 
0x67,0x10,0x0d,0x9a,0xd5,0xe4)
+#endif
+#else
+typedef struct ID3D11VideoContextVtbl {
+    BEGIN_INTERFACE
+
+    /*** IUnknown methods ***/
+    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
+        ID3D11VideoContext* This,
+        REFIID riid,
+        void **ppvObject);
+
+    ULONG (STDMETHODCALLTYPE *AddRef)(
+        ID3D11VideoContext* This);
+
+    ULONG (STDMETHODCALLTYPE *Release)(
+        ID3D11VideoContext* This);
+
+    /*** ID3D11DeviceChild methods ***/
+    void (STDMETHODCALLTYPE *GetDevice)(
+        ID3D11VideoContext* This,
+        ID3D11Device **ppDevice);
+
+    HRESULT (STDMETHODCALLTYPE *GetPrivateData)(
+        ID3D11VideoContext* This,
+        REFGUID guid,
+        UINT *pDataSize,
+        void *pData);
+
+    HRESULT (STDMETHODCALLTYPE *SetPrivateData)(
+        ID3D11VideoContext* This,
+        REFGUID guid,
+        UINT DataSize,
+        const void *pData);
+
+    HRESULT (STDMETHODCALLTYPE *SetPrivateDataInterface)(
+        ID3D11VideoContext* This,
+        REFGUID guid,
+        const IUnknown *pData);
+
+    /*** ID3D11VideoContext methods ***/
+    HRESULT (STDMETHODCALLTYPE *GetDecoderBuffer)(
+        ID3D11VideoContext* This,
+        ID3D11VideoDecoder *pDecoder,
+        D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType,
+        UINT *pBufferSize,
+        void **ppBuffer);
+
+    HRESULT (STDMETHODCALLTYPE *ReleaseDecoderBuffer)(
+        ID3D11VideoContext* This,
+        ID3D11VideoDecoder *pDecoder,
+        D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType);
+
+    HRESULT (STDMETHODCALLTYPE *DecoderBeginFrame)(
+        ID3D11VideoContext* This,
+        ID3D11VideoDecoder *pDecoder,
+        ID3D11VideoDecoderOutputView *pVideoDecoderOutputView,
+        UINT ContentKeySize,
+        const void *pContentKey);
+
+    HRESULT (STDMETHODCALLTYPE *DecoderEndFrame)(
+        ID3D11VideoContext* This,
+        ID3D11VideoDecoder *pDecoder);
+
+    HRESULT (STDMETHODCALLTYPE *SubmitDecoderBuffers)(
+        ID3D11VideoContext* This,
+        ID3D11VideoDecoder *pDecoder,
+        UINT NumBuffers,
+        const D3D11_VIDEO_DECODER_BUFFER_DESC *pBufferDesc);
+
+    END_INTERFACE
+} ID3D11VideoContextVtbl;
+interface ID3D11VideoContext {
+    CONST_VTBL ID3D11VideoContextVtbl* lpVtbl;
+};
+
+#ifdef COBJMACROS
+#ifndef WIDL_C_INLINE_WRAPPERS
+/*** IUnknown methods ***/
+#define ID3D11VideoContext_QueryInterface(This,riid,ppvObject) 
(This)->lpVtbl->QueryInterface(This,riid,ppvObject)
+#define ID3D11VideoContext_AddRef(This) (This)->lpVtbl->AddRef(This)
+#define ID3D11VideoContext_Release(This) (This)->lpVtbl->Release(This)
+/*** ID3D11DeviceChild methods ***/
+#define ID3D11VideoContext_GetDevice(This,ppDevice) 
(This)->lpVtbl->GetDevice(This,ppDevice)
+#define ID3D11VideoContext_GetPrivateData(This,guid,pDataSize,pData) 
(This)->lpVtbl->GetPrivateData(This,guid,pDataSize,pData)
+#define ID3D11VideoContext_SetPrivateData(This,guid,DataSize,pData) 
(This)->lpVtbl->SetPrivateData(This,guid,DataSize,pData)
+#define ID3D11VideoContext_SetPrivateDataInterface(This,guid,pData) 
(This)->lpVtbl->SetPrivateDataInterface(This,guid,pData)
+/*** ID3D11VideoContext methods ***/
+#define 
ID3D11VideoContext_GetDecoderBuffer(This,pDecoder,BufferType,pBufferSize,ppBuffer)
 (This)->lpVtbl->GetDecoderBuffer(This,pDecoder,BufferType,pBufferSize,ppBuffer)
+#define ID3D11VideoContext_ReleaseDecoderBuffer(This,pDecoder,BufferType) 
(This)->lpVtbl->ReleaseDecoderBuffer(This,pDecoder,BufferType)
+#define 
ID3D11VideoContext_DecoderBeginFrame(This,pDecoder,pVideoDecoderOutputView,ContentKeySize,pContentKey)
 
(This)->lpVtbl->DecoderBeginFrame(This,pDecoder,pVideoDecoderOutputView,ContentKeySize,pContentKey)
+#define ID3D11VideoContext_DecoderEndFrame(This,pDecoder) 
(This)->lpVtbl->DecoderEndFrame(This,pDecoder)
+#define 
ID3D11VideoContext_SubmitDecoderBuffers(This,pDecoder,NumBuffers,pBufferDesc) 
(This)->lpVtbl->SubmitDecoderBuffers(This,pDecoder,NumBuffers,pBufferDesc)
+#else
+/*** IUnknown methods ***/
+static FORCEINLINE HRESULT 
ID3D11VideoContext_QueryInterface(ID3D11VideoContext* This,REFIID riid,void 
**ppvObject) {
+    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
+}
+static FORCEINLINE ULONG ID3D11VideoContext_AddRef(ID3D11VideoContext* This) {
+    return This->lpVtbl->AddRef(This);
+}
+static FORCEINLINE ULONG ID3D11VideoContext_Release(ID3D11VideoContext* This) {
+    return This->lpVtbl->Release(This);
+}
+/*** ID3D11DeviceChild methods ***/
+static FORCEINLINE void ID3D11VideoContext_GetDevice(ID3D11VideoContext* 
This,ID3D11Device **ppDevice) {
+    This->lpVtbl->GetDevice(This,ppDevice);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoContext_GetPrivateData(ID3D11VideoContext* This,REFGUID guid,UINT 
*pDataSize,void *pData) {
+    return This->lpVtbl->GetPrivateData(This,guid,pDataSize,pData);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoContext_SetPrivateData(ID3D11VideoContext* This,REFGUID guid,UINT 
DataSize,const void *pData) {
+    return This->lpVtbl->SetPrivateData(This,guid,DataSize,pData);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoContext_SetPrivateDataInterface(ID3D11VideoContext* This,REFGUID 
guid,const IUnknown *pData) {
+    return This->lpVtbl->SetPrivateDataInterface(This,guid,pData);
+}
+/*** ID3D11VideoContext methods ***/
+static FORCEINLINE HRESULT 
ID3D11VideoContext_GetDecoderBuffer(ID3D11VideoContext* This,ID3D11VideoDecoder 
*pDecoder,D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType,UINT *pBufferSize,void 
**ppBuffer) {
+    return 
This->lpVtbl->GetDecoderBuffer(This,pDecoder,BufferType,pBufferSize,ppBuffer);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoContext_ReleaseDecoderBuffer(ID3D11VideoContext* 
This,ID3D11VideoDecoder *pDecoder,D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType) {
+    return This->lpVtbl->ReleaseDecoderBuffer(This,pDecoder,BufferType);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoContext_DecoderBeginFrame(ID3D11VideoContext* 
This,ID3D11VideoDecoder *pDecoder,ID3D11VideoDecoderOutputView 
*pVideoDecoderOutputView,UINT ContentKeySize,const void *pContentKey) {
+    return 
This->lpVtbl->DecoderBeginFrame(This,pDecoder,pVideoDecoderOutputView,ContentKeySize,pContentKey);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoContext_DecoderEndFrame(ID3D11VideoContext* This,ID3D11VideoDecoder 
*pDecoder) {
+    return This->lpVtbl->DecoderEndFrame(This,pDecoder);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoContext_SubmitDecoderBuffers(ID3D11VideoContext* 
This,ID3D11VideoDecoder *pDecoder,UINT NumBuffers,const 
D3D11_VIDEO_DECODER_BUFFER_DESC *pBufferDesc) {
+    return 
This->lpVtbl->SubmitDecoderBuffers(This,pDecoder,NumBuffers,pBufferDesc);
+}
+#endif
+#endif
+
+#endif
+
+HRESULT STDMETHODCALLTYPE ID3D11VideoContext_GetDecoderBuffer_Proxy(
+    ID3D11VideoContext* This,
+    ID3D11VideoDecoder *pDecoder,
+    D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType,
+    UINT *pBufferSize,
+    void **ppBuffer);
+void __RPC_STUB ID3D11VideoContext_GetDecoderBuffer_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE ID3D11VideoContext_ReleaseDecoderBuffer_Proxy(
+    ID3D11VideoContext* This,
+    ID3D11VideoDecoder *pDecoder,
+    D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType);
+void __RPC_STUB ID3D11VideoContext_ReleaseDecoderBuffer_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE ID3D11VideoContext_DecoderBeginFrame_Proxy(
+    ID3D11VideoContext* This,
+    ID3D11VideoDecoder *pDecoder,
+    ID3D11VideoDecoderOutputView *pVideoDecoderOutputView,
+    UINT ContentKeySize,
+    const void *pContentKey);
+void __RPC_STUB ID3D11VideoContext_DecoderBeginFrame_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE ID3D11VideoContext_DecoderEndFrame_Proxy(
+    ID3D11VideoContext* This,
+    ID3D11VideoDecoder *pDecoder);
+void __RPC_STUB ID3D11VideoContext_DecoderEndFrame_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE ID3D11VideoContext_SubmitDecoderBuffers_Proxy(
+    ID3D11VideoContext* This,
+    ID3D11VideoDecoder *pDecoder,
+    UINT NumBuffers,
+    const D3D11_VIDEO_DECODER_BUFFER_DESC *pBufferDesc);
+void __RPC_STUB ID3D11VideoContext_SubmitDecoderBuffers_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+
+#endif  /* __ID3D11VideoContext_INTERFACE_DEFINED__ */
+
+/*****************************************************************************
+ * ID3D11VideoDevice interface
+ */
+#ifndef __ID3D11VideoDevice_INTERFACE_DEFINED__
+#define __ID3D11VideoDevice_INTERFACE_DEFINED__
+
+DEFINE_GUID(IID_ID3D11VideoDevice, 0x10ec4d5b, 0x975a, 0x4689, 0xb9,0xe4, 
0xd0,0xaa,0xc3,0x0f,0xe3,0x33);
+#if defined(__cplusplus) && !defined(CINTERFACE)
+MIDL_INTERFACE("10ec4d5b-975a-4689-b9e4-d0aac30fe333")
+ID3D11VideoDevice : public IUnknown
+{
+    virtual HRESULT STDMETHODCALLTYPE CreateVideoDecoder(
+        const D3D11_VIDEO_DECODER_DESC *pVideoDesc,
+        const D3D11_VIDEO_DECODER_CONFIG *pConfig,
+        ID3D11VideoDecoder **ppVideoDecoder) = 0;
+
+    virtual UINT STDMETHODCALLTYPE GetVideoDecoderProfileCount(
+        ) = 0;
+
+    virtual HRESULT STDMETHODCALLTYPE GetVideoDecoderProfile(
+        UINT Index,
+        GUID *pDecoderProfile) = 0;
+
+    virtual HRESULT STDMETHODCALLTYPE CheckVideoDecoderFormat(
+        const GUID *pDecoderProfile,
+        DXGI_FORMAT Format,
+        WINBOOL *pSupported) = 0;
+
+    virtual HRESULT STDMETHODCALLTYPE CreateVideoDecoderOutputView(
+        ID3D11Resource *pResource,
+        const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc,
+        ID3D11VideoDecoderOutputView **ppVideoDecoderOutputView) = 0;
+
+    virtual HRESULT STDMETHODCALLTYPE GetVideoDecoderConfigCount(
+        const D3D11_VIDEO_DECODER_DESC *pDesc,
+        UINT *pCount) = 0;
+
+    virtual HRESULT STDMETHODCALLTYPE GetVideoDecoderConfig(
+        const D3D11_VIDEO_DECODER_DESC *pDesc,
+        UINT Index,
+        D3D11_VIDEO_DECODER_CONFIG *pConfig) = 0;
+
+};
+#ifdef __CRT_UUID_DECL
+__CRT_UUID_DECL(ID3D11VideoDevice, 0x10ec4d5b, 0x975a, 0x4689, 0xb9,0xe4, 
0xd0,0xaa,0xc3,0x0f,0xe3,0x33)
+#endif
+#else
+typedef struct ID3D11VideoDeviceVtbl {
+    BEGIN_INTERFACE
+
+    /*** IUnknown methods ***/
+    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
+        ID3D11VideoDevice* This,
+        REFIID riid,
+        void **ppvObject);
+
+    ULONG (STDMETHODCALLTYPE *AddRef)(
+        ID3D11VideoDevice* This);
+
+    ULONG (STDMETHODCALLTYPE *Release)(
+        ID3D11VideoDevice* This);
+
+    /*** ID3D11VideoDevice methods ***/
+    HRESULT (STDMETHODCALLTYPE *CreateVideoDecoder)(
+        ID3D11VideoDevice* This,
+        const D3D11_VIDEO_DECODER_DESC *pVideoDesc,
+        const D3D11_VIDEO_DECODER_CONFIG *pConfig,
+        ID3D11VideoDecoder **ppVideoDecoder);
+
+    UINT (STDMETHODCALLTYPE *GetVideoDecoderProfileCount)(
+        ID3D11VideoDevice* This);
+
+    HRESULT (STDMETHODCALLTYPE *GetVideoDecoderProfile)(
+        ID3D11VideoDevice* This,
+        UINT Index,
+        GUID *pDecoderProfile);
+
+    HRESULT (STDMETHODCALLTYPE *CheckVideoDecoderFormat)(
+        ID3D11VideoDevice* This,
+        const GUID *pDecoderProfile,
+        DXGI_FORMAT Format,
+        WINBOOL *pSupported);
+
+    HRESULT (STDMETHODCALLTYPE *CreateVideoDecoderOutputView)(
+        ID3D11VideoDevice* This,
+        ID3D11Resource *pResource,
+        const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc,
+        ID3D11VideoDecoderOutputView **ppVideoDecoderOutputView);
+
+    HRESULT (STDMETHODCALLTYPE *GetVideoDecoderConfigCount)(
+        ID3D11VideoDevice* This,
+        const D3D11_VIDEO_DECODER_DESC *pDesc,
+        UINT *pCount);
+
+    HRESULT (STDMETHODCALLTYPE *GetVideoDecoderConfig)(
+        ID3D11VideoDevice* This,
+        const D3D11_VIDEO_DECODER_DESC *pDesc,
+        UINT Index,
+        D3D11_VIDEO_DECODER_CONFIG *pConfig);
+
+    END_INTERFACE
+} ID3D11VideoDeviceVtbl;
+interface ID3D11VideoDevice {
+    CONST_VTBL ID3D11VideoDeviceVtbl* lpVtbl;
+};
+
+#ifdef COBJMACROS
+#ifndef WIDL_C_INLINE_WRAPPERS
+/*** IUnknown methods ***/
+#define ID3D11VideoDevice_QueryInterface(This,riid,ppvObject) 
(This)->lpVtbl->QueryInterface(This,riid,ppvObject)
+#define ID3D11VideoDevice_AddRef(This) (This)->lpVtbl->AddRef(This)
+#define ID3D11VideoDevice_Release(This) (This)->lpVtbl->Release(This)
+/*** ID3D11VideoDevice methods ***/
+#define 
ID3D11VideoDevice_CreateVideoDecoder(This,pVideoDesc,pConfig,ppVideoDecoder) 
(This)->lpVtbl->CreateVideoDecoder(This,pVideoDesc,pConfig,ppVideoDecoder)
+#define ID3D11VideoDevice_GetVideoDecoderProfileCount(This) 
(This)->lpVtbl->GetVideoDecoderProfileCount(This)
+#define ID3D11VideoDevice_GetVideoDecoderProfile(This,Index,pDecoderProfile) 
(This)->lpVtbl->GetVideoDecoderProfile(This,Index,pDecoderProfile)
+#define 
ID3D11VideoDevice_CheckVideoDecoderFormat(This,pDecoderProfile,Format,pSupported)
 (This)->lpVtbl->CheckVideoDecoderFormat(This,pDecoderProfile,Format,pSupported)
+#define 
ID3D11VideoDevice_CreateVideoDecoderOutputView(This,pResource,pDesc,ppVideoDecoderOutputView)
 
(This)->lpVtbl->CreateVideoDecoderOutputView(This,pResource,pDesc,ppVideoDecoderOutputView)
+#define ID3D11VideoDevice_GetVideoDecoderConfigCount(This,pDesc,pCount) 
(This)->lpVtbl->GetVideoDecoderConfigCount(This,pDesc,pCount)
+#define ID3D11VideoDevice_GetVideoDecoderConfig(This,pDesc,Index,pConfig) 
(This)->lpVtbl->GetVideoDecoderConfig(This,pDesc,Index,pConfig)
+#else
+/*** IUnknown methods ***/
+static FORCEINLINE HRESULT ID3D11VideoDevice_QueryInterface(ID3D11VideoDevice* 
This,REFIID riid,void **ppvObject) {
+    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
+}
+static FORCEINLINE ULONG ID3D11VideoDevice_AddRef(ID3D11VideoDevice* This) {
+    return This->lpVtbl->AddRef(This);
+}
+static FORCEINLINE ULONG ID3D11VideoDevice_Release(ID3D11VideoDevice* This) {
+    return This->lpVtbl->Release(This);
+}
+/*** ID3D11VideoDevice methods ***/
+static FORCEINLINE HRESULT 
ID3D11VideoDevice_CreateVideoDecoder(ID3D11VideoDevice* This,const 
D3D11_VIDEO_DECODER_DESC *pVideoDesc,const D3D11_VIDEO_DECODER_CONFIG 
*pConfig,ID3D11VideoDecoder **ppVideoDecoder) {
+    return 
This->lpVtbl->CreateVideoDecoder(This,pVideoDesc,pConfig,ppVideoDecoder);
+}
+static FORCEINLINE UINT 
ID3D11VideoDevice_GetVideoDecoderProfileCount(ID3D11VideoDevice* This) {
+    return This->lpVtbl->GetVideoDecoderProfileCount(This);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoDevice_GetVideoDecoderProfile(ID3D11VideoDevice* This,UINT 
Index,GUID *pDecoderProfile) {
+    return This->lpVtbl->GetVideoDecoderProfile(This,Index,pDecoderProfile);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoDevice_CheckVideoDecoderFormat(ID3D11VideoDevice* This,const GUID 
*pDecoderProfile,DXGI_FORMAT Format,WINBOOL *pSupported) {
+    return 
This->lpVtbl->CheckVideoDecoderFormat(This,pDecoderProfile,Format,pSupported);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoDevice_CreateVideoDecoderOutputView(ID3D11VideoDevice* 
This,ID3D11Resource *pResource,const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC 
*pDesc,ID3D11VideoDecoderOutputView **ppVideoDecoderOutputView) {
+    return 
This->lpVtbl->CreateVideoDecoderOutputView(This,pResource,pDesc,ppVideoDecoderOutputView);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoDevice_GetVideoDecoderConfigCount(ID3D11VideoDevice* This,const 
D3D11_VIDEO_DECODER_DESC *pDesc,UINT *pCount) {
+    return This->lpVtbl->GetVideoDecoderConfigCount(This,pDesc,pCount);
+}
+static FORCEINLINE HRESULT 
ID3D11VideoDevice_GetVideoDecoderConfig(ID3D11VideoDevice* This,const 
D3D11_VIDEO_DECODER_DESC *pDesc,UINT Index,D3D11_VIDEO_DECODER_CONFIG *pConfig) 
{
+    return This->lpVtbl->GetVideoDecoderConfig(This,pDesc,Index,pConfig);
+}
+#endif
+#endif
+
+#endif
+
+HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_CreateVideoDecoder_Proxy(
+    ID3D11VideoDevice* This,
+    const D3D11_VIDEO_DECODER_DESC *pVideoDesc,
+    const D3D11_VIDEO_DECODER_CONFIG *pConfig,
+    ID3D11VideoDecoder **ppVideoDecoder);
+void __RPC_STUB ID3D11VideoDevice_CreateVideoDecoder_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+UINT STDMETHODCALLTYPE ID3D11VideoDevice_GetVideoDecoderProfileCount_Proxy(
+    ID3D11VideoDevice* This);
+void __RPC_STUB ID3D11VideoDevice_GetVideoDecoderProfileCount_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_GetVideoDecoderProfile_Proxy(
+    ID3D11VideoDevice* This,
+    UINT Index,
+    GUID *pDecoderProfile);
+void __RPC_STUB ID3D11VideoDevice_GetVideoDecoderProfile_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_CheckVideoDecoderFormat_Proxy(
+    ID3D11VideoDevice* This,
+    const GUID *pDecoderProfile,
+    DXGI_FORMAT Format,
+    WINBOOL *pSupported);
+void __RPC_STUB ID3D11VideoDevice_CheckVideoDecoderFormat_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_CreateVideoDecoderOutputView_Proxy(
+    ID3D11VideoDevice* This,
+    ID3D11Resource *pResource,
+    const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc,
+    ID3D11VideoDecoderOutputView **ppVideoDecoderOutputView);
+void __RPC_STUB ID3D11VideoDevice_CreateVideoDecoderOutputView_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_GetVideoDecoderConfigCount_Proxy(
+    ID3D11VideoDevice* This,
+    const D3D11_VIDEO_DECODER_DESC *pDesc,
+    UINT *pCount);
+void __RPC_STUB ID3D11VideoDevice_GetVideoDecoderConfigCount_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE ID3D11VideoDevice_GetVideoDecoderConfig_Proxy(
+    ID3D11VideoDevice* This,
+    const D3D11_VIDEO_DECODER_DESC *pDesc,
+    UINT Index,
+    D3D11_VIDEO_DECODER_CONFIG *pConfig);
+void __RPC_STUB ID3D11VideoDevice_GetVideoDecoderConfig_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+
+#endif  /* __ID3D11VideoDevice_INTERFACE_DEFINED__ */
+
 typedef enum D3D11_CREATE_DEVICE_FLAG {
     D3D11_CREATE_DEVICE_SINGLETHREADED = 0x1,
     D3D11_CREATE_DEVICE_DEBUG = 0x2,
diff --git a/mingw-w64-headers/direct-x/include/d3d11.idl 
b/mingw-w64-headers/direct-x/include/d3d11.idl
index c187463..dc10970 100644
--- a/mingw-w64-headers/direct-x/include/d3d11.idl
+++ b/mingw-w64-headers/direct-x/include/d3d11.idl
@@ -2125,6 +2125,205 @@ interface ID3D11Device : IUnknown
     UINT GetExceptionMode();
 }
 
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_MOCOMP_NOFGT, 0x1b81be64, 
0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_MOCOMP_FGT,   0x1b81be65, 
0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_IDCT_NOFGT,   0x1b81be66, 
0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_IDCT_FGT,     0x1b81be67, 
0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_NOFGT,    0x1b81be68, 
0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_FGT,      0x1b81be69, 
0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_WITHFMOASO_NOFGT,  
0xd5f04ff9, 0x3418, 0x45d8, 0x95, 0x61, 0x32, 0xa7, 0x6a, 0xae, 0x2d, 0xdd);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_STEREO_PROGRESSIVE_NOFGT,
 0xd79be8da, 0x0cf1, 0x4c81, 0xb8, 0x2a, 0x69, 0xa4, 0xe2, 0x36, 0xf4, 0x3d);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_STEREO_NOFGT,            
 0xf9aaccbb, 0xc2b6, 0x4cfc, 0x87, 0x79, 0x57, 0x07, 0xb1, 0x76, 0x05, 0x52);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_H264_VLD_MULTIVIEW_NOFGT,         
 0x705b9d82, 0x76cf, 0x49d6, 0xb7, 0xe6, 0xac, 0x88, 0x72, 0xdb, 0x01, 0x3c);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_WMV8_POSTPROC,     0x1b81be80, 
0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_WMV8_MOCOMP,       0x1b81be81, 
0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_WMV9_POSTPROC,     0x1b81be90, 
0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_WMV9_MOCOMP,       0x1b81be91, 
0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_WMV9_IDCT,         0x1b81be94, 
0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_VC1_POSTPROC,      0x1b81beA0, 
0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_VC1_MOCOMP,        0x1b81beA1, 
0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_VC1_IDCT,          0x1b81beA2, 
0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_VC1_VLD,           0x1b81beA3, 
0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_VC1_D2010,         0x1b81beA4, 
0xa0c7, 0x11d3, 0xb9, 0x84, 0x00, 0xc0, 0x4f, 0x2e, 0x73, 0xc5);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG4PT2_VLD_SIMPLE,           
0xefd64d74, 0xc9e8, 0x41d7, 0xa5, 0xe9, 0xe9, 0xb0, 0xe3, 0x9f, 0xa3, 0x19);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_NOGMC,  
0xed418a9f, 0x010d, 0x4eda, 0x9a, 0xe3, 0x9a, 0x65, 0x35, 0x8d, 0x8d, 0x2e);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG4PT2_VLD_ADVSIMPLE_GMC,    
0xab998b5b, 0x4258, 0x44a9, 0x9f, 0xeb, 0x94, 0xe5, 0x97, 0xa6, 0xba, 0xae);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_HEVC_VLD_MAIN,     0x5b11d51b, 
0x2f4c, 0x4452, 0xbc, 0xc3, 0x09, 0xf2, 0xa1, 0x16, 0x0c, 0xc0);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_HEVC_VLD_MAIN10,   0x107af0e0, 
0xef1a, 0x4d19, 0xab, 0xa8, 0x67, 0xa1, 0x63, 0x07, 0x3d, 0x13);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG2_MOCOMP,      0xe6a9f44b, 
0x61b0, 0x4563, 0x9e, 0xa4, 0x63, 0xd2, 0xa3, 0xc6, 0xfe, 0x66);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG2_IDCT,        0xbf22ad00, 
0x03ea, 0x4690, 0x80, 0x77, 0x47, 0x33, 0x46, 0x20, 0x9b, 0x7e);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG2_VLD,         0xee27417f, 
0x5e28, 0x4e65, 0xbe, 0xea, 0x1d, 0x26, 0xb5, 0x08, 0xad, 0xc9);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG1_VLD,         0x6f3ec719, 
0x3735, 0x42cc, 0x80, 0x63, 0x65, 0xcc, 0x3c, 0xb3, 0x66, 0x16);")
+cpp_quote("DEFINE_GUID(D3D11_DECODER_PROFILE_MPEG2and1_VLD,     0x86695f12, 
0x340e, 0x4f04, 0x9f, 0xd3, 0x92, 0x53, 0xdd, 0x32, 0x74, 0x60);")
+
+typedef struct D3D11_VIDEO_DECODER_DESC
+{
+    GUID        Guid;
+    UINT        SampleWidth;
+    UINT        SampleHeight;
+    DXGI_FORMAT OutputFormat;
+} D3D11_VIDEO_DECODER_DESC;
+
+typedef struct D3D11_VIDEO_DECODER_CONFIG
+{
+    GUID guidConfigBitstreamEncryption;
+    GUID guidConfigMBcontrolEncryption;
+    GUID guidConfigResidDiffEncryption;
+    UINT ConfigBitstreamRaw;
+    UINT ConfigMBcontrolRasterOrder;
+    UINT ConfigResidDiffHost;
+    UINT ConfigSpatialResid8;
+    UINT ConfigResid8Subtraction;
+    UINT ConfigSpatialHost8or9Clipping;
+    UINT ConfigSpatialResidInterleaved;
+    UINT ConfigIntraResidUnsigned;
+    UINT ConfigResidDiffAccelerator;
+    UINT ConfigHostInverseScan;
+    UINT ConfigSpecificIDCT;
+    UINT Config4GroupedCoefs;
+    USHORT ConfigMinRenderTargetBuffCount;
+    USHORT ConfigDecoderSpecific;
+} D3D11_VIDEO_DECODER_CONFIG;
+
+typedef enum D3D11_VIDEO_DECODER_BUFFER_TYPE
+{
+    D3D11_VIDEO_DECODER_BUFFER_PICTURE_PARAMETERS = 0,
+    D3D11_VIDEO_DECODER_BUFFER_MACROBLOCK_CONTROL,
+    D3D11_VIDEO_DECODER_BUFFER_RESIDUAL_DIFFERENCE,
+    D3D11_VIDEO_DECODER_BUFFER_DEBLOCKING_CONTROL,
+    D3D11_VIDEO_DECODER_BUFFER_INVERSE_QUANTIZATION_MATRIX,
+    D3D11_VIDEO_DECODER_BUFFER_SLICE_CONTROL,
+    D3D11_VIDEO_DECODER_BUFFER_BITSTREAM,
+    D3D11_VIDEO_DECODER_BUFFER_MOTION_VECTOR,
+    D3D11_VIDEO_DECODER_BUFFER_FILM_GRAIN
+} D3D11_VIDEO_DECODER_BUFFER_TYPE;
+
+typedef struct D3D11_ENCRYPTED_BLOCK_INFO
+{
+    UINT NumEncryptedBytesAtBeginning;
+    UINT NumBytesInSkipPattern;
+    UINT NumBytesInEncryptPattern;
+} D3D11_ENCRYPTED_BLOCK_INFO;
+
+typedef struct D3D11_VIDEO_DECODER_BUFFER_DESC
+{
+    D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType;
+    UINT BufferIndex;
+    UINT DataOffset;
+    UINT DataSize;
+    UINT FirstMBaddress;
+    UINT NumMBsInBuffer;
+    UINT Width;
+    UINT Height;
+    UINT Stride;
+    UINT ReservedBits;
+    void *pIV;
+    UINT IVSize;
+    BOOL PartialEncryption;
+    D3D11_ENCRYPTED_BLOCK_INFO EncryptedBlockInfo;
+} D3D11_VIDEO_DECODER_BUFFER_DESC;
+
+[
+    object,
+    local,
+    uuid(3c9c5b51-995d-48d1-9b8d-fa5caeded65c)
+]
+interface ID3D11VideoDecoder : ID3D11DeviceChild
+{
+}
+
+typedef enum D3D11_VDOV_DIMENSION
+{
+    D3D11_VDOV_DIMENSION_UNKNOWN = 0,
+    D3D11_VDOV_DIMENSION_TEXTURE2D
+} D3D11_VDOV_DIMENSION;
+
+typedef struct D3D11_TEX2D_VDOV
+{
+    UINT ArraySlice;
+} D3D11_TEX2D_VDOV;
+
+typedef struct D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC
+{
+    GUID DecodeProfile;
+    D3D11_VDOV_DIMENSION ViewDimension;
+
+    union
+    {
+        D3D11_TEX2D_VDOV Texture2D;
+    };
+} D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC;
+
+[
+    object,
+    local,
+    uuid(c2931aea-2a85-4f20-860f-fba1fd256e18)
+]
+interface ID3D11VideoDecoderOutputView : ID3D11View
+{
+    void GetDesc( [out] D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc);
+}
+
+[
+    object,
+    local,
+    uuid(61f21c45-3c0e-4a74-9cea-67100d9ad5e4)
+]
+interface ID3D11VideoContext : ID3D11DeviceChild
+{
+    HRESULT GetDecoderBuffer(
+        [in] ID3D11VideoDecoder *pDecoder,
+        [in] D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType,
+        [out] UINT *pBufferSize,
+        [out] void **ppBuffer);
+    HRESULT ReleaseDecoderBuffer(
+        [in] ID3D11VideoDecoder *pDecoder,
+        [in] D3D11_VIDEO_DECODER_BUFFER_TYPE BufferType);
+    HRESULT DecoderBeginFrame(
+        [in] ID3D11VideoDecoder *pDecoder,
+        [in] ID3D11VideoDecoderOutputView *pVideoDecoderOutputView,
+        [in] UINT ContentKeySize,
+        [in] const void *pContentKey);
+    HRESULT DecoderEndFrame(
+        [in] ID3D11VideoDecoder *pDecoder);
+    HRESULT SubmitDecoderBuffers(
+        [in] ID3D11VideoDecoder *pDecoder,
+        [in] UINT NumBuffers,
+        [in] const D3D11_VIDEO_DECODER_BUFFER_DESC *pBufferDesc);
+}
+
+[
+    object,
+    local,
+    uuid(10ec4d5b-975a-4689-b9e4-d0aac30fe333)
+]
+interface ID3D11VideoDevice : IUnknown
+{
+    HRESULT CreateVideoDecoder(
+        [in] const D3D11_VIDEO_DECODER_DESC *pVideoDesc,
+        [in] const D3D11_VIDEO_DECODER_CONFIG *pConfig,
+        [out] ID3D11VideoDecoder **ppVideoDecoder);
+    UINT GetVideoDecoderProfileCount(void);
+    HRESULT GetVideoDecoderProfile(
+        [in] UINT Index,
+        [out] GUID *pDecoderProfile);
+    HRESULT CheckVideoDecoderFormat(
+        [in] const GUID *pDecoderProfile,
+        [in] DXGI_FORMAT Format,
+        [out] BOOL *pSupported);
+    HRESULT CreateVideoDecoderOutputView(
+        [in] ID3D11Resource *pResource,
+        [in] const D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC *pDesc,
+        [out] ID3D11VideoDecoderOutputView **ppVideoDecoderOutputView);
+    HRESULT GetVideoDecoderConfigCount(
+        [in] const D3D11_VIDEO_DECODER_DESC *pDesc,
+        [out] UINT *pCount);
+    HRESULT GetVideoDecoderConfig(
+        [in] const D3D11_VIDEO_DECODER_DESC *pDesc,
+        [in] UINT Index,
+        [out] D3D11_VIDEO_DECODER_CONFIG *pConfig);
+}
+
 typedef enum D3D11_CREATE_DEVICE_FLAG {
     D3D11_CREATE_DEVICE_SINGLETHREADED  = 0x0001,
     D3D11_CREATE_DEVICE_DEBUG           = 0x0002,
-- 
2.4.0


------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to