It's late, so just 3 quick new ones tonight:

Ok, kai signed off on these too.

So, next are the IDL files. I (mistakenly) tried to regenerate my changes by just running widl against the appropriate idl file. Apparently the correct way is to use --with-widl on the configure line.

So I did that.  And it turned up a couple of (new) problems:

1) When building windows.foundation.idl, I get:

/mingw64/bin/widl -DBOOL=WINBOOL -I/c/cygwin64/src/Mingw-w64d/mingw-w64-headers/include -I/c/cygwin64/src/Mingw-w64d/mingw-w64-headers/direct-x/include -Icrt -I/c/cygwin64/src/Mingw-w64d/mingw-w64-headers/crt -h -o /c/cygwin64/src/Mingw-w64d/mingw-w64-headers/include/windows.foundation.h /c/cygwin64/src/Mingw-w64d/mingw-w64-headers/include/windows.foundation.idl C:/cygwin64/src/Mingw-w64d/mingw-w64-headers/include/windows.foundation.idl:14: error: syntax error, unexpected aIDENTIFIER, expecting $end

I don't see anything particularly interesting about line 14, but removing the "#pragma winrt ns_prefix" allowed the build to continue.

2) The build is overwriting prsht.h with the output from prsht.idl. However the new prsht.h is very different. Either prsht.idl needs a lot of additions, or the build needs to stop building prsht.h from the idl.

I have not attempted to fix either of these issues, since there is probably some history here.

What I have attempted to fix, are these (attached):

mftransform.patch - EXTERN_C is either defined as 'extern' or 'extern "C"'. However, this isn't really an extern (implying that the actual definition is elsewhere), since the code also initializes the variable. And we don't need 'extern "C"' since this entire section is already wrapped with one (part of idl generation). Using both 'extern' and initializing generates a warning (warning: 'MFT_ENUM_TRANSCODE_ONLY_ATTRIBUTE' initialized and declared 'extern').

strmif.patch - There are explicit #warning statements in strmif.idl (and thus strmif.h) that are not conditional (ie you always get them). I'm guessing this is because the code around it was manually generated instead of letting widl generate it from an interface definition. I have removed the manual code from strmif.idl and added the interface definition to axextend.idl (where it seems to belong). Reviewing this patch is easier if you remember that strmif.h is a generated file.

dw
diff --git a/mingw-w64-headers/include/mftransform.h b/mingw-w64-headers/include/mftransform.h
index 1663d74..4738b4a 100644
--- a/mingw-w64-headers/include/mftransform.h
+++ b/mingw-w64-headers/include/mftransform.h
@@ -701,6 +701,11 @@ void __RPC_STUB IMFTransform_ProcessMessage_Stub(
 
 #endif  /* __IMFTransform_INTERFACE_DEFINED__ */
 
+#ifdef __GNUC__
+#undef EXTERN_C
+#define EXTERN_C
+#endif
+
 EXTERN_C const DECLSPEC_SELECTANY PROPERTYKEY MFPKEY_CLSID = {{0xc57a84c0,0x1a80,0x40a3,{0x97,0xb5,0x92,0x72,0xa4,0x3,0xc8,0xae}}, 0x01};
 EXTERN_C const DECLSPEC_SELECTANY PROPERTYKEY MFPKEY_CATEGORY = {{0xc57a84c0,0x1a80,0x40a3,{0x97,0xb5,0x92,0x72,0xa4,0x3,0xc8,0xae}}, 0x02 };
 EXTERN_C const DECLSPEC_SELECTANY PROPERTYKEY MFPKEY_EXATTRIBUTE_SUPPORTED = {{0x456fe843,0x3c87,0x40c0,{0x94,0x9d,0x14,0x9,0xc9,0x7d,0xab,0x2c}}, 0x01};
diff --git a/mingw-w64-headers/include/mftransform.idl b/mingw-w64-headers/include/mftransform.idl
index 9b91736..11d5988 100644
--- a/mingw-w64-headers/include/mftransform.idl
+++ b/mingw-w64-headers/include/mftransform.idl
@@ -143,6 +143,14 @@ interface IMFTransform : IUnknown
                                   [out] DWORD *pdwStatus);
 }
 
+/* In gcc, declaring something 'extern' and then initializing it
+   generates a warning.  */
+cpp_quote("#ifdef __GNUC__")
+cpp_quote("#undef EXTERN_C")
+cpp_quote("#define EXTERN_C")
+cpp_quote("#endif")
+cpp_quote("")
+
 cpp_quote("EXTERN_C const DECLSPEC_SELECTANY PROPERTYKEY MFPKEY_CLSID = {{0xc57a84c0,0x1a80,0x40a3,{0x97,0xb5,0x92,0x72,0xa4,0x3,0xc8,0xae}}, 0x01};")
 cpp_quote("EXTERN_C const DECLSPEC_SELECTANY PROPERTYKEY MFPKEY_CATEGORY = {{0xc57a84c0,0x1a80,0x40a3,{0x97,0xb5,0x92,0x72,0xa4,0x3,0xc8,0xae}}, 0x02 };")
 cpp_quote("EXTERN_C const DECLSPEC_SELECTANY PROPERTYKEY MFPKEY_EXATTRIBUTE_SUPPORTED = {{0x456fe843,0x3c87,0x40c0,{0x94,0x9d,0x14,0x9,0xc9,0x7d,0xab,0x2c}}, 0x01};")
diff --git a/mingw-w64-headers/include/axextend.idl b/mingw-w64-headers/include/axextend.idl
index 754ca22..79e8369 100644
--- a/mingw-w64-headers/include/axextend.idl
+++ b/mingw-w64-headers/include/axextend.idl
@@ -1292,3 +1292,49 @@ interface IAMVfwCaptureDialogs : IUnknown
             [in] long data1,
             [in] long data2);
 };
+
+cpp_quote("#if (_WIN32_WINNT >= 0x0601)")
+[
+    local,
+    object,
+    uuid(cf7b26fc-9a00-485b-8147-3e789d5e8f67),
+    pointer_default(unique)
+]
+interface IAMAsyncReaderTimestampScaling : IUnknown
+{
+    HRESULT GetTimestampMode(
+            [out] BOOL *pfRaw);
+    HRESULT SetTimestampMode(
+            [in] BOOL fRaw);
+};
+
+[
+    local,
+    object,
+    uuid(0e26a181-f40c-4635-8786-976284b52981),
+    pointer_default(unique)
+]
+interface IAMPluginControl : IUnknown
+{
+    HRESULT GetPreferredClsid(
+            [in] REFGUID subType,
+            [out] CLSID *clsid);
+    HRESULT GetPreferredClsidByIndex(
+            [in] DWORD index,
+            [out] GUID *subType,
+            [out] CLSID *clsid);
+    HRESULT SetPreferredClsid(
+            [in] REFGUID subType,
+            [in] const CLSID *clsid);
+    HRESULT IsDisabled(
+            [in] REFCLSID clsid);
+    HRESULT GetDisabledByIndex(
+            [in] DWORD index,
+            [out] CLSID *clsid);
+    HRESULT SetDisabled(
+            [in] REFCLSID clsid,
+            [in] BOOL disabled);
+    HRESULT IsLegacyDisabled(
+            [in] LPCWSTR dllName);
+}
+cpp_quote("#endif /*(_WIN32_WINNT >= 0x0601)*/")
diff --git a/mingw-w64-headers/include/strmif.h b/mingw-w64-headers/include/strmif.h
index 716342b..4aaeb80 100644
--- a/mingw-w64-headers/include/strmif.h
+++ b/mingw-w64-headers/include/strmif.h
@@ -297,6 +297,16 @@ typedef interface IAMGraphBuilderCallback IAMGraphBuilderCallback;
 typedef interface IAMVfwCaptureDialogs IAMVfwCaptureDialogs;
 #endif
 
+#ifndef __IAMAsyncReaderTimestampScaling_FWD_DEFINED__
+#define __IAMAsyncReaderTimestampScaling_FWD_DEFINED__
+typedef interface IAMAsyncReaderTimestampScaling IAMAsyncReaderTimestampScaling;
+#endif
+
+#ifndef __IAMPluginControl_FWD_DEFINED__
+#define __IAMPluginControl_FWD_DEFINED__
+typedef interface IAMPluginControl IAMPluginControl;
+#endif
+
 /* Headers for imported files */
 
 #include <unknwn.h>
@@ -10515,6 +10525,327 @@ void __RPC_STUB IAMVfwCaptureDialogs_SendDriverMessage_Stub(
 
 #endif  /* __IAMVfwCaptureDialogs_INTERFACE_DEFINED__ */
 
+#if (_WIN32_WINNT >= 0x0601)
+/*****************************************************************************
+ * IAMAsyncReaderTimestampScaling interface
+ */
+#ifndef __IAMAsyncReaderTimestampScaling_INTERFACE_DEFINED__
+#define __IAMAsyncReaderTimestampScaling_INTERFACE_DEFINED__
+
+DEFINE_GUID(IID_IAMAsyncReaderTimestampScaling, 0xcf7b26fc, 0x9a00, 0x485b, 0x81,0x47, 0x3e,0x78,0x9d,0x5e,0x8f,0x67);
+#if defined(__cplusplus) && !defined(CINTERFACE)
+MIDL_INTERFACE("cf7b26fc-9a00-485b-8147-3e789d5e8f67")
+IAMAsyncReaderTimestampScaling : public IUnknown
+{
+    virtual HRESULT STDMETHODCALLTYPE GetTimestampMode(
+        WINBOOL *pfRaw) = 0;
+
+    virtual HRESULT STDMETHODCALLTYPE SetTimestampMode(
+        WINBOOL fRaw) = 0;
+
+};
+#ifdef __CRT_UUID_DECL
+__CRT_UUID_DECL(IAMAsyncReaderTimestampScaling, 0xcf7b26fc, 0x9a00, 0x485b, 0x81,0x47, 0x3e,0x78,0x9d,0x5e,0x8f,0x67)
+#endif
+#else
+typedef struct IAMAsyncReaderTimestampScalingVtbl {
+    BEGIN_INTERFACE
+
+    /*** IUnknown methods ***/
+    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
+        IAMAsyncReaderTimestampScaling* This,
+        REFIID riid,
+        void **ppvObject);
+
+    ULONG (STDMETHODCALLTYPE *AddRef)(
+        IAMAsyncReaderTimestampScaling* This);
+
+    ULONG (STDMETHODCALLTYPE *Release)(
+        IAMAsyncReaderTimestampScaling* This);
+
+    /*** IAMAsyncReaderTimestampScaling methods ***/
+    HRESULT (STDMETHODCALLTYPE *GetTimestampMode)(
+        IAMAsyncReaderTimestampScaling* This,
+        WINBOOL *pfRaw);
+
+    HRESULT (STDMETHODCALLTYPE *SetTimestampMode)(
+        IAMAsyncReaderTimestampScaling* This,
+        WINBOOL fRaw);
+
+    END_INTERFACE
+} IAMAsyncReaderTimestampScalingVtbl;
+interface IAMAsyncReaderTimestampScaling {
+    CONST_VTBL IAMAsyncReaderTimestampScalingVtbl* lpVtbl;
+};
+
+#ifdef COBJMACROS
+#ifndef WIDL_C_INLINE_WRAPPERS
+/*** IUnknown methods ***/
+#define IAMAsyncReaderTimestampScaling_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
+#define IAMAsyncReaderTimestampScaling_AddRef(This) (This)->lpVtbl->AddRef(This)
+#define IAMAsyncReaderTimestampScaling_Release(This) (This)->lpVtbl->Release(This)
+/*** IAMAsyncReaderTimestampScaling methods ***/
+#define IAMAsyncReaderTimestampScaling_GetTimestampMode(This,pfRaw) (This)->lpVtbl->GetTimestampMode(This,pfRaw)
+#define IAMAsyncReaderTimestampScaling_SetTimestampMode(This,fRaw) (This)->lpVtbl->SetTimestampMode(This,fRaw)
+#else
+/*** IUnknown methods ***/
+static FORCEINLINE HRESULT IAMAsyncReaderTimestampScaling_QueryInterface(IAMAsyncReaderTimestampScaling* This,REFIID riid,void **ppvObject) {
+    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
+}
+static FORCEINLINE ULONG IAMAsyncReaderTimestampScaling_AddRef(IAMAsyncReaderTimestampScaling* This) {
+    return This->lpVtbl->AddRef(This);
+}
+static FORCEINLINE ULONG IAMAsyncReaderTimestampScaling_Release(IAMAsyncReaderTimestampScaling* This) {
+    return This->lpVtbl->Release(This);
+}
+/*** IAMAsyncReaderTimestampScaling methods ***/
+static FORCEINLINE HRESULT IAMAsyncReaderTimestampScaling_GetTimestampMode(IAMAsyncReaderTimestampScaling* This,WINBOOL *pfRaw) {
+    return This->lpVtbl->GetTimestampMode(This,pfRaw);
+}
+static FORCEINLINE HRESULT IAMAsyncReaderTimestampScaling_SetTimestampMode(IAMAsyncReaderTimestampScaling* This,WINBOOL fRaw) {
+    return This->lpVtbl->SetTimestampMode(This,fRaw);
+}
+#endif
+#endif
+
+#endif
+
+HRESULT STDMETHODCALLTYPE IAMAsyncReaderTimestampScaling_GetTimestampMode_Proxy(
+    IAMAsyncReaderTimestampScaling* This,
+    WINBOOL *pfRaw);
+void __RPC_STUB IAMAsyncReaderTimestampScaling_GetTimestampMode_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE IAMAsyncReaderTimestampScaling_SetTimestampMode_Proxy(
+    IAMAsyncReaderTimestampScaling* This,
+    WINBOOL fRaw);
+void __RPC_STUB IAMAsyncReaderTimestampScaling_SetTimestampMode_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+
+#endif  /* __IAMAsyncReaderTimestampScaling_INTERFACE_DEFINED__ */
+
+/*****************************************************************************
+ * IAMPluginControl interface
+ */
+#ifndef __IAMPluginControl_INTERFACE_DEFINED__
+#define __IAMPluginControl_INTERFACE_DEFINED__
+
+DEFINE_GUID(IID_IAMPluginControl, 0x0e26a181, 0xf40c, 0x4635, 0x87,0x86, 0x97,0x62,0x84,0xb5,0x29,0x81);
+#if defined(__cplusplus) && !defined(CINTERFACE)
+MIDL_INTERFACE("0e26a181-f40c-4635-8786-976284b52981")
+IAMPluginControl : public IUnknown
+{
+    virtual HRESULT STDMETHODCALLTYPE GetPreferredClsid(
+        REFGUID subType,
+        CLSID *clsid) = 0;
+
+    virtual HRESULT STDMETHODCALLTYPE GetPreferredClsidByIndex(
+        DWORD index,
+        GUID *subType,
+        CLSID *clsid) = 0;
+
+    virtual HRESULT STDMETHODCALLTYPE SetPreferredClsid(
+        REFGUID subType,
+        const CLSID *clsid) = 0;
+
+    virtual HRESULT STDMETHODCALLTYPE IsDisabled(
+        REFCLSID clsid) = 0;
+
+    virtual HRESULT STDMETHODCALLTYPE GetDisabledByIndex(
+        DWORD index,
+        CLSID *clsid) = 0;
+
+    virtual HRESULT STDMETHODCALLTYPE SetDisabled(
+        REFCLSID clsid,
+        WINBOOL disabled) = 0;
+
+    virtual HRESULT STDMETHODCALLTYPE IsLegacyDisabled(
+        LPCWSTR dllName) = 0;
+
+};
+#ifdef __CRT_UUID_DECL
+__CRT_UUID_DECL(IAMPluginControl, 0x0e26a181, 0xf40c, 0x4635, 0x87,0x86, 0x97,0x62,0x84,0xb5,0x29,0x81)
+#endif
+#else
+typedef struct IAMPluginControlVtbl {
+    BEGIN_INTERFACE
+
+    /*** IUnknown methods ***/
+    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
+        IAMPluginControl* This,
+        REFIID riid,
+        void **ppvObject);
+
+    ULONG (STDMETHODCALLTYPE *AddRef)(
+        IAMPluginControl* This);
+
+    ULONG (STDMETHODCALLTYPE *Release)(
+        IAMPluginControl* This);
+
+    /*** IAMPluginControl methods ***/
+    HRESULT (STDMETHODCALLTYPE *GetPreferredClsid)(
+        IAMPluginControl* This,
+        REFGUID subType,
+        CLSID *clsid);
+
+    HRESULT (STDMETHODCALLTYPE *GetPreferredClsidByIndex)(
+        IAMPluginControl* This,
+        DWORD index,
+        GUID *subType,
+        CLSID *clsid);
+
+    HRESULT (STDMETHODCALLTYPE *SetPreferredClsid)(
+        IAMPluginControl* This,
+        REFGUID subType,
+        const CLSID *clsid);
+
+    HRESULT (STDMETHODCALLTYPE *IsDisabled)(
+        IAMPluginControl* This,
+        REFCLSID clsid);
+
+    HRESULT (STDMETHODCALLTYPE *GetDisabledByIndex)(
+        IAMPluginControl* This,
+        DWORD index,
+        CLSID *clsid);
+
+    HRESULT (STDMETHODCALLTYPE *SetDisabled)(
+        IAMPluginControl* This,
+        REFCLSID clsid,
+        WINBOOL disabled);
+
+    HRESULT (STDMETHODCALLTYPE *IsLegacyDisabled)(
+        IAMPluginControl* This,
+        LPCWSTR dllName);
+
+    END_INTERFACE
+} IAMPluginControlVtbl;
+interface IAMPluginControl {
+    CONST_VTBL IAMPluginControlVtbl* lpVtbl;
+};
+
+#ifdef COBJMACROS
+#ifndef WIDL_C_INLINE_WRAPPERS
+/*** IUnknown methods ***/
+#define IAMPluginControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
+#define IAMPluginControl_AddRef(This) (This)->lpVtbl->AddRef(This)
+#define IAMPluginControl_Release(This) (This)->lpVtbl->Release(This)
+/*** IAMPluginControl methods ***/
+#define IAMPluginControl_GetPreferredClsid(This,subType,clsid) (This)->lpVtbl->GetPreferredClsid(This,subType,clsid)
+#define IAMPluginControl_GetPreferredClsidByIndex(This,index,subType,clsid) (This)->lpVtbl->GetPreferredClsidByIndex(This,index,subType,clsid)
+#define IAMPluginControl_SetPreferredClsid(This,subType,clsid) (This)->lpVtbl->SetPreferredClsid(This,subType,clsid)
+#define IAMPluginControl_IsDisabled(This,clsid) (This)->lpVtbl->IsDisabled(This,clsid)
+#define IAMPluginControl_GetDisabledByIndex(This,index,clsid) (This)->lpVtbl->GetDisabledByIndex(This,index,clsid)
+#define IAMPluginControl_SetDisabled(This,clsid,disabled) (This)->lpVtbl->SetDisabled(This,clsid,disabled)
+#define IAMPluginControl_IsLegacyDisabled(This,dllName) (This)->lpVtbl->IsLegacyDisabled(This,dllName)
+#else
+/*** IUnknown methods ***/
+static FORCEINLINE HRESULT IAMPluginControl_QueryInterface(IAMPluginControl* This,REFIID riid,void **ppvObject) {
+    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
+}
+static FORCEINLINE ULONG IAMPluginControl_AddRef(IAMPluginControl* This) {
+    return This->lpVtbl->AddRef(This);
+}
+static FORCEINLINE ULONG IAMPluginControl_Release(IAMPluginControl* This) {
+    return This->lpVtbl->Release(This);
+}
+/*** IAMPluginControl methods ***/
+static FORCEINLINE HRESULT IAMPluginControl_GetPreferredClsid(IAMPluginControl* This,REFGUID subType,CLSID *clsid) {
+    return This->lpVtbl->GetPreferredClsid(This,subType,clsid);
+}
+static FORCEINLINE HRESULT IAMPluginControl_GetPreferredClsidByIndex(IAMPluginControl* This,DWORD index,GUID *subType,CLSID *clsid) {
+    return This->lpVtbl->GetPreferredClsidByIndex(This,index,subType,clsid);
+}
+static FORCEINLINE HRESULT IAMPluginControl_SetPreferredClsid(IAMPluginControl* This,REFGUID subType,const CLSID *clsid) {
+    return This->lpVtbl->SetPreferredClsid(This,subType,clsid);
+}
+static FORCEINLINE HRESULT IAMPluginControl_IsDisabled(IAMPluginControl* This,REFCLSID clsid) {
+    return This->lpVtbl->IsDisabled(This,clsid);
+}
+static FORCEINLINE HRESULT IAMPluginControl_GetDisabledByIndex(IAMPluginControl* This,DWORD index,CLSID *clsid) {
+    return This->lpVtbl->GetDisabledByIndex(This,index,clsid);
+}
+static FORCEINLINE HRESULT IAMPluginControl_SetDisabled(IAMPluginControl* This,REFCLSID clsid,WINBOOL disabled) {
+    return This->lpVtbl->SetDisabled(This,clsid,disabled);
+}
+static FORCEINLINE HRESULT IAMPluginControl_IsLegacyDisabled(IAMPluginControl* This,LPCWSTR dllName) {
+    return This->lpVtbl->IsLegacyDisabled(This,dllName);
+}
+#endif
+#endif
+
+#endif
+
+HRESULT STDMETHODCALLTYPE IAMPluginControl_GetPreferredClsid_Proxy(
+    IAMPluginControl* This,
+    REFGUID subType,
+    CLSID *clsid);
+void __RPC_STUB IAMPluginControl_GetPreferredClsid_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE IAMPluginControl_GetPreferredClsidByIndex_Proxy(
+    IAMPluginControl* This,
+    DWORD index,
+    GUID *subType,
+    CLSID *clsid);
+void __RPC_STUB IAMPluginControl_GetPreferredClsidByIndex_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE IAMPluginControl_SetPreferredClsid_Proxy(
+    IAMPluginControl* This,
+    REFGUID subType,
+    const CLSID *clsid);
+void __RPC_STUB IAMPluginControl_SetPreferredClsid_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE IAMPluginControl_IsDisabled_Proxy(
+    IAMPluginControl* This,
+    REFCLSID clsid);
+void __RPC_STUB IAMPluginControl_IsDisabled_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE IAMPluginControl_GetDisabledByIndex_Proxy(
+    IAMPluginControl* This,
+    DWORD index,
+    CLSID *clsid);
+void __RPC_STUB IAMPluginControl_GetDisabledByIndex_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE IAMPluginControl_SetDisabled_Proxy(
+    IAMPluginControl* This,
+    REFCLSID clsid,
+    WINBOOL disabled);
+void __RPC_STUB IAMPluginControl_SetDisabled_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+HRESULT STDMETHODCALLTYPE IAMPluginControl_IsLegacyDisabled_Proxy(
+    IAMPluginControl* This,
+    LPCWSTR dllName);
+void __RPC_STUB IAMPluginControl_IsLegacyDisabled_Stub(
+    IRpcStubBuffer* This,
+    IRpcChannelBuffer* pRpcChannelBuffer,
+    PRPC_MESSAGE pRpcMessage,
+    DWORD* pdwStubPhase);
+
+#endif  /* __IAMPluginControl_INTERFACE_DEFINED__ */
+
+#endif /*(_WIN32_WINNT >= 0x0601)*/
 #ifndef __IReferenceClock2_FWD_DEFINED__
 #define __IReferenceClock2_FWD_DEFINED__
 typedef struct IReferenceClock2 IReferenceClock2;
@@ -16496,79 +16827,6 @@ __CRT_UUID_DECL(IMpeg2Demultiplexer,0x436eee9c,0x264f,0x4242,0x90,0xe1,0x4e,0x33
   void __RPC_STUB IVPManager_GetVideoPortIndex_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
 #endif
 
-#if (_WIN32_WINNT >= 0x0601)
-#undef  INTERFACE
-#define INTERFACE IAMAsyncReaderTimestampScaling
-#ifdef __GNUC__
-#warning COM interfaces layout in this header has not been verified.
-#warning COM interfaces with incorrect layout may not work at all.
-__MINGW_BROKEN_INTERFACE(INTERFACE)
-#endif
-DECLARE_INTERFACE_(IAMAsyncReaderTimestampScaling,IUnknown)
-{
-    BEGIN_INTERFACE
-
-    /* IUnknown methods */
-    STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
-    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
-    STDMETHOD_(ULONG, Release)(THIS) PURE;
-
-    /* IAMAsyncReaderTimestampScaling methods */
-    STDMETHOD_(HRESULT,GetTimestampMode)(THIS_ WINBOOL *pfRaw) PURE;
-    STDMETHOD_(HRESULT,SetTimestampMode)(THIS_ WINBOOL fRaw) PURE;
-
-    END_INTERFACE
-};
-#ifdef COBJMACROS
-#define IAMAsyncReaderTimestampScaling_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
-#define IAMAsyncReaderTimestampScaling_AddRef(This) (This)->lpVtbl->AddRef(This)
-#define IAMAsyncReaderTimestampScaling_Release(This) (This)->lpVtbl->Release(This)
-#define IAMAsyncReaderTimestampScaling_GetTimestampMode(This,pfRaw) (This)->lpVtbl->GetTimestampMode(This,pfRaw)
-#define IAMAsyncReaderTimestampScaling_SetTimestampMode(This,fRaw) (This)->lpVtbl->SetTimestampMode(This,fRaw)
-#endif /*COBJMACROS*/
-
-#undef  INTERFACE
-#define INTERFACE IAMPluginControl
-#ifdef __GNUC__
-#warning COM interfaces layout in this header has not been verified.
-#warning COM interfaces with incorrect layout may not work at all.
-__MINGW_BROKEN_INTERFACE(INTERFACE)
-#endif
-DECLARE_INTERFACE_(IAMPluginControl,IUnknown)
-{
-    BEGIN_INTERFACE
-
-    /* IUnknown methods */
-    STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;
-    STDMETHOD_(ULONG, AddRef)(THIS) PURE;
-    STDMETHOD_(ULONG, Release)(THIS) PURE;
-
-    /* IAMPluginControl methods */
-    STDMETHOD_(HRESULT,GetDisabledByIndex)(THIS_ DWORD index,CLSID *clsid) PURE;
-    STDMETHOD_(HRESULT,GetPreferredClsid)(THIS_ REFGUID subType,CLSID *clsid) PURE;
-    STDMETHOD_(HRESULT,GetPreferredClsidByIndex)(THIS_ DWORD index,GUID *subType,CLSID *clsid) PURE;
-    STDMETHOD_(HRESULT,IsDisabled)(THIS_ REFCLSID clsid) PURE;
-    STDMETHOD_(HRESULT,IsLegacyDisabled)(THIS_ LPCWSTR dllName) PURE;
-    STDMETHOD_(HRESULT,SetDisabled)(THIS_ REFCLSID clsid,BOOL disabled) PURE;
-    STDMETHOD_(HRESULT,SetPreferredClsid)(THIS_ REFGUID subType,const CLSID *clsid) PURE;
-
-    END_INTERFACE
-};
-#ifdef COBJMACROS
-#define IAMPluginControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
-#define IAMPluginControl_AddRef(This) (This)->lpVtbl->AddRef(This)
-#define IAMPluginControl_Release(This) (This)->lpVtbl->Release(This)
-#define IAMPluginControl_GetDisabledByIndex(This,index,clsid) (This)->lpVtbl->GetDisabledByIndex(This,index,clsid)
-#define IAMPluginControl_GetPreferredClsid(This,subType,clsid) (This)->lpVtbl->GetPreferredClsid(This,subType,clsid)
-#define IAMPluginControl_GetPreferredClsidByIndex(This,index,subType,clsid) (This)->lpVtbl->GetPreferredClsidByIndex(This,index,subType,clsid)
-#define IAMPluginControl_IsDisabled(This,clsid) (This)->lpVtbl->IsDisabled(This,clsid)
-#define IAMPluginControl_IsLegacyDisabled(This,dllName) (This)->lpVtbl->IsLegacyDisabled(This,dllName)
-#define IAMPluginControl_SetDisabled(This,clsid,disabled) (This)->lpVtbl->SetDisabled(This,clsid,disabled)
-#define IAMPluginControl_SetPreferredClsid(This,subType,clsid) (This)->lpVtbl->SetPreferredClsid(This,subType,clsid)
-#endif /*COBJMACROS*/
-
-#endif /*(_WIN32_WINNT >= 0x0601)*/
-
   extern RPC_IF_HANDLE __MIDL_itf_strmif_0413_v0_0_c_ifspec;
   extern RPC_IF_HANDLE __MIDL_itf_strmif_0413_v0_0_s_ifspec;
 /* Begin additional prototypes for all interfaces */
diff --git a/mingw-w64-headers/include/strmif.idl b/mingw-w64-headers/include/strmif.idl
index e87ae2a..d68f8a7 100644
--- a/mingw-w64-headers/include/strmif.idl
+++ b/mingw-w64-headers/include/strmif.idl
@@ -5992,78 +5992,5 @@ cpp_quote("  HRESULT WINAPI IVPManager_GetVideoPortIndex_Proxy(IVPManager *This,
 cpp_quote("  void __RPC_STUB IVPManager_GetVideoPortIndex_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);")
 cpp_quote("#endif")
 cpp_quote("")
-cpp_quote("#if (_WIN32_WINNT >= 0x0601)")
-cpp_quote("#undef  INTERFACE")
-cpp_quote("#define INTERFACE IAMAsyncReaderTimestampScaling")
-cpp_quote("#ifdef __GNUC__")
-cpp_quote("#warning COM interfaces layout in this header has not been verified.")
-cpp_quote("#warning COM interfaces with incorrect layout may not work at all.")
-cpp_quote("__MINGW_BROKEN_INTERFACE(INTERFACE)")
-cpp_quote("#endif")
-cpp_quote("DECLARE_INTERFACE_(IAMAsyncReaderTimestampScaling,IUnknown)")
-cpp_quote("{")
-cpp_quote("    BEGIN_INTERFACE")
-cpp_quote("")
-cpp_quote("    /* IUnknown methods */")
-cpp_quote("    STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;")
-cpp_quote("    STDMETHOD_(ULONG, AddRef)(THIS) PURE;")
-cpp_quote("    STDMETHOD_(ULONG, Release)(THIS) PURE;")
-cpp_quote("")
-cpp_quote("    /* IAMAsyncReaderTimestampScaling methods */")
-cpp_quote("    STDMETHOD_(HRESULT,GetTimestampMode)(THIS_ WINBOOL *pfRaw) PURE;")
-cpp_quote("    STDMETHOD_(HRESULT,SetTimestampMode)(THIS_ WINBOOL fRaw) PURE;")
-cpp_quote("")
-cpp_quote("    END_INTERFACE")
-cpp_quote("};")
-cpp_quote("#ifdef COBJMACROS")
-cpp_quote("#define IAMAsyncReaderTimestampScaling_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
-cpp_quote("#define IAMAsyncReaderTimestampScaling_AddRef(This) (This)->lpVtbl->AddRef(This)")
-cpp_quote("#define IAMAsyncReaderTimestampScaling_Release(This) (This)->lpVtbl->Release(This)")
-cpp_quote("#define IAMAsyncReaderTimestampScaling_GetTimestampMode(This,pfRaw) (This)->lpVtbl->GetTimestampMode(This,pfRaw)")
-cpp_quote("#define IAMAsyncReaderTimestampScaling_SetTimestampMode(This,fRaw) (This)->lpVtbl->SetTimestampMode(This,fRaw)")
-cpp_quote("#endif /*COBJMACROS*/")
-cpp_quote("")
-cpp_quote("#undef  INTERFACE")
-cpp_quote("#define INTERFACE IAMPluginControl")
-cpp_quote("#ifdef __GNUC__")
-cpp_quote("#warning COM interfaces layout in this header has not been verified.")
-cpp_quote("#warning COM interfaces with incorrect layout may not work at all.")
-cpp_quote("__MINGW_BROKEN_INTERFACE(INTERFACE)")
-cpp_quote("#endif")
-cpp_quote("DECLARE_INTERFACE_(IAMPluginControl,IUnknown)")
-cpp_quote("{")
-cpp_quote("    BEGIN_INTERFACE")
-cpp_quote("")
-cpp_quote("    /* IUnknown methods */")
-cpp_quote("    STDMETHOD(QueryInterface)(THIS_ REFIID riid, void **ppvObject) PURE;")
-cpp_quote("    STDMETHOD_(ULONG, AddRef)(THIS) PURE;")
-cpp_quote("    STDMETHOD_(ULONG, Release)(THIS) PURE;")
-cpp_quote("")
-cpp_quote("    /* IAMPluginControl methods */")
-cpp_quote("    STDMETHOD_(HRESULT,GetDisabledByIndex)(THIS_ DWORD index,CLSID *clsid) PURE;")
-cpp_quote("    STDMETHOD_(HRESULT,GetPreferredClsid)(THIS_ REFGUID subType,CLSID *clsid) PURE;")
-cpp_quote("    STDMETHOD_(HRESULT,GetPreferredClsidByIndex)(THIS_ DWORD index,GUID *subType,CLSID *clsid) PURE;")
-cpp_quote("    STDMETHOD_(HRESULT,IsDisabled)(THIS_ REFCLSID clsid) PURE;")
-cpp_quote("    STDMETHOD_(HRESULT,IsLegacyDisabled)(THIS_ LPCWSTR dllName) PURE;")
-cpp_quote("    STDMETHOD_(HRESULT,SetDisabled)(THIS_ REFCLSID clsid,BOOL disabled) PURE;")
-cpp_quote("    STDMETHOD_(HRESULT,SetPreferredClsid)(THIS_ REFGUID subType,const CLSID *clsid) PURE;")
-cpp_quote("")
-cpp_quote("    END_INTERFACE")
-cpp_quote("};")
-cpp_quote("#ifdef COBJMACROS")
-cpp_quote("#define IAMPluginControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)")
-cpp_quote("#define IAMPluginControl_AddRef(This) (This)->lpVtbl->AddRef(This)")
-cpp_quote("#define IAMPluginControl_Release(This) (This)->lpVtbl->Release(This)")
-cpp_quote("#define IAMPluginControl_GetDisabledByIndex(This,index,clsid) (This)->lpVtbl->GetDisabledByIndex(This,index,clsid)")
-cpp_quote("#define IAMPluginControl_GetPreferredClsid(This,subType,clsid) (This)->lpVtbl->GetPreferredClsid(This,subType,clsid)")
-cpp_quote("#define IAMPluginControl_GetPreferredClsidByIndex(This,index,subType,clsid) (This)->lpVtbl->GetPreferredClsidByIndex(This,index,subType,clsid)")
-cpp_quote("#define IAMPluginControl_IsDisabled(This,clsid) (This)->lpVtbl->IsDisabled(This,clsid)")
-cpp_quote("#define IAMPluginControl_IsLegacyDisabled(This,dllName) (This)->lpVtbl->IsLegacyDisabled(This,dllName)")
-cpp_quote("#define IAMPluginControl_SetDisabled(This,clsid,disabled) (This)->lpVtbl->SetDisabled(This,clsid,disabled)")
-cpp_quote("#define IAMPluginControl_SetPreferredClsid(This,subType,clsid) (This)->lpVtbl->SetPreferredClsid(This,subType,clsid)")
-cpp_quote("#endif /*COBJMACROS*/")
-cpp_quote("")
-cpp_quote("#endif /*(_WIN32_WINNT >= 0x0601)*/")
-cpp_quote("")
 cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_strmif_0413_v0_0_c_ifspec;")
 cpp_quote("  extern RPC_IF_HANDLE __MIDL_itf_strmif_0413_v0_0_s_ifspec;")
------------------------------------------------------------------------------
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to