Signed-off-by: Jacek Caban <[email protected]>
---

The history of separated dir predates my involvement in the project, so I can only guess original reasoning. Those days WindowsSDK includes and depends on DX headers, so keeping it as an optional "SDK" does not seem sensible. This patch moves files and does minimal makefile/configure change to support that. I will remove remaining build system bits as a follow up, if we agree on this one.

This cleans up and simplifies the code base.

There were a few duplicates between directories already. I kept direct-x/ dir versions of those (that's what ended up installed in my case before the change).

Please review.

Thanks,
Jacek


 mingw-w64-headers/Makefile.am                 |  63 +-
 mingw-w64-headers/configure.ac                |   3 +-
 mingw-w64-headers/direct-x/include/audevcod.h |  44 -
 mingw-w64-headers/direct-x/include/mediaobj.h | 791 ------------------
 .../direct-x/include/mediaobj.idl             | 254 ------
 .../{direct-x => }/include/_mingw_dxhelper.h  |   0
 .../{direct-x => }/include/amaudio.h          |   0
 .../{direct-x => }/include/amstream.h         |   2 +-
 .../{direct-x => }/include/amstream.idl       |   0
 .../{direct-x => }/include/amvideo.h          |   2 +-
 .../{direct-x => }/include/amvideo.idl        |   0
 mingw-w64-headers/include/audevcod.h          |  65 +-
 .../{direct-x => }/include/austream.h         |   2 +-
 .../{direct-x => }/include/austream.idl       |   0
 .../{direct-x => }/include/d3d.h              |   0
 .../{direct-x => }/include/d3d10.h            |   2 +-
 .../{direct-x => }/include/d3d10.idl          |   0
 .../{direct-x => }/include/d3d10_1.h          |   2 +-
 .../{direct-x => }/include/d3d10_1.idl        |   0
 .../{direct-x => }/include/d3d10_1shader.h    |   0
 .../{direct-x => }/include/d3d10effect.h      |   0
 .../{direct-x => }/include/d3d10misc.h        |   0
 .../{direct-x => }/include/d3d10sdklayers.h   |   2 +-
 .../{direct-x => }/include/d3d10sdklayers.idl |   0
 .../{direct-x => }/include/d3d10shader.h      |   0
 .../{direct-x => }/include/d3d11.h            |   2 +-
 .../{direct-x => }/include/d3d11.idl          |   0
 .../{direct-x => }/include/d3d11_1.h          |   2 +-
 .../{direct-x => }/include/d3d11_1.idl        |   0
 .../{direct-x => }/include/d3d11_2.h          |   2 +-
 .../{direct-x => }/include/d3d11_2.idl        |   0
 .../{direct-x => }/include/d3d11_3.h          |   2 +-
 .../{direct-x => }/include/d3d11_3.idl        |   0
 .../{direct-x => }/include/d3d11_4.h          |   2 +-
 .../{direct-x => }/include/d3d11_4.idl        |   0
 .../{direct-x => }/include/d3d11sdklayers.h   |   2 +-
 .../{direct-x => }/include/d3d11sdklayers.idl |   0
 .../{direct-x => }/include/d3d11shader.h      |   0
 .../{direct-x => }/include/d3d8.h             |   0
 .../{direct-x => }/include/d3d8caps.h         |   0
 .../{direct-x => }/include/d3d8types.h        |   0
 .../{direct-x => }/include/d3d9.h             |   0
 .../{direct-x => }/include/d3d9caps.h         |   0
 .../{direct-x => }/include/d3d9types.h        |   0
 .../{direct-x => }/include/d3dcaps.h          |   0
 .../{direct-x => }/include/d3dcommon.h        |   2 +-
 .../{direct-x => }/include/d3dcommon.idl      |   0
 .../{direct-x => }/include/d3dcompiler.h      |   0
 .../{direct-x => }/include/d3dhal.h           |   0
 .../{direct-x => }/include/d3drm.h            |   0
 .../{direct-x => }/include/d3drmdef.h         |   0
 .../{direct-x => }/include/d3drmobj.h         |   0
 .../{direct-x => }/include/d3dtypes.h         |   0
 .../{direct-x => }/include/d3dvec.inl         |   0
 .../{direct-x => }/include/d3dx9.h            |   0
 .../{direct-x => }/include/d3dx9anim.h        |   0
 .../{direct-x => }/include/d3dx9core.h        |   0
 .../{direct-x => }/include/d3dx9effect.h      |   0
 .../{direct-x => }/include/d3dx9math.h        |   0
 .../{direct-x => }/include/d3dx9math.inl      |   0
 .../{direct-x => }/include/d3dx9mesh.h        |   0
 .../{direct-x => }/include/d3dx9shader.h      |   0
 .../{direct-x => }/include/d3dx9shape.h       |   0
 .../{direct-x => }/include/d3dx9tex.h         |   0
 .../{direct-x => }/include/d3dx9xof.h         |   0
 .../{direct-x => }/include/ddraw.h            |   0
 .../{direct-x => }/include/ddrawi.h           |   0
 .../{direct-x => }/include/ddstream.h         |   2 +-
 .../{direct-x => }/include/ddstream.idl       |   0
 .../{direct-x => }/include/dinput.h           |   0
 .../{direct-x => }/include/dls1.h             |   0
 .../{direct-x => }/include/dls2.h             |   0
 .../{direct-x => }/include/dmdls.h            |   0
 .../{direct-x => }/include/dmerror.h          |   0
 .../{direct-x => }/include/dmo.h              |   0
 .../{direct-x => }/include/dmodshow.h         |   0
 .../{direct-x => }/include/dmodshow.idl       |   0
 .../{direct-x => }/include/dmoreg.h           |   0
 .../{direct-x => }/include/dmort.h            |   0
 .../{direct-x => }/include/dmplugin.h         |   0
 .../{direct-x => }/include/dmusbuff.h         |   0
 .../{direct-x => }/include/dmusicc.h          |   0
 .../{direct-x => }/include/dmusicf.h          |   0
 .../{direct-x => }/include/dmusici.h          |   0
 .../{direct-x => }/include/dmusics.h          |   0
 .../{direct-x => }/include/dpaddr.h           |   0
 .../{direct-x => }/include/dplay.h            |   0
 .../{direct-x => }/include/dplay8.h           |   0
 .../{direct-x => }/include/dplobby.h          |   0
 .../{direct-x => }/include/dplobby8.h         |   0
 .../{direct-x => }/include/dpnathlp.h         |   0
 .../{direct-x => }/include/dsconf.h           |   0
 .../{direct-x => }/include/dsdriver.h         |   0
 .../{direct-x => }/include/dshow.h            |   0
 .../{direct-x => }/include/dsound.h           |   0
 .../{direct-x => }/include/dvdevcod.h         |   0
 .../{direct-x => }/include/dvdmedia.h         |   0
 .../{direct-x => }/include/dxdiag.h           |   0
 .../{direct-x => }/include/dxerr8.h           |   0
 .../{direct-x => }/include/dxerr9.h           |   0
 .../{direct-x => }/include/dxfile.h           |   0
 .../{direct-x => }/include/dxgi.h             |   2 +-
 .../{direct-x => }/include/dxgi.idl           |   0
 .../{direct-x => }/include/dxgi1_2.h          |   2 +-
 .../{direct-x => }/include/dxgi1_2.idl        |   0
 .../{direct-x => }/include/dxgi1_3.h          |   2 +-
 .../{direct-x => }/include/dxgi1_3.idl        |   0
 .../{direct-x => }/include/dxgi1_4.h          |   2 +-
 .../{direct-x => }/include/dxgi1_4.idl        |   0
 .../{direct-x => }/include/dxgi1_5.h          |   2 +-
 .../{direct-x => }/include/dxgi1_5.idl        |   0
 .../{direct-x => }/include/dxgi1_6.h          |   2 +-
 .../{direct-x => }/include/dxgi1_6.idl        |   0
 .../{direct-x => }/include/dxgicommon.h       |   2 +-
 .../{direct-x => }/include/dxgicommon.idl     |   0
 .../{direct-x => }/include/dxgiformat.h       |   2 +-
 .../{direct-x => }/include/dxgiformat.idl     |   0
 .../{direct-x => }/include/dxgitype.h         |   2 +-
 .../{direct-x => }/include/dxgitype.idl       |   0
 .../{direct-x => }/include/edevdefs.h         |   0
 .../{direct-x => }/include/errors.h           |   0
 .../{direct-x => }/include/evcode.h           |   0
 .../{direct-x => }/include/mediaerr.h         |   0
 mingw-w64-headers/include/mediaobj.h          | 549 +++---------
 mingw-w64-headers/include/mediaobj.idl        | 389 +++++----
 .../{direct-x => }/include/medparam.h         |   0
 .../{direct-x => }/include/medparam.idl       |   0
 .../{direct-x => }/include/mmstream.h         |   2 +-
 .../{direct-x => }/include/mmstream.idl       |   0
 .../{direct-x => }/include/qedit.h            |   2 +-
 .../{direct-x => }/include/qedit.idl          |   0
 .../{direct-x => }/include/qnetwork.h         |   0
 .../{direct-x => }/include/qnetwork.idl       |   0
 .../{direct-x => }/include/vfwmsgs.h          |   0
 .../{direct-x => }/include/vmr9.h             |   0
 .../{direct-x => }/include/vmr9.idl           |   0
 .../{direct-x => }/include/xinput.h           |   0
 mingw-w64-headers/wine-import.sh              | 104 ++-
 138 files changed, 510 insertions(+), 1802 deletions(-)
 delete mode 100644 mingw-w64-headers/direct-x/include/audevcod.h
 delete mode 100644 mingw-w64-headers/direct-x/include/mediaobj.h
 delete mode 100644 mingw-w64-headers/direct-x/include/mediaobj.idl
 rename mingw-w64-headers/{direct-x => }/include/_mingw_dxhelper.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/amaudio.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/amstream.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/amstream.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/amvideo.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/amvideo.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/austream.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/austream.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d10.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/d3d10.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d10_1.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/d3d10_1.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d10_1shader.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d10effect.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d10misc.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d10sdklayers.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/d3d10sdklayers.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d10shader.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d11.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/d3d11.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d11_1.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/d3d11_1.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d11_2.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/d3d11_2.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d11_3.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/d3d11_3.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d11_4.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/d3d11_4.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d11sdklayers.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/d3d11sdklayers.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d11shader.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d8.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d8caps.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d8types.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d9.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d9caps.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3d9types.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3dcaps.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3dcommon.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/d3dcommon.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3dcompiler.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3dhal.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3drm.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3drmdef.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3drmobj.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3dtypes.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3dvec.inl (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3dx9.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3dx9anim.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3dx9core.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3dx9effect.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3dx9math.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3dx9math.inl (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3dx9mesh.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3dx9shader.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3dx9shape.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3dx9tex.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/d3dx9xof.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/ddraw.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/ddrawi.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/ddstream.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/ddstream.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/dinput.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dls1.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dls2.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dmdls.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dmerror.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dmo.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dmodshow.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dmodshow.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/dmoreg.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dmort.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dmplugin.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dmusbuff.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dmusicc.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dmusicf.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dmusici.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dmusics.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dpaddr.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dplay.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dplay8.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dplobby.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dplobby8.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dpnathlp.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dsconf.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dsdriver.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dshow.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dsound.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dvdevcod.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dvdmedia.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dxdiag.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dxerr8.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dxerr9.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dxfile.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/dxgi.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/dxgi.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/dxgi1_2.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/dxgi1_2.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/dxgi1_3.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/dxgi1_3.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/dxgi1_4.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/dxgi1_4.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/dxgi1_5.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/dxgi1_5.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/dxgi1_6.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/dxgi1_6.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/dxgicommon.h (95%)
 rename mingw-w64-headers/{direct-x => }/include/dxgicommon.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/dxgiformat.h (98%)
 rename mingw-w64-headers/{direct-x => }/include/dxgiformat.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/dxgitype.h (96%)
 rename mingw-w64-headers/{direct-x => }/include/dxgitype.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/edevdefs.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/errors.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/evcode.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/mediaerr.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/medparam.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/medparam.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/mmstream.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/mmstream.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/qedit.h (99%)
 rename mingw-w64-headers/{direct-x => }/include/qedit.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/qnetwork.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/qnetwork.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/vfwmsgs.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/vmr9.h (100%)
 rename mingw-w64-headers/{direct-x => }/include/vmr9.idl (100%)
 rename mingw-w64-headers/{direct-x => }/include/xinput.h (100%)


diff --git a/mingw-w64-headers/Makefile.am b/mingw-w64-headers/Makefile.am
index c97aa9f6..16825317 100644
--- a/mingw-w64-headers/Makefile.am
+++ b/mingw-w64-headers/Makefile.am
@@ -48,6 +48,7 @@ EXTRA_HEADERS = \
   include/*.h16 \
   include/*.hxx \
   include/*.idl \
+  include/*.inl \
   include/*.rh \
   include/*.ver \
   include/GL/*.h \
@@ -76,24 +77,48 @@ IDL_SRCS = \
   include/activscp.idl \
   include/adhoc.idl \
   include/alg.idl \
+  include/amstream.idl \
+  include/amvideo.idl \
   include/audioclient.idl \
   include/audioendpoints.idl \
   include/audiopolicy.idl \
+  include/austream.idl \
   include/bdaiface.idl \
   include/comadmin.idl \
   include/commoncontrols.idl \
   include/control.idl \
   include/ctfutb.idl \
+  include/d3d10.idl \
+  include/d3d10_1.idl \
+  include/d3d10sdklayers.idl \
+  include/d3d11.idl \
+  include/d3d11_1.idl \
+  include/d3d11_2.idl \
+  include/d3d11_3.idl \
+  include/d3d11_4.idl \
+  include/d3d11sdklayers.idl \
+  include/d3dcommon.idl \
   include/dbgprop.idl \
   include/dcompanimation.idl \
+  include/ddstream.idl \
   include/dimm.idl \
   include/dispex.idl \
+  include/dmodshow.idl \
   include/docobj.idl \
   include/docobjectservice.idl \
   include/documenttarget.idl \
   include/devicetopology.idl \
   include/downloadmgr.idl \
   include/drmexternals.idl \
+  include/dxgi.idl \
+  include/dxgi1_2.idl \
+  include/dxgi1_3.idl \
+  include/dxgi1_4.idl \
+  include/dxgi1_5.idl \
+  include/dxgi1_6.idl \
+  include/dxgicommon.idl \
+  include/dxgiformat.idl \
+  include/dxgitype.idl \
   include/dxva2api.idl \
   include/endpointvolume.idl \
   include/evr.idl \
@@ -177,6 +202,12 @@ IDL_SRCS = \
   include/wbemprov.idl \
   include/wbemtran.idl \
   include/wdstptmgmt.idl \
+  include/mediaobj.idl \
+  include/medparam.idl \
+  include/mmstream.idl \
+  include/qedit.idl \
+  include/qnetwork.idl \
+  include/vmr9.idl \
   include/wincodec.idl \
   include/wmcontainer.idl \
   include/wmsbuffer.idl \
@@ -204,37 +235,7 @@ IDL_SRCS = \
   include/xpsobjectmodel_1.idl \
   include/xpsrassvc.idl \
   include/xpsobjectmodel.idl \
-  include/xpsprint.idl \
-  direct-x/include/amstream.idl \
-  direct-x/include/amvideo.idl \
-  direct-x/include/austream.idl \
-  direct-x/include/d3d10.idl \
-  direct-x/include/d3d10_1.idl \
-  direct-x/include/d3d10sdklayers.idl \
-  direct-x/include/d3d11.idl \
-  direct-x/include/d3d11_1.idl \
-  direct-x/include/d3d11_2.idl \
-  direct-x/include/d3d11_3.idl \
-  direct-x/include/d3d11_4.idl \
-  direct-x/include/d3d11sdklayers.idl \
-  direct-x/include/d3dcommon.idl \
-  direct-x/include/ddstream.idl \
-  direct-x/include/dmodshow.idl \
-  direct-x/include/dxgi.idl \
-  direct-x/include/dxgi1_2.idl \
-  direct-x/include/dxgi1_3.idl \
-  direct-x/include/dxgi1_4.idl \
-  direct-x/include/dxgi1_5.idl \
-  direct-x/include/dxgi1_6.idl \
-  direct-x/include/dxgicommon.idl \
-  direct-x/include/dxgiformat.idl \
-  direct-x/include/dxgitype.idl \
-  direct-x/include/mediaobj.idl \
-  direct-x/include/medparam.idl \
-  direct-x/include/mmstream.idl \
-  direct-x/include/qedit.idl \
-  direct-x/include/qnetwork.idl \
-  direct-x/include/vmr9.idl
+  include/xpsprint.idl
 
 TLB_SRCS = \
   tlb/oleacc.idl \
diff --git a/mingw-w64-headers/configure.ac b/mingw-w64-headers/configure.ac
index 965d0038..010ca099 100644
--- a/mingw-w64-headers/configure.ac
+++ b/mingw-w64-headers/configure.ac
@@ -41,7 +41,7 @@ AM_CONDITIONAL([HAVE_WIDL],[AS_VAR_TEST_SET([WIDL])])
 
 BASEHEAD_LIST="crt/_bsd_types.h crt/_cygwin.h crt/_mingw.h crt/_mingw_mac.h crt/_mingw_secapi.h crt/_mingw_unicode.h crt/_timeval.h crt/crtdefs.h crt/corecrt.h crt/excpt.h crt/intrin.h crt/vadefs.h crt/tchar.h "$srcdir/include/*.h
 SECHEAD_LIST="$srcdir/crt/sec_api/stralign_s.h"
-for i in c dlg h16 hxx rh ver; do
+for i in c inl dlg h16 hxx rh ver; do
   BASEHEAD_LIST="$BASEHEAD_LIST "$srcdir/include/*.$i
 done
 #FIXME: Add in base directx
@@ -113,7 +113,6 @@ AS_CASE([$enable_sdk],
 AC_MSG_RESULT([$enable_sdk])
 
 AS_VAR_IF([enable_directx],[yes],[
-    DXHEAD_LIST=$srcdir/direct-x/include/*.[[hi]]*
     MINGW_HAS_DX=1
   ],[
     MINGW_HAS_DX=0
diff --git a/mingw-w64-headers/direct-x/include/audevcod.h b/mingw-w64-headers/direct-x/include/audevcod.h
deleted file mode 100644
index 116f1a8a..00000000
--- a/mingw-w64-headers/direct-x/include/audevcod.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (C) 2002 Alexandre Julliard
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-#ifndef __AUDEVCOD__
-#define __AUDEVCOD__
-
-typedef enum _tagSND_DEVICE_ERROR
-{
-    SNDDEV_ERROR_Open=1,
-    SNDDEV_ERROR_Close=2,
-    SNDDEV_ERROR_GetCaps=3,
-    SNDDEV_ERROR_PrepareHeader=4,
-    SNDDEV_ERROR_UnprepareHeader=5,
-    SNDDEV_ERROR_Reset=6,
-    SNDDEV_ERROR_Restart=7,
-    SNDDEV_ERROR_GetPosition=8,
-    SNDDEV_ERROR_Write=9,
-    SNDDEV_ERROR_Pause=10,
-    SNDDEV_ERROR_Stop=11,
-    SNDDEV_ERROR_Start=12,
-    SNDDEV_ERROR_AddBuffer=13,
-    SNDDEV_ERROR_Query=14
-} SNDDEV_ERR;
-
-#define EC_SND_DEVICE_ERROR_BASE 0x0200
-#define EC_SNDDEV_IN_ERROR       (EC_SND_DEVICE_ERROR_BASE+0x00)
-#define EC_SNDDEV_OUT_ERROR      (EC_SND_DEVICE_ERROR_BASE+0x01)
-
-#endif  /* __AUDEVCOD__ */
diff --git a/mingw-w64-headers/direct-x/include/mediaobj.h b/mingw-w64-headers/direct-x/include/mediaobj.h
deleted file mode 100644
index 28d8a406..00000000
--- a/mingw-w64-headers/direct-x/include/mediaobj.h
+++ /dev/null
@@ -1,791 +0,0 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/mediaobj.idl - Do not edit ***/
-
-#ifdef _WIN32
-#ifndef __REQUIRED_RPCNDR_H_VERSION__
-#define __REQUIRED_RPCNDR_H_VERSION__ 475
-#endif
-#include <rpc.h>
-#include <rpcndr.h>
-#endif
-
-#ifndef COM_NO_WINDOWS_H
-#include <windows.h>
-#include <ole2.h>
-#endif
-
-#ifndef __mediaobj_h__
-#define __mediaobj_h__
-
-/* Forward declarations */
-
-#ifndef __IEnumDMO_FWD_DEFINED__
-#define __IEnumDMO_FWD_DEFINED__
-typedef interface IEnumDMO IEnumDMO;
-#ifdef __cplusplus
-interface IEnumDMO;
-#endif /* __cplusplus */
-#endif
-
-#ifndef __IMediaBuffer_FWD_DEFINED__
-#define __IMediaBuffer_FWD_DEFINED__
-typedef interface IMediaBuffer IMediaBuffer;
-#ifdef __cplusplus
-interface IMediaBuffer;
-#endif /* __cplusplus */
-#endif
-
-#ifndef __IMediaObject_FWD_DEFINED__
-#define __IMediaObject_FWD_DEFINED__
-typedef interface IMediaObject IMediaObject;
-#ifdef __cplusplus
-interface IMediaObject;
-#endif /* __cplusplus */
-#endif
-
-#ifndef __IMediaObjectInPlace_FWD_DEFINED__
-#define __IMediaObjectInPlace_FWD_DEFINED__
-typedef interface IMediaObjectInPlace IMediaObjectInPlace;
-#ifdef __cplusplus
-interface IMediaObjectInPlace;
-#endif /* __cplusplus */
-#endif
-
-/* Headers for imported files */
-
-#include <unknwn.h>
-#include <objidl.h>
-#include <strmif.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#ifndef __IDMOQualityControl_FWD_DEFINED__
-#define __IDMOQualityControl_FWD_DEFINED__
-typedef interface IDMOQualityControl IDMOQualityControl;
-#ifdef __cplusplus
-interface IDMOQualityControl;
-#endif /* __cplusplus */
-#endif
-
-#ifndef __IDMOVideoOutputOptimizations_FWD_DEFINED__
-#define __IDMOVideoOutputOptimizations_FWD_DEFINED__
-typedef interface IDMOVideoOutputOptimizations IDMOVideoOutputOptimizations;
-#ifdef __cplusplus
-interface IDMOVideoOutputOptimizations;
-#endif /* __cplusplus */
-#endif
-
-typedef struct _DMOMediaType {
-    GUID majortype;
-    GUID subtype;
-    WINBOOL bFixedSizeSamples;
-    WINBOOL bTemporalCompression;
-    ULONG lSampleSize;
-    GUID formattype;
-    IUnknown *pUnk;
-    ULONG cbFormat;
-    BYTE *pbFormat;
-} DMO_MEDIA_TYPE;
-/*****************************************************************************
- * IEnumDMO interface
- */
-#ifndef __IEnumDMO_INTERFACE_DEFINED__
-#define __IEnumDMO_INTERFACE_DEFINED__
-
-DEFINE_GUID(IID_IEnumDMO, 0x2c3cd98a, 0x2bfa, 0x4a53, 0x9c,0x27, 0x52,0x49,0xba,0x64,0xba,0x0f);
-#if defined(__cplusplus) && !defined(CINTERFACE)
-MIDL_INTERFACE("2c3cd98a-2bfa-4a53-9c27-5249ba64ba0f")
-IEnumDMO : public IUnknown
-{
-    virtual HRESULT STDMETHODCALLTYPE Next(
-        DWORD cItemsToFetch,
-        CLSID *pCLSID,
-        WCHAR **Names,
-        DWORD *pcItemsFetched) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE Skip(
-        DWORD cItemsToSkip) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE Reset(
-        ) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE Clone(
-        IEnumDMO **ppEnum) = 0;
-
-};
-#ifdef __CRT_UUID_DECL
-__CRT_UUID_DECL(IEnumDMO, 0x2c3cd98a, 0x2bfa, 0x4a53, 0x9c,0x27, 0x52,0x49,0xba,0x64,0xba,0x0f)
-#endif
-#else
-typedef struct IEnumDMOVtbl {
-    BEGIN_INTERFACE
-
-    /*** IUnknown methods ***/
-    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
-        IEnumDMO *This,
-        REFIID riid,
-        void **ppvObject);
-
-    ULONG (STDMETHODCALLTYPE *AddRef)(
-        IEnumDMO *This);
-
-    ULONG (STDMETHODCALLTYPE *Release)(
-        IEnumDMO *This);
-
-    /*** IEnumDMO methods ***/
-    HRESULT (STDMETHODCALLTYPE *Next)(
-        IEnumDMO *This,
-        DWORD cItemsToFetch,
-        CLSID *pCLSID,
-        WCHAR **Names,
-        DWORD *pcItemsFetched);
-
-    HRESULT (STDMETHODCALLTYPE *Skip)(
-        IEnumDMO *This,
-        DWORD cItemsToSkip);
-
-    HRESULT (STDMETHODCALLTYPE *Reset)(
-        IEnumDMO *This);
-
-    HRESULT (STDMETHODCALLTYPE *Clone)(
-        IEnumDMO *This,
-        IEnumDMO **ppEnum);
-
-    END_INTERFACE
-} IEnumDMOVtbl;
-
-interface IEnumDMO {
-    CONST_VTBL IEnumDMOVtbl* lpVtbl;
-};
-
-#ifdef COBJMACROS
-#ifndef WIDL_C_INLINE_WRAPPERS
-/*** IUnknown methods ***/
-#define IEnumDMO_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
-#define IEnumDMO_AddRef(This) (This)->lpVtbl->AddRef(This)
-#define IEnumDMO_Release(This) (This)->lpVtbl->Release(This)
-/*** IEnumDMO methods ***/
-#define IEnumDMO_Next(This,cItemsToFetch,pCLSID,Names,pcItemsFetched) (This)->lpVtbl->Next(This,cItemsToFetch,pCLSID,Names,pcItemsFetched)
-#define IEnumDMO_Skip(This,cItemsToSkip) (This)->lpVtbl->Skip(This,cItemsToSkip)
-#define IEnumDMO_Reset(This) (This)->lpVtbl->Reset(This)
-#define IEnumDMO_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
-#else
-/*** IUnknown methods ***/
-static FORCEINLINE HRESULT IEnumDMO_QueryInterface(IEnumDMO* This,REFIID riid,void **ppvObject) {
-    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
-}
-static FORCEINLINE ULONG IEnumDMO_AddRef(IEnumDMO* This) {
-    return This->lpVtbl->AddRef(This);
-}
-static FORCEINLINE ULONG IEnumDMO_Release(IEnumDMO* This) {
-    return This->lpVtbl->Release(This);
-}
-/*** IEnumDMO methods ***/
-static FORCEINLINE HRESULT IEnumDMO_Next(IEnumDMO* This,DWORD cItemsToFetch,CLSID *pCLSID,WCHAR **Names,DWORD *pcItemsFetched) {
-    return This->lpVtbl->Next(This,cItemsToFetch,pCLSID,Names,pcItemsFetched);
-}
-static FORCEINLINE HRESULT IEnumDMO_Skip(IEnumDMO* This,DWORD cItemsToSkip) {
-    return This->lpVtbl->Skip(This,cItemsToSkip);
-}
-static FORCEINLINE HRESULT IEnumDMO_Reset(IEnumDMO* This) {
-    return This->lpVtbl->Reset(This);
-}
-static FORCEINLINE HRESULT IEnumDMO_Clone(IEnumDMO* This,IEnumDMO **ppEnum) {
-    return This->lpVtbl->Clone(This,ppEnum);
-}
-#endif
-#endif
-
-#endif
-
-
-#endif  /* __IEnumDMO_INTERFACE_DEFINED__ */
-
-/*****************************************************************************
- * IMediaBuffer interface
- */
-#ifndef __IMediaBuffer_INTERFACE_DEFINED__
-#define __IMediaBuffer_INTERFACE_DEFINED__
-
-DEFINE_GUID(IID_IMediaBuffer, 0x59eff8b9, 0x938c, 0x4a26, 0x82,0xf2, 0x95,0xcb,0x84,0xcd,0xc8,0x37);
-#if defined(__cplusplus) && !defined(CINTERFACE)
-MIDL_INTERFACE("59eff8b9-938c-4a26-82f2-95cb84cdc837")
-IMediaBuffer : public IUnknown
-{
-    virtual HRESULT STDMETHODCALLTYPE SetLength(
-        DWORD cbLength) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE GetMaxLength(
-        DWORD *pcbMaxLength) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE GetBufferAndLength(
-        BYTE **ppBuffer,
-        DWORD *pcbLength) = 0;
-
-};
-#ifdef __CRT_UUID_DECL
-__CRT_UUID_DECL(IMediaBuffer, 0x59eff8b9, 0x938c, 0x4a26, 0x82,0xf2, 0x95,0xcb,0x84,0xcd,0xc8,0x37)
-#endif
-#else
-typedef struct IMediaBufferVtbl {
-    BEGIN_INTERFACE
-
-    /*** IUnknown methods ***/
-    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
-        IMediaBuffer *This,
-        REFIID riid,
-        void **ppvObject);
-
-    ULONG (STDMETHODCALLTYPE *AddRef)(
-        IMediaBuffer *This);
-
-    ULONG (STDMETHODCALLTYPE *Release)(
-        IMediaBuffer *This);
-
-    /*** IMediaBuffer methods ***/
-    HRESULT (STDMETHODCALLTYPE *SetLength)(
-        IMediaBuffer *This,
-        DWORD cbLength);
-
-    HRESULT (STDMETHODCALLTYPE *GetMaxLength)(
-        IMediaBuffer *This,
-        DWORD *pcbMaxLength);
-
-    HRESULT (STDMETHODCALLTYPE *GetBufferAndLength)(
-        IMediaBuffer *This,
-        BYTE **ppBuffer,
-        DWORD *pcbLength);
-
-    END_INTERFACE
-} IMediaBufferVtbl;
-
-interface IMediaBuffer {
-    CONST_VTBL IMediaBufferVtbl* lpVtbl;
-};
-
-#ifdef COBJMACROS
-#ifndef WIDL_C_INLINE_WRAPPERS
-/*** IUnknown methods ***/
-#define IMediaBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
-#define IMediaBuffer_AddRef(This) (This)->lpVtbl->AddRef(This)
-#define IMediaBuffer_Release(This) (This)->lpVtbl->Release(This)
-/*** IMediaBuffer methods ***/
-#define IMediaBuffer_SetLength(This,cbLength) (This)->lpVtbl->SetLength(This,cbLength)
-#define IMediaBuffer_GetMaxLength(This,pcbMaxLength) (This)->lpVtbl->GetMaxLength(This,pcbMaxLength)
-#define IMediaBuffer_GetBufferAndLength(This,ppBuffer,pcbLength) (This)->lpVtbl->GetBufferAndLength(This,ppBuffer,pcbLength)
-#else
-/*** IUnknown methods ***/
-static FORCEINLINE HRESULT IMediaBuffer_QueryInterface(IMediaBuffer* This,REFIID riid,void **ppvObject) {
-    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
-}
-static FORCEINLINE ULONG IMediaBuffer_AddRef(IMediaBuffer* This) {
-    return This->lpVtbl->AddRef(This);
-}
-static FORCEINLINE ULONG IMediaBuffer_Release(IMediaBuffer* This) {
-    return This->lpVtbl->Release(This);
-}
-/*** IMediaBuffer methods ***/
-static FORCEINLINE HRESULT IMediaBuffer_SetLength(IMediaBuffer* This,DWORD cbLength) {
-    return This->lpVtbl->SetLength(This,cbLength);
-}
-static FORCEINLINE HRESULT IMediaBuffer_GetMaxLength(IMediaBuffer* This,DWORD *pcbMaxLength) {
-    return This->lpVtbl->GetMaxLength(This,pcbMaxLength);
-}
-static FORCEINLINE HRESULT IMediaBuffer_GetBufferAndLength(IMediaBuffer* This,BYTE **ppBuffer,DWORD *pcbLength) {
-    return This->lpVtbl->GetBufferAndLength(This,ppBuffer,pcbLength);
-}
-#endif
-#endif
-
-#endif
-
-
-#endif  /* __IMediaBuffer_INTERFACE_DEFINED__ */
-
-typedef struct _DMO_OUTPUT_DATA_BUFFER {
-    IMediaBuffer *pBuffer;
-    DWORD dwStatus;
-    REFERENCE_TIME rtTimestamp;
-    REFERENCE_TIME rtTimelength;
-} DMO_OUTPUT_DATA_BUFFER;
-typedef struct _DMO_OUTPUT_DATA_BUFFER *PDMO_OUTPUT_DATA_BUFFER;
-enum _DMO_INPLACE_PROCESS_FLAGS {
-    DMO_INPLACE_NORMAL = 0x0,
-    DMO_INPLACE_ZERO = 0x1
-};
-enum _DMO_SET_TYPE_FLAGS {
-    DMO_SET_TYPEF_TEST_ONLY = 0x1,
-    DMO_SET_TYPEF_CLEAR = 0x2
-};
-enum _DMO_OUTPUT_DATA_BUFFERF_FLAGS {
-    DMO_OUTPUT_DATA_BUFFERF_SYNCPOINT = 0x1,
-    DMO_OUTPUT_DATA_BUFFERF_TIME = 0x2,
-    DMO_OUTPUT_DATA_BUFFERF_TIMELENGTH = 0x4,
-    DMO_OUTPUT_DATA_BUFFERF_INCOMPLETE = 0x1000000
-};
-/*****************************************************************************
- * IMediaObject interface
- */
-#ifndef __IMediaObject_INTERFACE_DEFINED__
-#define __IMediaObject_INTERFACE_DEFINED__
-
-DEFINE_GUID(IID_IMediaObject, 0xd8ad0f58, 0x5494, 0x4102, 0x97,0xc5, 0xec,0x79,0x8e,0x59,0xbc,0xf4);
-#if defined(__cplusplus) && !defined(CINTERFACE)
-MIDL_INTERFACE("d8ad0f58-5494-4102-97c5-ec798e59bcf4")
-IMediaObject : public IUnknown
-{
-    virtual HRESULT STDMETHODCALLTYPE GetStreamCount(
-        DWORD *pcInputStreams,
-        DWORD *pcOutputStreams) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE GetInputStreamInfo(
-        DWORD dwInputStreamIndex,
-        DWORD *pdwFlags) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE GetOutputStreamInfo(
-        DWORD dwOutputStreamIndex,
-        DWORD *pdwFlags) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE GetInputType(
-        DWORD dwInputStreamIndex,
-        DWORD dwTypeIndex,
-        DMO_MEDIA_TYPE *pmt) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE GetOutputType(
-        DWORD dwOutputStreamIndex,
-        DWORD dwTypeIndex,
-        DMO_MEDIA_TYPE *pmt) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE SetInputType(
-        DWORD dwInputStreamIndex,
-        const DMO_MEDIA_TYPE *pmt,
-        DWORD dwFlags) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE SetOutputType(
-        DWORD dwOutputStreamIndex,
-        const DMO_MEDIA_TYPE *pmt,
-        DWORD dwFlags) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE GetInputCurrentType(
-        DWORD dwInputStreamIndex,
-        DMO_MEDIA_TYPE *pmt) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE GetOutputCurrentType(
-        DWORD dwOutputStreamIndex,
-        DMO_MEDIA_TYPE *pmt) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE GetInputSizeInfo(
-        DWORD dwInputStreamIndex,
-        DWORD *pcbSize,
-        DWORD *pcbMaxLookahead,
-        DWORD *pcbAlignment) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE GetOutputSizeInfo(
-        DWORD dwOutputStreamIndex,
-        DWORD *pcbSize,
-        DWORD *pcbAlignment) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE GetInputMaxLatency(
-        DWORD dwInputStreamIndex,
-        REFERENCE_TIME *prtMaxLatency) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE SetInputMaxLatency(
-        DWORD dwInputStreamIndex,
-        REFERENCE_TIME rtMaxLatency) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE Flush(
-        ) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE Discontinuity(
-        DWORD dwInputStreamIndex) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE AllocateStreamingResources(
-        ) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE FreeStreamingResources(
-        ) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE GetInputStatus(
-        DWORD dwInputStreamIndex,
-        DWORD *dwFlags) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE ProcessInput(
-        DWORD dwInputStreamIndex,
-        IMediaBuffer *pBuffer,
-        DWORD dwFlags,
-        REFERENCE_TIME rtTimestamp,
-        REFERENCE_TIME rtTimelength) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE ProcessOutput(
-        DWORD dwFlags,
-        DWORD cOutputBufferCount,
-        DMO_OUTPUT_DATA_BUFFER *pOutputBuffers,
-        DWORD *pdwStatus) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE Lock(
-        LONG bLock) = 0;
-
-};
-#ifdef __CRT_UUID_DECL
-__CRT_UUID_DECL(IMediaObject, 0xd8ad0f58, 0x5494, 0x4102, 0x97,0xc5, 0xec,0x79,0x8e,0x59,0xbc,0xf4)
-#endif
-#else
-typedef struct IMediaObjectVtbl {
-    BEGIN_INTERFACE
-
-    /*** IUnknown methods ***/
-    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
-        IMediaObject *This,
-        REFIID riid,
-        void **ppvObject);
-
-    ULONG (STDMETHODCALLTYPE *AddRef)(
-        IMediaObject *This);
-
-    ULONG (STDMETHODCALLTYPE *Release)(
-        IMediaObject *This);
-
-    /*** IMediaObject methods ***/
-    HRESULT (STDMETHODCALLTYPE *GetStreamCount)(
-        IMediaObject *This,
-        DWORD *pcInputStreams,
-        DWORD *pcOutputStreams);
-
-    HRESULT (STDMETHODCALLTYPE *GetInputStreamInfo)(
-        IMediaObject *This,
-        DWORD dwInputStreamIndex,
-        DWORD *pdwFlags);
-
-    HRESULT (STDMETHODCALLTYPE *GetOutputStreamInfo)(
-        IMediaObject *This,
-        DWORD dwOutputStreamIndex,
-        DWORD *pdwFlags);
-
-    HRESULT (STDMETHODCALLTYPE *GetInputType)(
-        IMediaObject *This,
-        DWORD dwInputStreamIndex,
-        DWORD dwTypeIndex,
-        DMO_MEDIA_TYPE *pmt);
-
-    HRESULT (STDMETHODCALLTYPE *GetOutputType)(
-        IMediaObject *This,
-        DWORD dwOutputStreamIndex,
-        DWORD dwTypeIndex,
-        DMO_MEDIA_TYPE *pmt);
-
-    HRESULT (STDMETHODCALLTYPE *SetInputType)(
-        IMediaObject *This,
-        DWORD dwInputStreamIndex,
-        const DMO_MEDIA_TYPE *pmt,
-        DWORD dwFlags);
-
-    HRESULT (STDMETHODCALLTYPE *SetOutputType)(
-        IMediaObject *This,
-        DWORD dwOutputStreamIndex,
-        const DMO_MEDIA_TYPE *pmt,
-        DWORD dwFlags);
-
-    HRESULT (STDMETHODCALLTYPE *GetInputCurrentType)(
-        IMediaObject *This,
-        DWORD dwInputStreamIndex,
-        DMO_MEDIA_TYPE *pmt);
-
-    HRESULT (STDMETHODCALLTYPE *GetOutputCurrentType)(
-        IMediaObject *This,
-        DWORD dwOutputStreamIndex,
-        DMO_MEDIA_TYPE *pmt);
-
-    HRESULT (STDMETHODCALLTYPE *GetInputSizeInfo)(
-        IMediaObject *This,
-        DWORD dwInputStreamIndex,
-        DWORD *pcbSize,
-        DWORD *pcbMaxLookahead,
-        DWORD *pcbAlignment);
-
-    HRESULT (STDMETHODCALLTYPE *GetOutputSizeInfo)(
-        IMediaObject *This,
-        DWORD dwOutputStreamIndex,
-        DWORD *pcbSize,
-        DWORD *pcbAlignment);
-
-    HRESULT (STDMETHODCALLTYPE *GetInputMaxLatency)(
-        IMediaObject *This,
-        DWORD dwInputStreamIndex,
-        REFERENCE_TIME *prtMaxLatency);
-
-    HRESULT (STDMETHODCALLTYPE *SetInputMaxLatency)(
-        IMediaObject *This,
-        DWORD dwInputStreamIndex,
-        REFERENCE_TIME rtMaxLatency);
-
-    HRESULT (STDMETHODCALLTYPE *Flush)(
-        IMediaObject *This);
-
-    HRESULT (STDMETHODCALLTYPE *Discontinuity)(
-        IMediaObject *This,
-        DWORD dwInputStreamIndex);
-
-    HRESULT (STDMETHODCALLTYPE *AllocateStreamingResources)(
-        IMediaObject *This);
-
-    HRESULT (STDMETHODCALLTYPE *FreeStreamingResources)(
-        IMediaObject *This);
-
-    HRESULT (STDMETHODCALLTYPE *GetInputStatus)(
-        IMediaObject *This,
-        DWORD dwInputStreamIndex,
-        DWORD *dwFlags);
-
-    HRESULT (STDMETHODCALLTYPE *ProcessInput)(
-        IMediaObject *This,
-        DWORD dwInputStreamIndex,
-        IMediaBuffer *pBuffer,
-        DWORD dwFlags,
-        REFERENCE_TIME rtTimestamp,
-        REFERENCE_TIME rtTimelength);
-
-    HRESULT (STDMETHODCALLTYPE *ProcessOutput)(
-        IMediaObject *This,
-        DWORD dwFlags,
-        DWORD cOutputBufferCount,
-        DMO_OUTPUT_DATA_BUFFER *pOutputBuffers,
-        DWORD *pdwStatus);
-
-    HRESULT (STDMETHODCALLTYPE *Lock)(
-        IMediaObject *This,
-        LONG bLock);
-
-    END_INTERFACE
-} IMediaObjectVtbl;
-
-interface IMediaObject {
-    CONST_VTBL IMediaObjectVtbl* lpVtbl;
-};
-
-#ifdef COBJMACROS
-#ifndef WIDL_C_INLINE_WRAPPERS
-/*** IUnknown methods ***/
-#define IMediaObject_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
-#define IMediaObject_AddRef(This) (This)->lpVtbl->AddRef(This)
-#define IMediaObject_Release(This) (This)->lpVtbl->Release(This)
-/*** IMediaObject methods ***/
-#define IMediaObject_GetStreamCount(This,pcInputStreams,pcOutputStreams) (This)->lpVtbl->GetStreamCount(This,pcInputStreams,pcOutputStreams)
-#define IMediaObject_GetInputStreamInfo(This,dwInputStreamIndex,pdwFlags) (This)->lpVtbl->GetInputStreamInfo(This,dwInputStreamIndex,pdwFlags)
-#define IMediaObject_GetOutputStreamInfo(This,dwOutputStreamIndex,pdwFlags) (This)->lpVtbl->GetOutputStreamInfo(This,dwOutputStreamIndex,pdwFlags)
-#define IMediaObject_GetInputType(This,dwInputStreamIndex,dwTypeIndex,pmt) (This)->lpVtbl->GetInputType(This,dwInputStreamIndex,dwTypeIndex,pmt)
-#define IMediaObject_GetOutputType(This,dwOutputStreamIndex,dwTypeIndex,pmt) (This)->lpVtbl->GetOutputType(This,dwOutputStreamIndex,dwTypeIndex,pmt)
-#define IMediaObject_SetInputType(This,dwInputStreamIndex,pmt,dwFlags) (This)->lpVtbl->SetInputType(This,dwInputStreamIndex,pmt,dwFlags)
-#define IMediaObject_SetOutputType(This,dwOutputStreamIndex,pmt,dwFlags) (This)->lpVtbl->SetOutputType(This,dwOutputStreamIndex,pmt,dwFlags)
-#define IMediaObject_GetInputCurrentType(This,dwInputStreamIndex,pmt) (This)->lpVtbl->GetInputCurrentType(This,dwInputStreamIndex,pmt)
-#define IMediaObject_GetOutputCurrentType(This,dwOutputStreamIndex,pmt) (This)->lpVtbl->GetOutputCurrentType(This,dwOutputStreamIndex,pmt)
-#define IMediaObject_GetInputSizeInfo(This,dwInputStreamIndex,pcbSize,pcbMaxLookahead,pcbAlignment) (This)->lpVtbl->GetInputSizeInfo(This,dwInputStreamIndex,pcbSize,pcbMaxLookahead,pcbAlignment)
-#define IMediaObject_GetOutputSizeInfo(This,dwOutputStreamIndex,pcbSize,pcbAlignment) (This)->lpVtbl->GetOutputSizeInfo(This,dwOutputStreamIndex,pcbSize,pcbAlignment)
-#define IMediaObject_GetInputMaxLatency(This,dwInputStreamIndex,prtMaxLatency) (This)->lpVtbl->GetInputMaxLatency(This,dwInputStreamIndex,prtMaxLatency)
-#define IMediaObject_SetInputMaxLatency(This,dwInputStreamIndex,rtMaxLatency) (This)->lpVtbl->SetInputMaxLatency(This,dwInputStreamIndex,rtMaxLatency)
-#define IMediaObject_Flush(This) (This)->lpVtbl->Flush(This)
-#define IMediaObject_Discontinuity(This,dwInputStreamIndex) (This)->lpVtbl->Discontinuity(This,dwInputStreamIndex)
-#define IMediaObject_AllocateStreamingResources(This) (This)->lpVtbl->AllocateStreamingResources(This)
-#define IMediaObject_FreeStreamingResources(This) (This)->lpVtbl->FreeStreamingResources(This)
-#define IMediaObject_GetInputStatus(This,dwInputStreamIndex,dwFlags) (This)->lpVtbl->GetInputStatus(This,dwInputStreamIndex,dwFlags)
-#define IMediaObject_ProcessInput(This,dwInputStreamIndex,pBuffer,dwFlags,rtTimestamp,rtTimelength) (This)->lpVtbl->ProcessInput(This,dwInputStreamIndex,pBuffer,dwFlags,rtTimestamp,rtTimelength)
-#define IMediaObject_ProcessOutput(This,dwFlags,cOutputBufferCount,pOutputBuffers,pdwStatus) (This)->lpVtbl->ProcessOutput(This,dwFlags,cOutputBufferCount,pOutputBuffers,pdwStatus)
-#define IMediaObject_Lock(This,bLock) (This)->lpVtbl->Lock(This,bLock)
-#else
-/*** IUnknown methods ***/
-static FORCEINLINE HRESULT IMediaObject_QueryInterface(IMediaObject* This,REFIID riid,void **ppvObject) {
-    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
-}
-static FORCEINLINE ULONG IMediaObject_AddRef(IMediaObject* This) {
-    return This->lpVtbl->AddRef(This);
-}
-static FORCEINLINE ULONG IMediaObject_Release(IMediaObject* This) {
-    return This->lpVtbl->Release(This);
-}
-/*** IMediaObject methods ***/
-static FORCEINLINE HRESULT IMediaObject_GetStreamCount(IMediaObject* This,DWORD *pcInputStreams,DWORD *pcOutputStreams) {
-    return This->lpVtbl->GetStreamCount(This,pcInputStreams,pcOutputStreams);
-}
-static FORCEINLINE HRESULT IMediaObject_GetInputStreamInfo(IMediaObject* This,DWORD dwInputStreamIndex,DWORD *pdwFlags) {
-    return This->lpVtbl->GetInputStreamInfo(This,dwInputStreamIndex,pdwFlags);
-}
-static FORCEINLINE HRESULT IMediaObject_GetOutputStreamInfo(IMediaObject* This,DWORD dwOutputStreamIndex,DWORD *pdwFlags) {
-    return This->lpVtbl->GetOutputStreamInfo(This,dwOutputStreamIndex,pdwFlags);
-}
-static FORCEINLINE HRESULT IMediaObject_GetInputType(IMediaObject* This,DWORD dwInputStreamIndex,DWORD dwTypeIndex,DMO_MEDIA_TYPE *pmt) {
-    return This->lpVtbl->GetInputType(This,dwInputStreamIndex,dwTypeIndex,pmt);
-}
-static FORCEINLINE HRESULT IMediaObject_GetOutputType(IMediaObject* This,DWORD dwOutputStreamIndex,DWORD dwTypeIndex,DMO_MEDIA_TYPE *pmt) {
-    return This->lpVtbl->GetOutputType(This,dwOutputStreamIndex,dwTypeIndex,pmt);
-}
-static FORCEINLINE HRESULT IMediaObject_SetInputType(IMediaObject* This,DWORD dwInputStreamIndex,const DMO_MEDIA_TYPE *pmt,DWORD dwFlags) {
-    return This->lpVtbl->SetInputType(This,dwInputStreamIndex,pmt,dwFlags);
-}
-static FORCEINLINE HRESULT IMediaObject_SetOutputType(IMediaObject* This,DWORD dwOutputStreamIndex,const DMO_MEDIA_TYPE *pmt,DWORD dwFlags) {
-    return This->lpVtbl->SetOutputType(This,dwOutputStreamIndex,pmt,dwFlags);
-}
-static FORCEINLINE HRESULT IMediaObject_GetInputCurrentType(IMediaObject* This,DWORD dwInputStreamIndex,DMO_MEDIA_TYPE *pmt) {
-    return This->lpVtbl->GetInputCurrentType(This,dwInputStreamIndex,pmt);
-}
-static FORCEINLINE HRESULT IMediaObject_GetOutputCurrentType(IMediaObject* This,DWORD dwOutputStreamIndex,DMO_MEDIA_TYPE *pmt) {
-    return This->lpVtbl->GetOutputCurrentType(This,dwOutputStreamIndex,pmt);
-}
-static FORCEINLINE HRESULT IMediaObject_GetInputSizeInfo(IMediaObject* This,DWORD dwInputStreamIndex,DWORD *pcbSize,DWORD *pcbMaxLookahead,DWORD *pcbAlignment) {
-    return This->lpVtbl->GetInputSizeInfo(This,dwInputStreamIndex,pcbSize,pcbMaxLookahead,pcbAlignment);
-}
-static FORCEINLINE HRESULT IMediaObject_GetOutputSizeInfo(IMediaObject* This,DWORD dwOutputStreamIndex,DWORD *pcbSize,DWORD *pcbAlignment) {
-    return This->lpVtbl->GetOutputSizeInfo(This,dwOutputStreamIndex,pcbSize,pcbAlignment);
-}
-static FORCEINLINE HRESULT IMediaObject_GetInputMaxLatency(IMediaObject* This,DWORD dwInputStreamIndex,REFERENCE_TIME *prtMaxLatency) {
-    return This->lpVtbl->GetInputMaxLatency(This,dwInputStreamIndex,prtMaxLatency);
-}
-static FORCEINLINE HRESULT IMediaObject_SetInputMaxLatency(IMediaObject* This,DWORD dwInputStreamIndex,REFERENCE_TIME rtMaxLatency) {
-    return This->lpVtbl->SetInputMaxLatency(This,dwInputStreamIndex,rtMaxLatency);
-}
-static FORCEINLINE HRESULT IMediaObject_Flush(IMediaObject* This) {
-    return This->lpVtbl->Flush(This);
-}
-static FORCEINLINE HRESULT IMediaObject_Discontinuity(IMediaObject* This,DWORD dwInputStreamIndex) {
-    return This->lpVtbl->Discontinuity(This,dwInputStreamIndex);
-}
-static FORCEINLINE HRESULT IMediaObject_AllocateStreamingResources(IMediaObject* This) {
-    return This->lpVtbl->AllocateStreamingResources(This);
-}
-static FORCEINLINE HRESULT IMediaObject_FreeStreamingResources(IMediaObject* This) {
-    return This->lpVtbl->FreeStreamingResources(This);
-}
-static FORCEINLINE HRESULT IMediaObject_GetInputStatus(IMediaObject* This,DWORD dwInputStreamIndex,DWORD *dwFlags) {
-    return This->lpVtbl->GetInputStatus(This,dwInputStreamIndex,dwFlags);
-}
-static FORCEINLINE HRESULT IMediaObject_ProcessInput(IMediaObject* This,DWORD dwInputStreamIndex,IMediaBuffer *pBuffer,DWORD dwFlags,REFERENCE_TIME rtTimestamp,REFERENCE_TIME rtTimelength) {
-    return This->lpVtbl->ProcessInput(This,dwInputStreamIndex,pBuffer,dwFlags,rtTimestamp,rtTimelength);
-}
-static FORCEINLINE HRESULT IMediaObject_ProcessOutput(IMediaObject* This,DWORD dwFlags,DWORD cOutputBufferCount,DMO_OUTPUT_DATA_BUFFER *pOutputBuffers,DWORD *pdwStatus) {
-    return This->lpVtbl->ProcessOutput(This,dwFlags,cOutputBufferCount,pOutputBuffers,pdwStatus);
-}
-static FORCEINLINE HRESULT IMediaObject_Lock(IMediaObject* This,LONG bLock) {
-    return This->lpVtbl->Lock(This,bLock);
-}
-#endif
-#endif
-
-#endif
-
-
-#endif  /* __IMediaObject_INTERFACE_DEFINED__ */
-
-/*****************************************************************************
- * IMediaObjectInPlace interface
- */
-#ifndef __IMediaObjectInPlace_INTERFACE_DEFINED__
-#define __IMediaObjectInPlace_INTERFACE_DEFINED__
-
-DEFINE_GUID(IID_IMediaObjectInPlace, 0x651b9ad0, 0x0fc7, 0x4aa9, 0x95,0x38, 0xd8,0x99,0x31,0x01,0x07,0x41);
-#if defined(__cplusplus) && !defined(CINTERFACE)
-MIDL_INTERFACE("651b9ad0-0fc7-4aa9-9538-d89931010741")
-IMediaObjectInPlace : public IUnknown
-{
-    virtual HRESULT STDMETHODCALLTYPE Process(
-        ULONG ulSize,
-        BYTE *pData,
-        REFERENCE_TIME refTimeStart,
-        DWORD dwFlags) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE Clone(
-        IMediaObjectInPlace **ppMediaObject) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE GetLatency(
-        REFERENCE_TIME *pLatencyTime) = 0;
-
-};
-#ifdef __CRT_UUID_DECL
-__CRT_UUID_DECL(IMediaObjectInPlace, 0x651b9ad0, 0x0fc7, 0x4aa9, 0x95,0x38, 0xd8,0x99,0x31,0x01,0x07,0x41)
-#endif
-#else
-typedef struct IMediaObjectInPlaceVtbl {
-    BEGIN_INTERFACE
-
-    /*** IUnknown methods ***/
-    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
-        IMediaObjectInPlace *This,
-        REFIID riid,
-        void **ppvObject);
-
-    ULONG (STDMETHODCALLTYPE *AddRef)(
-        IMediaObjectInPlace *This);
-
-    ULONG (STDMETHODCALLTYPE *Release)(
-        IMediaObjectInPlace *This);
-
-    /*** IMediaObjectInPlace methods ***/
-    HRESULT (STDMETHODCALLTYPE *Process)(
-        IMediaObjectInPlace *This,
-        ULONG ulSize,
-        BYTE *pData,
-        REFERENCE_TIME refTimeStart,
-        DWORD dwFlags);
-
-    HRESULT (STDMETHODCALLTYPE *Clone)(
-        IMediaObjectInPlace *This,
-        IMediaObjectInPlace **ppMediaObject);
-
-    HRESULT (STDMETHODCALLTYPE *GetLatency)(
-        IMediaObjectInPlace *This,
-        REFERENCE_TIME *pLatencyTime);
-
-    END_INTERFACE
-} IMediaObjectInPlaceVtbl;
-
-interface IMediaObjectInPlace {
-    CONST_VTBL IMediaObjectInPlaceVtbl* lpVtbl;
-};
-
-#ifdef COBJMACROS
-#ifndef WIDL_C_INLINE_WRAPPERS
-/*** IUnknown methods ***/
-#define IMediaObjectInPlace_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
-#define IMediaObjectInPlace_AddRef(This) (This)->lpVtbl->AddRef(This)
-#define IMediaObjectInPlace_Release(This) (This)->lpVtbl->Release(This)
-/*** IMediaObjectInPlace methods ***/
-#define IMediaObjectInPlace_Process(This,ulSize,pData,refTimeStart,dwFlags) (This)->lpVtbl->Process(This,ulSize,pData,refTimeStart,dwFlags)
-#define IMediaObjectInPlace_Clone(This,ppMediaObject) (This)->lpVtbl->Clone(This,ppMediaObject)
-#define IMediaObjectInPlace_GetLatency(This,pLatencyTime) (This)->lpVtbl->GetLatency(This,pLatencyTime)
-#else
-/*** IUnknown methods ***/
-static FORCEINLINE HRESULT IMediaObjectInPlace_QueryInterface(IMediaObjectInPlace* This,REFIID riid,void **ppvObject) {
-    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
-}
-static FORCEINLINE ULONG IMediaObjectInPlace_AddRef(IMediaObjectInPlace* This) {
-    return This->lpVtbl->AddRef(This);
-}
-static FORCEINLINE ULONG IMediaObjectInPlace_Release(IMediaObjectInPlace* This) {
-    return This->lpVtbl->Release(This);
-}
-/*** IMediaObjectInPlace methods ***/
-static FORCEINLINE HRESULT IMediaObjectInPlace_Process(IMediaObjectInPlace* This,ULONG ulSize,BYTE *pData,REFERENCE_TIME refTimeStart,DWORD dwFlags) {
-    return This->lpVtbl->Process(This,ulSize,pData,refTimeStart,dwFlags);
-}
-static FORCEINLINE HRESULT IMediaObjectInPlace_Clone(IMediaObjectInPlace* This,IMediaObjectInPlace **ppMediaObject) {
-    return This->lpVtbl->Clone(This,ppMediaObject);
-}
-static FORCEINLINE HRESULT IMediaObjectInPlace_GetLatency(IMediaObjectInPlace* This,REFERENCE_TIME *pLatencyTime) {
-    return This->lpVtbl->GetLatency(This,pLatencyTime);
-}
-#endif
-#endif
-
-#endif
-
-
-#endif  /* __IMediaObjectInPlace_INTERFACE_DEFINED__ */
-
-/* Begin additional prototypes for all interfaces */
-
-
-/* End additional prototypes */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __mediaobj_h__ */
diff --git a/mingw-w64-headers/direct-x/include/mediaobj.idl b/mingw-w64-headers/direct-x/include/mediaobj.idl
deleted file mode 100644
index 77599214..00000000
--- a/mingw-w64-headers/direct-x/include/mediaobj.idl
+++ /dev/null
@@ -1,254 +0,0 @@
-/*
- * Copyright (C) 2002 Alexandre Julliard
- * Copyright (C) 2004 Vincent Béron
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
- */
-
-import "unknwn.idl";
-import "objidl.idl";
-import "strmif.idl";
-
-interface IDMOQualityControl;
-interface IDMOVideoOutputOptimizations;
-
-typedef struct _DMOMediaType
-{
-    GUID majortype;
-    GUID subtype;
-    BOOL bFixedSizeSamples;
-    BOOL bTemporalCompression;
-    ULONG lSampleSize;
-    GUID formattype;
-    IUnknown *pUnk;
-    ULONG cbFormat;
-    BYTE *pbFormat;
-} DMO_MEDIA_TYPE;
-
-/*****************************************************************************
- * IEnumDMO interface
- */
-[
-    object,
-    uuid(2C3CD98A-2BFA-4A53-9C27-5249BA64BA0F),
-    pointer_default(unique)
-]
-interface IEnumDMO : IUnknown
-{
-    [local]
-    HRESULT Next(
-        [in] DWORD cItemsToFetch,
-        [out] CLSID *pCLSID,
-        [out] WCHAR **Names,
-        [out] DWORD *pcItemsFetched
-    );
-
-    HRESULT Skip(
-        [in] DWORD cItemsToSkip
-    );
-
-    HRESULT Reset();
-
-    HRESULT Clone(
-        [out] IEnumDMO **ppEnum
-    );
-}
-
-/*****************************************************************************
- * IMediaBuffer interface
- */
-[
-    object,
-    uuid(59eff8b9-938c-4a26-82f2-95cb84cdc837),
-    local
-]
-interface IMediaBuffer : IUnknown
-{
-    HRESULT SetLength(
-       DWORD cbLength
-    );
-
-    HRESULT GetMaxLength(
-       [out] DWORD *pcbMaxLength
-    );
-
-    HRESULT GetBufferAndLength(
-       [out] BYTE **ppBuffer,
-       [out] DWORD *pcbLength
-    );
-}
-
-typedef struct _DMO_OUTPUT_DATA_BUFFER {
-    IMediaBuffer *pBuffer;
-    DWORD dwStatus;
-    REFERENCE_TIME rtTimestamp;
-    REFERENCE_TIME rtTimelength;
-} DMO_OUTPUT_DATA_BUFFER, *PDMO_OUTPUT_DATA_BUFFER;
-
-enum _DMO_INPLACE_PROCESS_FLAGS {
-    DMO_INPLACE_NORMAL = 0x00000000,
-    DMO_INPLACE_ZERO   = 0x00000001
-};
-
-enum _DMO_SET_TYPE_FLAGS {
-    DMO_SET_TYPEF_TEST_ONLY = 0x00000001,
-    DMO_SET_TYPEF_CLEAR     = 0x00000002,
-};
-
-enum _DMO_OUTPUT_DATA_BUFFERF_FLAGS {
-    DMO_OUTPUT_DATA_BUFFERF_SYNCPOINT   = 0x00000001,
-    DMO_OUTPUT_DATA_BUFFERF_TIME        = 0x00000002,
-    DMO_OUTPUT_DATA_BUFFERF_TIMELENGTH  = 0x00000004,
-    DMO_OUTPUT_DATA_BUFFERF_INCOMPLETE  = 0x01000000,
-};
-
-/*****************************************************************************
- * IMediaObject interface
- */
-[
-    object,
-    uuid(d8ad0f58-5494-4102-97c5-ec798e59bcf4),
-    local
-]
-interface IMediaObject : IUnknown
-{
-    HRESULT GetStreamCount(
-        [out] DWORD *pcInputStreams,
-        [out] DWORD *pcOutputStreams
-    );
-
-    HRESULT GetInputStreamInfo(
-        DWORD dwInputStreamIndex,
-        [out] DWORD *pdwFlags
-    );
-
-    HRESULT GetOutputStreamInfo(
-        DWORD dwOutputStreamIndex,
-        [out] DWORD *pdwFlags
-    );
-
-    HRESULT GetInputType(
-        DWORD dwInputStreamIndex,
-        DWORD dwTypeIndex,
-        [out] DMO_MEDIA_TYPE *pmt
-    );
-
-    HRESULT GetOutputType(
-        DWORD dwOutputStreamIndex,
-        DWORD dwTypeIndex,
-        [out] DMO_MEDIA_TYPE *pmt
-    );
-
-    HRESULT SetInputType(
-        DWORD dwInputStreamIndex,
-        [in] const DMO_MEDIA_TYPE *pmt,
-        DWORD dwFlags
-    );
-
-    HRESULT SetOutputType(
-        DWORD dwOutputStreamIndex,
-        [in] const DMO_MEDIA_TYPE *pmt,
-        DWORD dwFlags
-    );
-
-    HRESULT GetInputCurrentType(
-        DWORD dwInputStreamIndex,
-        [out] DMO_MEDIA_TYPE *pmt
-    );
-
-    HRESULT GetOutputCurrentType(
-        DWORD dwOutputStreamIndex,
-        [out] DMO_MEDIA_TYPE *pmt
-    );
-
-    HRESULT GetInputSizeInfo(
-        DWORD dwInputStreamIndex,
-        [out] DWORD *pcbSize,
-        [out] DWORD *pcbMaxLookahead,
-        [out] DWORD *pcbAlignment
-    );
-
-    HRESULT GetOutputSizeInfo(
-        DWORD dwOutputStreamIndex,
-        [out] DWORD *pcbSize,
-        [out] DWORD *pcbAlignment
-    );
-
-    HRESULT GetInputMaxLatency(
-        DWORD dwInputStreamIndex,
-        [out] REFERENCE_TIME *prtMaxLatency
-    );
-
-    HRESULT SetInputMaxLatency(
-        DWORD dwInputStreamIndex,
-        REFERENCE_TIME rtMaxLatency
-    );
-
-    HRESULT Flush();
-
-    HRESULT Discontinuity(DWORD dwInputStreamIndex);
-
-    HRESULT AllocateStreamingResources();
-
-    HRESULT FreeStreamingResources();
-
-    HRESULT GetInputStatus(
-        DWORD dwInputStreamIndex,
-        [out] DWORD *dwFlags
-    );
-
-    HRESULT ProcessInput(
-        DWORD dwInputStreamIndex,
-        IMediaBuffer *pBuffer,
-        DWORD dwFlags,
-        REFERENCE_TIME rtTimestamp,
-        REFERENCE_TIME rtTimelength
-    );
-
-    HRESULT ProcessOutput(
-        DWORD dwFlags,
-        DWORD cOutputBufferCount,
-        [in,out] DMO_OUTPUT_DATA_BUFFER *pOutputBuffers,
-        [out] DWORD *pdwStatus
-    );
-
-    HRESULT Lock(LONG bLock);
-}
-
-/*****************************************************************************
- * IMediaObjectInPlace interface
- */
-
-[
-    object,
-    uuid(651b9ad0-0fc7-4aa9-9538-d89931010741),
-    local
-]
-interface IMediaObjectInPlace : IUnknown {
-    HRESULT Process(
-        [in] ULONG ulSize,
-        [in,out] BYTE* pData,
-        [in] REFERENCE_TIME refTimeStart,
-        [in] DWORD dwFlags
-    );
-
-    HRESULT Clone(
-        [out] IMediaObjectInPlace **ppMediaObject
-    );
-
-    HRESULT GetLatency(
-        [out] REFERENCE_TIME *pLatencyTime
-    );
-}
diff --git a/mingw-w64-headers/direct-x/include/_mingw_dxhelper.h b/mingw-w64-headers/include/_mingw_dxhelper.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/_mingw_dxhelper.h
rename to mingw-w64-headers/include/_mingw_dxhelper.h
diff --git a/mingw-w64-headers/direct-x/include/amaudio.h b/mingw-w64-headers/include/amaudio.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/amaudio.h
rename to mingw-w64-headers/include/amaudio.h
diff --git a/mingw-w64-headers/direct-x/include/amstream.h b/mingw-w64-headers/include/amstream.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/amstream.h
rename to mingw-w64-headers/include/amstream.h
index 6a432c20..f6cd3526 100644
--- a/mingw-w64-headers/direct-x/include/amstream.h
+++ b/mingw-w64-headers/include/amstream.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/amstream.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/amstream.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/amstream.idl b/mingw-w64-headers/include/amstream.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/amstream.idl
rename to mingw-w64-headers/include/amstream.idl
diff --git a/mingw-w64-headers/direct-x/include/amvideo.h b/mingw-w64-headers/include/amvideo.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/amvideo.h
rename to mingw-w64-headers/include/amvideo.h
index d3a89078..193f9feb 100644
--- a/mingw-w64-headers/direct-x/include/amvideo.h
+++ b/mingw-w64-headers/include/amvideo.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/amvideo.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/amvideo.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/amvideo.idl b/mingw-w64-headers/include/amvideo.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/amvideo.idl
rename to mingw-w64-headers/include/amvideo.idl
diff --git a/mingw-w64-headers/include/audevcod.h b/mingw-w64-headers/include/audevcod.h
index f0afd8e9..116f1a8a 100644
--- a/mingw-w64-headers/include/audevcod.h
+++ b/mingw-w64-headers/include/audevcod.h
@@ -1,35 +1,44 @@
-/**
- * This file is part of the mingw-w64 runtime package.
- * No warranty is given; refer to the file DISCLAIMER within this package.
+/*
+ * Copyright (C) 2002 Alexandre Julliard
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  */
+
 #ifndef __AUDEVCOD__
 #define __AUDEVCOD__
 
-#include <winapifamily.h>
-
-#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
-
-typedef enum _tagSND_DEVICE_ERROR {
-  SNDDEV_ERROR_Open=1,
-  SNDDEV_ERROR_Close=2,
-  SNDDEV_ERROR_GetCaps=3,
-  SNDDEV_ERROR_PrepareHeader=4,
-  SNDDEV_ERROR_UnprepareHeader=5,
-  SNDDEV_ERROR_Reset=6,
-  SNDDEV_ERROR_Restart=7,
-  SNDDEV_ERROR_GetPosition=8,
-  SNDDEV_ERROR_Write=9,
-  SNDDEV_ERROR_Pause=10,
-  SNDDEV_ERROR_Stop=11,
-  SNDDEV_ERROR_Start=12,
-  SNDDEV_ERROR_AddBuffer=13,
-  SNDDEV_ERROR_Query=14,
+typedef enum _tagSND_DEVICE_ERROR
+{
+    SNDDEV_ERROR_Open=1,
+    SNDDEV_ERROR_Close=2,
+    SNDDEV_ERROR_GetCaps=3,
+    SNDDEV_ERROR_PrepareHeader=4,
+    SNDDEV_ERROR_UnprepareHeader=5,
+    SNDDEV_ERROR_Reset=6,
+    SNDDEV_ERROR_Restart=7,
+    SNDDEV_ERROR_GetPosition=8,
+    SNDDEV_ERROR_Write=9,
+    SNDDEV_ERROR_Pause=10,
+    SNDDEV_ERROR_Stop=11,
+    SNDDEV_ERROR_Start=12,
+    SNDDEV_ERROR_AddBuffer=13,
+    SNDDEV_ERROR_Query=14
 } SNDDEV_ERR;
 
-#define EC_SND_DEVICE_ERROR_BASE 0x200
-
-#define EC_SNDDEV_IN_ERROR (EC_SND_DEVICE_ERROR_BASE)
-#define EC_SNDDEV_OUT_ERROR (EC_SND_DEVICE_ERROR_BASE + 1)
-#endif
+#define EC_SND_DEVICE_ERROR_BASE 0x0200
+#define EC_SNDDEV_IN_ERROR       (EC_SND_DEVICE_ERROR_BASE+0x00)
+#define EC_SNDDEV_OUT_ERROR      (EC_SND_DEVICE_ERROR_BASE+0x01)
 
-#endif
+#endif  /* __AUDEVCOD__ */
diff --git a/mingw-w64-headers/direct-x/include/austream.h b/mingw-w64-headers/include/austream.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/austream.h
rename to mingw-w64-headers/include/austream.h
index c1b9d585..316720f0 100644
--- a/mingw-w64-headers/direct-x/include/austream.h
+++ b/mingw-w64-headers/include/austream.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/austream.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/austream.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/austream.idl b/mingw-w64-headers/include/austream.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/austream.idl
rename to mingw-w64-headers/include/austream.idl
diff --git a/mingw-w64-headers/direct-x/include/d3d.h b/mingw-w64-headers/include/d3d.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d.h
rename to mingw-w64-headers/include/d3d.h
diff --git a/mingw-w64-headers/direct-x/include/d3d10.h b/mingw-w64-headers/include/d3d10.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/d3d10.h
rename to mingw-w64-headers/include/d3d10.h
index 2e846680..ece66ed8 100644
--- a/mingw-w64-headers/direct-x/include/d3d10.h
+++ b/mingw-w64-headers/include/d3d10.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/d3d10.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/d3d10.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/d3d10.idl b/mingw-w64-headers/include/d3d10.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d10.idl
rename to mingw-w64-headers/include/d3d10.idl
diff --git a/mingw-w64-headers/direct-x/include/d3d10_1.h b/mingw-w64-headers/include/d3d10_1.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/d3d10_1.h
rename to mingw-w64-headers/include/d3d10_1.h
index 2d3d92a8..ee44255a 100644
--- a/mingw-w64-headers/direct-x/include/d3d10_1.h
+++ b/mingw-w64-headers/include/d3d10_1.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/d3d10_1.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/d3d10_1.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/d3d10_1.idl b/mingw-w64-headers/include/d3d10_1.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d10_1.idl
rename to mingw-w64-headers/include/d3d10_1.idl
diff --git a/mingw-w64-headers/direct-x/include/d3d10_1shader.h b/mingw-w64-headers/include/d3d10_1shader.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d10_1shader.h
rename to mingw-w64-headers/include/d3d10_1shader.h
diff --git a/mingw-w64-headers/direct-x/include/d3d10effect.h b/mingw-w64-headers/include/d3d10effect.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d10effect.h
rename to mingw-w64-headers/include/d3d10effect.h
diff --git a/mingw-w64-headers/direct-x/include/d3d10misc.h b/mingw-w64-headers/include/d3d10misc.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d10misc.h
rename to mingw-w64-headers/include/d3d10misc.h
diff --git a/mingw-w64-headers/direct-x/include/d3d10sdklayers.h b/mingw-w64-headers/include/d3d10sdklayers.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/d3d10sdklayers.h
rename to mingw-w64-headers/include/d3d10sdklayers.h
index bc92bf22..e70a5f5c 100644
--- a/mingw-w64-headers/direct-x/include/d3d10sdklayers.h
+++ b/mingw-w64-headers/include/d3d10sdklayers.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/d3d10sdklayers.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/d3d10sdklayers.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/d3d10sdklayers.idl b/mingw-w64-headers/include/d3d10sdklayers.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d10sdklayers.idl
rename to mingw-w64-headers/include/d3d10sdklayers.idl
diff --git a/mingw-w64-headers/direct-x/include/d3d10shader.h b/mingw-w64-headers/include/d3d10shader.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d10shader.h
rename to mingw-w64-headers/include/d3d10shader.h
diff --git a/mingw-w64-headers/direct-x/include/d3d11.h b/mingw-w64-headers/include/d3d11.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/d3d11.h
rename to mingw-w64-headers/include/d3d11.h
index 5c01cf8d..e0dfa56b 100644
--- a/mingw-w64-headers/direct-x/include/d3d11.h
+++ b/mingw-w64-headers/include/d3d11.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/d3d11.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/d3d11.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/d3d11.idl b/mingw-w64-headers/include/d3d11.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d11.idl
rename to mingw-w64-headers/include/d3d11.idl
diff --git a/mingw-w64-headers/direct-x/include/d3d11_1.h b/mingw-w64-headers/include/d3d11_1.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/d3d11_1.h
rename to mingw-w64-headers/include/d3d11_1.h
index 32e38f53..3466162c 100644
--- a/mingw-w64-headers/direct-x/include/d3d11_1.h
+++ b/mingw-w64-headers/include/d3d11_1.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/d3d11_1.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/d3d11_1.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/d3d11_1.idl b/mingw-w64-headers/include/d3d11_1.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d11_1.idl
rename to mingw-w64-headers/include/d3d11_1.idl
diff --git a/mingw-w64-headers/direct-x/include/d3d11_2.h b/mingw-w64-headers/include/d3d11_2.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/d3d11_2.h
rename to mingw-w64-headers/include/d3d11_2.h
index b0c37c0e..8bbc5fb6 100644
--- a/mingw-w64-headers/direct-x/include/d3d11_2.h
+++ b/mingw-w64-headers/include/d3d11_2.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/d3d11_2.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/d3d11_2.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/d3d11_2.idl b/mingw-w64-headers/include/d3d11_2.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d11_2.idl
rename to mingw-w64-headers/include/d3d11_2.idl
diff --git a/mingw-w64-headers/direct-x/include/d3d11_3.h b/mingw-w64-headers/include/d3d11_3.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/d3d11_3.h
rename to mingw-w64-headers/include/d3d11_3.h
index 5a630898..4d369984 100644
--- a/mingw-w64-headers/direct-x/include/d3d11_3.h
+++ b/mingw-w64-headers/include/d3d11_3.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/d3d11_3.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/d3d11_3.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/d3d11_3.idl b/mingw-w64-headers/include/d3d11_3.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d11_3.idl
rename to mingw-w64-headers/include/d3d11_3.idl
diff --git a/mingw-w64-headers/direct-x/include/d3d11_4.h b/mingw-w64-headers/include/d3d11_4.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/d3d11_4.h
rename to mingw-w64-headers/include/d3d11_4.h
index 0316d531..c099f27c 100644
--- a/mingw-w64-headers/direct-x/include/d3d11_4.h
+++ b/mingw-w64-headers/include/d3d11_4.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/d3d11_4.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/d3d11_4.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/d3d11_4.idl b/mingw-w64-headers/include/d3d11_4.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d11_4.idl
rename to mingw-w64-headers/include/d3d11_4.idl
diff --git a/mingw-w64-headers/direct-x/include/d3d11sdklayers.h b/mingw-w64-headers/include/d3d11sdklayers.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/d3d11sdklayers.h
rename to mingw-w64-headers/include/d3d11sdklayers.h
index bd8366af..3d2d43eb 100644
--- a/mingw-w64-headers/direct-x/include/d3d11sdklayers.h
+++ b/mingw-w64-headers/include/d3d11sdklayers.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/d3d11sdklayers.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/d3d11sdklayers.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/d3d11sdklayers.idl b/mingw-w64-headers/include/d3d11sdklayers.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d11sdklayers.idl
rename to mingw-w64-headers/include/d3d11sdklayers.idl
diff --git a/mingw-w64-headers/direct-x/include/d3d11shader.h b/mingw-w64-headers/include/d3d11shader.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d11shader.h
rename to mingw-w64-headers/include/d3d11shader.h
diff --git a/mingw-w64-headers/direct-x/include/d3d8.h b/mingw-w64-headers/include/d3d8.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d8.h
rename to mingw-w64-headers/include/d3d8.h
diff --git a/mingw-w64-headers/direct-x/include/d3d8caps.h b/mingw-w64-headers/include/d3d8caps.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d8caps.h
rename to mingw-w64-headers/include/d3d8caps.h
diff --git a/mingw-w64-headers/direct-x/include/d3d8types.h b/mingw-w64-headers/include/d3d8types.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d8types.h
rename to mingw-w64-headers/include/d3d8types.h
diff --git a/mingw-w64-headers/direct-x/include/d3d9.h b/mingw-w64-headers/include/d3d9.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d9.h
rename to mingw-w64-headers/include/d3d9.h
diff --git a/mingw-w64-headers/direct-x/include/d3d9caps.h b/mingw-w64-headers/include/d3d9caps.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d9caps.h
rename to mingw-w64-headers/include/d3d9caps.h
diff --git a/mingw-w64-headers/direct-x/include/d3d9types.h b/mingw-w64-headers/include/d3d9types.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3d9types.h
rename to mingw-w64-headers/include/d3d9types.h
diff --git a/mingw-w64-headers/direct-x/include/d3dcaps.h b/mingw-w64-headers/include/d3dcaps.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3dcaps.h
rename to mingw-w64-headers/include/d3dcaps.h
diff --git a/mingw-w64-headers/direct-x/include/d3dcommon.h b/mingw-w64-headers/include/d3dcommon.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/d3dcommon.h
rename to mingw-w64-headers/include/d3dcommon.h
index 36074a32..3072fdd3 100644
--- a/mingw-w64-headers/direct-x/include/d3dcommon.h
+++ b/mingw-w64-headers/include/d3dcommon.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/d3dcommon.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/d3dcommon.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/d3dcommon.idl b/mingw-w64-headers/include/d3dcommon.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3dcommon.idl
rename to mingw-w64-headers/include/d3dcommon.idl
diff --git a/mingw-w64-headers/direct-x/include/d3dcompiler.h b/mingw-w64-headers/include/d3dcompiler.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3dcompiler.h
rename to mingw-w64-headers/include/d3dcompiler.h
diff --git a/mingw-w64-headers/direct-x/include/d3dhal.h b/mingw-w64-headers/include/d3dhal.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3dhal.h
rename to mingw-w64-headers/include/d3dhal.h
diff --git a/mingw-w64-headers/direct-x/include/d3drm.h b/mingw-w64-headers/include/d3drm.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3drm.h
rename to mingw-w64-headers/include/d3drm.h
diff --git a/mingw-w64-headers/direct-x/include/d3drmdef.h b/mingw-w64-headers/include/d3drmdef.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3drmdef.h
rename to mingw-w64-headers/include/d3drmdef.h
diff --git a/mingw-w64-headers/direct-x/include/d3drmobj.h b/mingw-w64-headers/include/d3drmobj.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3drmobj.h
rename to mingw-w64-headers/include/d3drmobj.h
diff --git a/mingw-w64-headers/direct-x/include/d3dtypes.h b/mingw-w64-headers/include/d3dtypes.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3dtypes.h
rename to mingw-w64-headers/include/d3dtypes.h
diff --git a/mingw-w64-headers/direct-x/include/d3dvec.inl b/mingw-w64-headers/include/d3dvec.inl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3dvec.inl
rename to mingw-w64-headers/include/d3dvec.inl
diff --git a/mingw-w64-headers/direct-x/include/d3dx9.h b/mingw-w64-headers/include/d3dx9.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3dx9.h
rename to mingw-w64-headers/include/d3dx9.h
diff --git a/mingw-w64-headers/direct-x/include/d3dx9anim.h b/mingw-w64-headers/include/d3dx9anim.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3dx9anim.h
rename to mingw-w64-headers/include/d3dx9anim.h
diff --git a/mingw-w64-headers/direct-x/include/d3dx9core.h b/mingw-w64-headers/include/d3dx9core.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3dx9core.h
rename to mingw-w64-headers/include/d3dx9core.h
diff --git a/mingw-w64-headers/direct-x/include/d3dx9effect.h b/mingw-w64-headers/include/d3dx9effect.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3dx9effect.h
rename to mingw-w64-headers/include/d3dx9effect.h
diff --git a/mingw-w64-headers/direct-x/include/d3dx9math.h b/mingw-w64-headers/include/d3dx9math.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3dx9math.h
rename to mingw-w64-headers/include/d3dx9math.h
diff --git a/mingw-w64-headers/direct-x/include/d3dx9math.inl b/mingw-w64-headers/include/d3dx9math.inl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3dx9math.inl
rename to mingw-w64-headers/include/d3dx9math.inl
diff --git a/mingw-w64-headers/direct-x/include/d3dx9mesh.h b/mingw-w64-headers/include/d3dx9mesh.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3dx9mesh.h
rename to mingw-w64-headers/include/d3dx9mesh.h
diff --git a/mingw-w64-headers/direct-x/include/d3dx9shader.h b/mingw-w64-headers/include/d3dx9shader.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3dx9shader.h
rename to mingw-w64-headers/include/d3dx9shader.h
diff --git a/mingw-w64-headers/direct-x/include/d3dx9shape.h b/mingw-w64-headers/include/d3dx9shape.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3dx9shape.h
rename to mingw-w64-headers/include/d3dx9shape.h
diff --git a/mingw-w64-headers/direct-x/include/d3dx9tex.h b/mingw-w64-headers/include/d3dx9tex.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3dx9tex.h
rename to mingw-w64-headers/include/d3dx9tex.h
diff --git a/mingw-w64-headers/direct-x/include/d3dx9xof.h b/mingw-w64-headers/include/d3dx9xof.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/d3dx9xof.h
rename to mingw-w64-headers/include/d3dx9xof.h
diff --git a/mingw-w64-headers/direct-x/include/ddraw.h b/mingw-w64-headers/include/ddraw.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/ddraw.h
rename to mingw-w64-headers/include/ddraw.h
diff --git a/mingw-w64-headers/direct-x/include/ddrawi.h b/mingw-w64-headers/include/ddrawi.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/ddrawi.h
rename to mingw-w64-headers/include/ddrawi.h
diff --git a/mingw-w64-headers/direct-x/include/ddstream.h b/mingw-w64-headers/include/ddstream.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/ddstream.h
rename to mingw-w64-headers/include/ddstream.h
index 20691833..b591f9e6 100644
--- a/mingw-w64-headers/direct-x/include/ddstream.h
+++ b/mingw-w64-headers/include/ddstream.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/ddstream.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/ddstream.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/ddstream.idl b/mingw-w64-headers/include/ddstream.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/ddstream.idl
rename to mingw-w64-headers/include/ddstream.idl
diff --git a/mingw-w64-headers/direct-x/include/dinput.h b/mingw-w64-headers/include/dinput.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dinput.h
rename to mingw-w64-headers/include/dinput.h
diff --git a/mingw-w64-headers/direct-x/include/dls1.h b/mingw-w64-headers/include/dls1.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dls1.h
rename to mingw-w64-headers/include/dls1.h
diff --git a/mingw-w64-headers/direct-x/include/dls2.h b/mingw-w64-headers/include/dls2.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dls2.h
rename to mingw-w64-headers/include/dls2.h
diff --git a/mingw-w64-headers/direct-x/include/dmdls.h b/mingw-w64-headers/include/dmdls.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dmdls.h
rename to mingw-w64-headers/include/dmdls.h
diff --git a/mingw-w64-headers/direct-x/include/dmerror.h b/mingw-w64-headers/include/dmerror.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dmerror.h
rename to mingw-w64-headers/include/dmerror.h
diff --git a/mingw-w64-headers/direct-x/include/dmo.h b/mingw-w64-headers/include/dmo.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dmo.h
rename to mingw-w64-headers/include/dmo.h
diff --git a/mingw-w64-headers/direct-x/include/dmodshow.h b/mingw-w64-headers/include/dmodshow.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dmodshow.h
rename to mingw-w64-headers/include/dmodshow.h
diff --git a/mingw-w64-headers/direct-x/include/dmodshow.idl b/mingw-w64-headers/include/dmodshow.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dmodshow.idl
rename to mingw-w64-headers/include/dmodshow.idl
diff --git a/mingw-w64-headers/direct-x/include/dmoreg.h b/mingw-w64-headers/include/dmoreg.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dmoreg.h
rename to mingw-w64-headers/include/dmoreg.h
diff --git a/mingw-w64-headers/direct-x/include/dmort.h b/mingw-w64-headers/include/dmort.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dmort.h
rename to mingw-w64-headers/include/dmort.h
diff --git a/mingw-w64-headers/direct-x/include/dmplugin.h b/mingw-w64-headers/include/dmplugin.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dmplugin.h
rename to mingw-w64-headers/include/dmplugin.h
diff --git a/mingw-w64-headers/direct-x/include/dmusbuff.h b/mingw-w64-headers/include/dmusbuff.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dmusbuff.h
rename to mingw-w64-headers/include/dmusbuff.h
diff --git a/mingw-w64-headers/direct-x/include/dmusicc.h b/mingw-w64-headers/include/dmusicc.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dmusicc.h
rename to mingw-w64-headers/include/dmusicc.h
diff --git a/mingw-w64-headers/direct-x/include/dmusicf.h b/mingw-w64-headers/include/dmusicf.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dmusicf.h
rename to mingw-w64-headers/include/dmusicf.h
diff --git a/mingw-w64-headers/direct-x/include/dmusici.h b/mingw-w64-headers/include/dmusici.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dmusici.h
rename to mingw-w64-headers/include/dmusici.h
diff --git a/mingw-w64-headers/direct-x/include/dmusics.h b/mingw-w64-headers/include/dmusics.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dmusics.h
rename to mingw-w64-headers/include/dmusics.h
diff --git a/mingw-w64-headers/direct-x/include/dpaddr.h b/mingw-w64-headers/include/dpaddr.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dpaddr.h
rename to mingw-w64-headers/include/dpaddr.h
diff --git a/mingw-w64-headers/direct-x/include/dplay.h b/mingw-w64-headers/include/dplay.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dplay.h
rename to mingw-w64-headers/include/dplay.h
diff --git a/mingw-w64-headers/direct-x/include/dplay8.h b/mingw-w64-headers/include/dplay8.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dplay8.h
rename to mingw-w64-headers/include/dplay8.h
diff --git a/mingw-w64-headers/direct-x/include/dplobby.h b/mingw-w64-headers/include/dplobby.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dplobby.h
rename to mingw-w64-headers/include/dplobby.h
diff --git a/mingw-w64-headers/direct-x/include/dplobby8.h b/mingw-w64-headers/include/dplobby8.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dplobby8.h
rename to mingw-w64-headers/include/dplobby8.h
diff --git a/mingw-w64-headers/direct-x/include/dpnathlp.h b/mingw-w64-headers/include/dpnathlp.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dpnathlp.h
rename to mingw-w64-headers/include/dpnathlp.h
diff --git a/mingw-w64-headers/direct-x/include/dsconf.h b/mingw-w64-headers/include/dsconf.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dsconf.h
rename to mingw-w64-headers/include/dsconf.h
diff --git a/mingw-w64-headers/direct-x/include/dsdriver.h b/mingw-w64-headers/include/dsdriver.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dsdriver.h
rename to mingw-w64-headers/include/dsdriver.h
diff --git a/mingw-w64-headers/direct-x/include/dshow.h b/mingw-w64-headers/include/dshow.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dshow.h
rename to mingw-w64-headers/include/dshow.h
diff --git a/mingw-w64-headers/direct-x/include/dsound.h b/mingw-w64-headers/include/dsound.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dsound.h
rename to mingw-w64-headers/include/dsound.h
diff --git a/mingw-w64-headers/direct-x/include/dvdevcod.h b/mingw-w64-headers/include/dvdevcod.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dvdevcod.h
rename to mingw-w64-headers/include/dvdevcod.h
diff --git a/mingw-w64-headers/direct-x/include/dvdmedia.h b/mingw-w64-headers/include/dvdmedia.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dvdmedia.h
rename to mingw-w64-headers/include/dvdmedia.h
diff --git a/mingw-w64-headers/direct-x/include/dxdiag.h b/mingw-w64-headers/include/dxdiag.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dxdiag.h
rename to mingw-w64-headers/include/dxdiag.h
diff --git a/mingw-w64-headers/direct-x/include/dxerr8.h b/mingw-w64-headers/include/dxerr8.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dxerr8.h
rename to mingw-w64-headers/include/dxerr8.h
diff --git a/mingw-w64-headers/direct-x/include/dxerr9.h b/mingw-w64-headers/include/dxerr9.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dxerr9.h
rename to mingw-w64-headers/include/dxerr9.h
diff --git a/mingw-w64-headers/direct-x/include/dxfile.h b/mingw-w64-headers/include/dxfile.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dxfile.h
rename to mingw-w64-headers/include/dxfile.h
diff --git a/mingw-w64-headers/direct-x/include/dxgi.h b/mingw-w64-headers/include/dxgi.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/dxgi.h
rename to mingw-w64-headers/include/dxgi.h
index 63f3c608..33249428 100644
--- a/mingw-w64-headers/direct-x/include/dxgi.h
+++ b/mingw-w64-headers/include/dxgi.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/dxgi.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/dxgi.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/dxgi.idl b/mingw-w64-headers/include/dxgi.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dxgi.idl
rename to mingw-w64-headers/include/dxgi.idl
diff --git a/mingw-w64-headers/direct-x/include/dxgi1_2.h b/mingw-w64-headers/include/dxgi1_2.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/dxgi1_2.h
rename to mingw-w64-headers/include/dxgi1_2.h
index 48af86b6..66bd47b6 100644
--- a/mingw-w64-headers/direct-x/include/dxgi1_2.h
+++ b/mingw-w64-headers/include/dxgi1_2.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/dxgi1_2.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/dxgi1_2.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/dxgi1_2.idl b/mingw-w64-headers/include/dxgi1_2.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dxgi1_2.idl
rename to mingw-w64-headers/include/dxgi1_2.idl
diff --git a/mingw-w64-headers/direct-x/include/dxgi1_3.h b/mingw-w64-headers/include/dxgi1_3.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/dxgi1_3.h
rename to mingw-w64-headers/include/dxgi1_3.h
index 390b3cf0..ea7ad2f8 100644
--- a/mingw-w64-headers/direct-x/include/dxgi1_3.h
+++ b/mingw-w64-headers/include/dxgi1_3.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/dxgi1_3.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/dxgi1_3.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/dxgi1_3.idl b/mingw-w64-headers/include/dxgi1_3.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dxgi1_3.idl
rename to mingw-w64-headers/include/dxgi1_3.idl
diff --git a/mingw-w64-headers/direct-x/include/dxgi1_4.h b/mingw-w64-headers/include/dxgi1_4.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/dxgi1_4.h
rename to mingw-w64-headers/include/dxgi1_4.h
index b51fb5c4..48624b3e 100644
--- a/mingw-w64-headers/direct-x/include/dxgi1_4.h
+++ b/mingw-w64-headers/include/dxgi1_4.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/dxgi1_4.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/dxgi1_4.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/dxgi1_4.idl b/mingw-w64-headers/include/dxgi1_4.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dxgi1_4.idl
rename to mingw-w64-headers/include/dxgi1_4.idl
diff --git a/mingw-w64-headers/direct-x/include/dxgi1_5.h b/mingw-w64-headers/include/dxgi1_5.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/dxgi1_5.h
rename to mingw-w64-headers/include/dxgi1_5.h
index c0bcbc0c..30e3a291 100644
--- a/mingw-w64-headers/direct-x/include/dxgi1_5.h
+++ b/mingw-w64-headers/include/dxgi1_5.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/dxgi1_5.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/dxgi1_5.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/dxgi1_5.idl b/mingw-w64-headers/include/dxgi1_5.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dxgi1_5.idl
rename to mingw-w64-headers/include/dxgi1_5.idl
diff --git a/mingw-w64-headers/direct-x/include/dxgi1_6.h b/mingw-w64-headers/include/dxgi1_6.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/dxgi1_6.h
rename to mingw-w64-headers/include/dxgi1_6.h
index af50afea..9c7f625f 100644
--- a/mingw-w64-headers/direct-x/include/dxgi1_6.h
+++ b/mingw-w64-headers/include/dxgi1_6.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/dxgi1_6.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/dxgi1_6.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/dxgi1_6.idl b/mingw-w64-headers/include/dxgi1_6.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dxgi1_6.idl
rename to mingw-w64-headers/include/dxgi1_6.idl
diff --git a/mingw-w64-headers/direct-x/include/dxgicommon.h b/mingw-w64-headers/include/dxgicommon.h
similarity index 95%
rename from mingw-w64-headers/direct-x/include/dxgicommon.h
rename to mingw-w64-headers/include/dxgicommon.h
index 99e2a951..dfddc783 100644
--- a/mingw-w64-headers/direct-x/include/dxgicommon.h
+++ b/mingw-w64-headers/include/dxgicommon.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/dxgicommon.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/dxgicommon.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/dxgicommon.idl b/mingw-w64-headers/include/dxgicommon.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dxgicommon.idl
rename to mingw-w64-headers/include/dxgicommon.idl
diff --git a/mingw-w64-headers/direct-x/include/dxgiformat.h b/mingw-w64-headers/include/dxgiformat.h
similarity index 98%
rename from mingw-w64-headers/direct-x/include/dxgiformat.h
rename to mingw-w64-headers/include/dxgiformat.h
index 81e7be65..f4964b8a 100644
--- a/mingw-w64-headers/direct-x/include/dxgiformat.h
+++ b/mingw-w64-headers/include/dxgiformat.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/dxgiformat.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/dxgiformat.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/dxgiformat.idl b/mingw-w64-headers/include/dxgiformat.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dxgiformat.idl
rename to mingw-w64-headers/include/dxgiformat.idl
diff --git a/mingw-w64-headers/direct-x/include/dxgitype.h b/mingw-w64-headers/include/dxgitype.h
similarity index 96%
rename from mingw-w64-headers/direct-x/include/dxgitype.h
rename to mingw-w64-headers/include/dxgitype.h
index 134bf43c..a556f9f7 100644
--- a/mingw-w64-headers/direct-x/include/dxgitype.h
+++ b/mingw-w64-headers/include/dxgitype.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/dxgitype.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/dxgitype.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/dxgitype.idl b/mingw-w64-headers/include/dxgitype.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/dxgitype.idl
rename to mingw-w64-headers/include/dxgitype.idl
diff --git a/mingw-w64-headers/direct-x/include/edevdefs.h b/mingw-w64-headers/include/edevdefs.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/edevdefs.h
rename to mingw-w64-headers/include/edevdefs.h
diff --git a/mingw-w64-headers/direct-x/include/errors.h b/mingw-w64-headers/include/errors.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/errors.h
rename to mingw-w64-headers/include/errors.h
diff --git a/mingw-w64-headers/direct-x/include/evcode.h b/mingw-w64-headers/include/evcode.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/evcode.h
rename to mingw-w64-headers/include/evcode.h
diff --git a/mingw-w64-headers/direct-x/include/mediaerr.h b/mingw-w64-headers/include/mediaerr.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/mediaerr.h
rename to mingw-w64-headers/include/mediaerr.h
diff --git a/mingw-w64-headers/include/mediaobj.h b/mingw-w64-headers/include/mediaobj.h
index f8956ade..8653780c 100644
--- a/mingw-w64-headers/include/mediaobj.h
+++ b/mingw-w64-headers/include/mediaobj.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 4.12.1 from include/mediaobj.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/mediaobj.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
@@ -18,6 +18,14 @@
 
 /* Forward declarations */
 
+#ifndef __IEnumDMO_FWD_DEFINED__
+#define __IEnumDMO_FWD_DEFINED__
+typedef interface IEnumDMO IEnumDMO;
+#ifdef __cplusplus
+interface IEnumDMO;
+#endif /* __cplusplus */
+#endif
+
 #ifndef __IMediaBuffer_FWD_DEFINED__
 #define __IMediaBuffer_FWD_DEFINED__
 typedef interface IMediaBuffer IMediaBuffer;
@@ -34,14 +42,6 @@ interface IMediaObject;
 #endif /* __cplusplus */
 #endif
 
-#ifndef __IEnumDMO_FWD_DEFINED__
-#define __IEnumDMO_FWD_DEFINED__
-typedef interface IEnumDMO IEnumDMO;
-#ifdef __cplusplus
-interface IEnumDMO;
-#endif /* __cplusplus */
-#endif
-
 #ifndef __IMediaObjectInPlace_FWD_DEFINED__
 #define __IMediaObjectInPlace_FWD_DEFINED__
 typedef interface IMediaObjectInPlace IMediaObjectInPlace;
@@ -50,6 +50,16 @@ interface IMediaObjectInPlace;
 #endif /* __cplusplus */
 #endif
 
+/* Headers for imported files */
+
+#include <unknwn.h>
+#include <objidl.h>
+#include <strmif.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 #ifndef __IDMOQualityControl_FWD_DEFINED__
 #define __IDMOQualityControl_FWD_DEFINED__
 typedef interface IDMOQualityControl IDMOQualityControl;
@@ -66,26 +76,6 @@ interface IDMOVideoOutputOptimizations;
 #endif /* __cplusplus */
 #endif
 
-/* Headers for imported files */
-
-#include <unknwn.h>
-#include <objidl.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/**
- * This file is part of the mingw-w64 runtime package.
- * No warranty is given; refer to the file DISCLAIMER within this package.
- */
-
-#include <winapifamily.h>
-
-
-#ifdef __strmif_h__
-typedef AM_MEDIA_TYPE DMO_MEDIA_TYPE;
-#else
 typedef struct _DMOMediaType {
     GUID majortype;
     GUID subtype;
@@ -97,67 +87,121 @@ typedef struct _DMOMediaType {
     ULONG cbFormat;
     BYTE *pbFormat;
 } DMO_MEDIA_TYPE;
+/*****************************************************************************
+ * IEnumDMO interface
+ */
+#ifndef __IEnumDMO_INTERFACE_DEFINED__
+#define __IEnumDMO_INTERFACE_DEFINED__
 
-typedef LONGLONG REFERENCE_TIME;
-#endif
+DEFINE_GUID(IID_IEnumDMO, 0x2c3cd98a, 0x2bfa, 0x4a53, 0x9c,0x27, 0x52,0x49,0xba,0x64,0xba,0x0f);
+#if defined(__cplusplus) && !defined(CINTERFACE)
+MIDL_INTERFACE("2c3cd98a-2bfa-4a53-9c27-5249ba64ba0f")
+IEnumDMO : public IUnknown
+{
+    virtual HRESULT STDMETHODCALLTYPE Next(
+        DWORD cItemsToFetch,
+        CLSID *pCLSID,
+        WCHAR **Names,
+        DWORD *pcItemsFetched) = 0;
 
-enum _DMO_INPUT_DATA_BUFFER_FLAGS {
-    DMO_INPUT_DATA_BUFFERF_SYNCPOINT = 0x1,
-    DMO_INPUT_DATA_BUFFERF_TIME = 0x2,
-    DMO_INPUT_DATA_BUFFERF_TIMELENGTH = 0x4,
-    DMO_INPUT_DATA_BUFFERF_DISCONTINUITY = 0x8
-};
+    virtual HRESULT STDMETHODCALLTYPE Skip(
+        DWORD cItemsToSkip) = 0;
 
-enum _DMO_OUTPUT_DATA_BUFFER_FLAGS {
-    DMO_OUTPUT_DATA_BUFFERF_SYNCPOINT = 0x1,
-    DMO_OUTPUT_DATA_BUFFERF_TIME = 0x2,
-    DMO_OUTPUT_DATA_BUFFERF_TIMELENGTH = 0x4,
-    DMO_OUTPUT_DATA_BUFFERF_DISCONTINUITY = 0x8,
-    DMO_OUTPUT_DATA_BUFFERF_INCOMPLETE = 0x1000000
-};
+    virtual HRESULT STDMETHODCALLTYPE Reset(
+        ) = 0;
 
-enum _DMO_INPUT_STATUS_FLAGS {
-    DMO_INPUT_STATUSF_ACCEPT_DATA = 0x1
-};
+    virtual HRESULT STDMETHODCALLTYPE Clone(
+        IEnumDMO **ppEnum) = 0;
 
-enum _DMO_INPUT_STREAM_INFO_FLAGS {
-    DMO_INPUT_STREAMF_WHOLE_SAMPLES = 0x1,
-    DMO_INPUT_STREAMF_SINGLE_SAMPLE_PER_BUFFER = 0x2,
-    DMO_INPUT_STREAMF_FIXED_SAMPLE_SIZE = 0x4,
-    DMO_INPUT_STREAMF_HOLDS_BUFFERS = 0x8
 };
+#ifdef __CRT_UUID_DECL
+__CRT_UUID_DECL(IEnumDMO, 0x2c3cd98a, 0x2bfa, 0x4a53, 0x9c,0x27, 0x52,0x49,0xba,0x64,0xba,0x0f)
+#endif
+#else
+typedef struct IEnumDMOVtbl {
+    BEGIN_INTERFACE
 
-enum _DMO_OUTPUT_STREAM_INFO_FLAGS {
-    DMO_OUTPUT_STREAMF_WHOLE_SAMPLES = 0x1,
-    DMO_OUTPUT_STREAMF_SINGLE_SAMPLE_PER_BUFFER = 0x2,
-    DMO_OUTPUT_STREAMF_FIXED_SAMPLE_SIZE = 0x4,
-    DMO_OUTPUT_STREAMF_DISCARDABLE = 0x8,
-    DMO_OUTPUT_STREAMF_OPTIONAL = 0x10
-};
+    /*** IUnknown methods ***/
+    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
+        IEnumDMO *This,
+        REFIID riid,
+        void **ppvObject);
 
-enum _DMO_SET_TYPE_FLAGS {
-    DMO_SET_TYPEF_TEST_ONLY = 0x1,
-    DMO_SET_TYPEF_CLEAR = 0x2
-};
+    ULONG (STDMETHODCALLTYPE *AddRef)(
+        IEnumDMO *This);
 
-enum _DMO_PROCESS_OUTPUT_FLAGS {
-    DMO_PROCESS_OUTPUT_DISCARD_WHEN_NO_BUFFER = 0x1
-};
+    ULONG (STDMETHODCALLTYPE *Release)(
+        IEnumDMO *This);
 
-#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
-enum _DMO_INPLACE_PROCESS_FLAGS {
-    DMO_INPLACE_NORMAL = 0x0,
-    DMO_INPLACE_ZERO = 0x1
-};
+    /*** IEnumDMO methods ***/
+    HRESULT (STDMETHODCALLTYPE *Next)(
+        IEnumDMO *This,
+        DWORD cItemsToFetch,
+        CLSID *pCLSID,
+        WCHAR **Names,
+        DWORD *pcItemsFetched);
 
-enum _DMO_QUALITY_STATUS_FLAGS {
-    DMO_QUALITY_STATUS_ENABLED = 0x1
-};
+    HRESULT (STDMETHODCALLTYPE *Skip)(
+        IEnumDMO *This,
+        DWORD cItemsToSkip);
 
-enum _DMO_VIDEO_OUTPUT_STREAM_FLAGS {
-    DMO_VOSF_NEEDS_PREVIOUS_SAMPLE = 0x1
+    HRESULT (STDMETHODCALLTYPE *Reset)(
+        IEnumDMO *This);
+
+    HRESULT (STDMETHODCALLTYPE *Clone)(
+        IEnumDMO *This,
+        IEnumDMO **ppEnum);
+
+    END_INTERFACE
+} IEnumDMOVtbl;
+
+interface IEnumDMO {
+    CONST_VTBL IEnumDMOVtbl* lpVtbl;
 };
 
+#ifdef COBJMACROS
+#ifndef WIDL_C_INLINE_WRAPPERS
+/*** IUnknown methods ***/
+#define IEnumDMO_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
+#define IEnumDMO_AddRef(This) (This)->lpVtbl->AddRef(This)
+#define IEnumDMO_Release(This) (This)->lpVtbl->Release(This)
+/*** IEnumDMO methods ***/
+#define IEnumDMO_Next(This,cItemsToFetch,pCLSID,Names,pcItemsFetched) (This)->lpVtbl->Next(This,cItemsToFetch,pCLSID,Names,pcItemsFetched)
+#define IEnumDMO_Skip(This,cItemsToSkip) (This)->lpVtbl->Skip(This,cItemsToSkip)
+#define IEnumDMO_Reset(This) (This)->lpVtbl->Reset(This)
+#define IEnumDMO_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
+#else
+/*** IUnknown methods ***/
+static FORCEINLINE HRESULT IEnumDMO_QueryInterface(IEnumDMO* This,REFIID riid,void **ppvObject) {
+    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
+}
+static FORCEINLINE ULONG IEnumDMO_AddRef(IEnumDMO* This) {
+    return This->lpVtbl->AddRef(This);
+}
+static FORCEINLINE ULONG IEnumDMO_Release(IEnumDMO* This) {
+    return This->lpVtbl->Release(This);
+}
+/*** IEnumDMO methods ***/
+static FORCEINLINE HRESULT IEnumDMO_Next(IEnumDMO* This,DWORD cItemsToFetch,CLSID *pCLSID,WCHAR **Names,DWORD *pcItemsFetched) {
+    return This->lpVtbl->Next(This,cItemsToFetch,pCLSID,Names,pcItemsFetched);
+}
+static FORCEINLINE HRESULT IEnumDMO_Skip(IEnumDMO* This,DWORD cItemsToSkip) {
+    return This->lpVtbl->Skip(This,cItemsToSkip);
+}
+static FORCEINLINE HRESULT IEnumDMO_Reset(IEnumDMO* This) {
+    return This->lpVtbl->Reset(This);
+}
+static FORCEINLINE HRESULT IEnumDMO_Clone(IEnumDMO* This,IEnumDMO **ppEnum) {
+    return This->lpVtbl->Clone(This,ppEnum);
+}
+#endif
+#endif
+
+#endif
+
+
+#endif  /* __IEnumDMO_INTERFACE_DEFINED__ */
+
 /*****************************************************************************
  * IMediaBuffer interface
  */
@@ -259,7 +303,6 @@ static FORCEINLINE HRESULT IMediaBuffer_GetBufferAndLength(IMediaBuffer* This,BY
 
 #endif  /* __IMediaBuffer_INTERFACE_DEFINED__ */
 
-
 typedef struct _DMO_OUTPUT_DATA_BUFFER {
     IMediaBuffer *pBuffer;
     DWORD dwStatus;
@@ -267,7 +310,20 @@ typedef struct _DMO_OUTPUT_DATA_BUFFER {
     REFERENCE_TIME rtTimelength;
 } DMO_OUTPUT_DATA_BUFFER;
 typedef struct _DMO_OUTPUT_DATA_BUFFER *PDMO_OUTPUT_DATA_BUFFER;
-
+enum _DMO_INPLACE_PROCESS_FLAGS {
+    DMO_INPLACE_NORMAL = 0x0,
+    DMO_INPLACE_ZERO = 0x1
+};
+enum _DMO_SET_TYPE_FLAGS {
+    DMO_SET_TYPEF_TEST_ONLY = 0x1,
+    DMO_SET_TYPEF_CLEAR = 0x2
+};
+enum _DMO_OUTPUT_DATA_BUFFERF_FLAGS {
+    DMO_OUTPUT_DATA_BUFFERF_SYNCPOINT = 0x1,
+    DMO_OUTPUT_DATA_BUFFERF_TIME = 0x2,
+    DMO_OUTPUT_DATA_BUFFERF_TIMELENGTH = 0x4,
+    DMO_OUTPUT_DATA_BUFFERF_INCOMPLETE = 0x1000000
+};
 /*****************************************************************************
  * IMediaObject interface
  */
@@ -618,123 +674,6 @@ static FORCEINLINE HRESULT IMediaObject_Lock(IMediaObject* This,LONG bLock) {
 
 #endif  /* __IMediaObject_INTERFACE_DEFINED__ */
 
-
-/*****************************************************************************
- * IEnumDMO interface
- */
-#ifndef __IEnumDMO_INTERFACE_DEFINED__
-#define __IEnumDMO_INTERFACE_DEFINED__
-
-DEFINE_GUID(IID_IEnumDMO, 0x2c3cd98a, 0x2bfa, 0x4a53, 0x9c,0x27, 0x52,0x49,0xba,0x64,0xba,0x0f);
-#if defined(__cplusplus) && !defined(CINTERFACE)
-MIDL_INTERFACE("2c3cd98a-2bfa-4a53-9c27-5249ba64ba0f")
-IEnumDMO : public IUnknown
-{
-    virtual HRESULT STDMETHODCALLTYPE Next(
-        DWORD cItemsToFetch,
-        CLSID *pCLSID,
-        LPWSTR *Names,
-        DWORD *pcItemsFetched) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE Skip(
-        DWORD cItemsToSkip) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE Reset(
-        ) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE Clone(
-        IEnumDMO **ppEnum) = 0;
-
-};
-#ifdef __CRT_UUID_DECL
-__CRT_UUID_DECL(IEnumDMO, 0x2c3cd98a, 0x2bfa, 0x4a53, 0x9c,0x27, 0x52,0x49,0xba,0x64,0xba,0x0f)
-#endif
-#else
-typedef struct IEnumDMOVtbl {
-    BEGIN_INTERFACE
-
-    /*** IUnknown methods ***/
-    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
-        IEnumDMO *This,
-        REFIID riid,
-        void **ppvObject);
-
-    ULONG (STDMETHODCALLTYPE *AddRef)(
-        IEnumDMO *This);
-
-    ULONG (STDMETHODCALLTYPE *Release)(
-        IEnumDMO *This);
-
-    /*** IEnumDMO methods ***/
-    HRESULT (STDMETHODCALLTYPE *Next)(
-        IEnumDMO *This,
-        DWORD cItemsToFetch,
-        CLSID *pCLSID,
-        LPWSTR *Names,
-        DWORD *pcItemsFetched);
-
-    HRESULT (STDMETHODCALLTYPE *Skip)(
-        IEnumDMO *This,
-        DWORD cItemsToSkip);
-
-    HRESULT (STDMETHODCALLTYPE *Reset)(
-        IEnumDMO *This);
-
-    HRESULT (STDMETHODCALLTYPE *Clone)(
-        IEnumDMO *This,
-        IEnumDMO **ppEnum);
-
-    END_INTERFACE
-} IEnumDMOVtbl;
-
-interface IEnumDMO {
-    CONST_VTBL IEnumDMOVtbl* lpVtbl;
-};
-
-#ifdef COBJMACROS
-#ifndef WIDL_C_INLINE_WRAPPERS
-/*** IUnknown methods ***/
-#define IEnumDMO_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
-#define IEnumDMO_AddRef(This) (This)->lpVtbl->AddRef(This)
-#define IEnumDMO_Release(This) (This)->lpVtbl->Release(This)
-/*** IEnumDMO methods ***/
-#define IEnumDMO_Next(This,cItemsToFetch,pCLSID,Names,pcItemsFetched) (This)->lpVtbl->Next(This,cItemsToFetch,pCLSID,Names,pcItemsFetched)
-#define IEnumDMO_Skip(This,cItemsToSkip) (This)->lpVtbl->Skip(This,cItemsToSkip)
-#define IEnumDMO_Reset(This) (This)->lpVtbl->Reset(This)
-#define IEnumDMO_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum)
-#else
-/*** IUnknown methods ***/
-static FORCEINLINE HRESULT IEnumDMO_QueryInterface(IEnumDMO* This,REFIID riid,void **ppvObject) {
-    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
-}
-static FORCEINLINE ULONG IEnumDMO_AddRef(IEnumDMO* This) {
-    return This->lpVtbl->AddRef(This);
-}
-static FORCEINLINE ULONG IEnumDMO_Release(IEnumDMO* This) {
-    return This->lpVtbl->Release(This);
-}
-/*** IEnumDMO methods ***/
-static FORCEINLINE HRESULT IEnumDMO_Next(IEnumDMO* This,DWORD cItemsToFetch,CLSID *pCLSID,LPWSTR *Names,DWORD *pcItemsFetched) {
-    return This->lpVtbl->Next(This,cItemsToFetch,pCLSID,Names,pcItemsFetched);
-}
-static FORCEINLINE HRESULT IEnumDMO_Skip(IEnumDMO* This,DWORD cItemsToSkip) {
-    return This->lpVtbl->Skip(This,cItemsToSkip);
-}
-static FORCEINLINE HRESULT IEnumDMO_Reset(IEnumDMO* This) {
-    return This->lpVtbl->Reset(This);
-}
-static FORCEINLINE HRESULT IEnumDMO_Clone(IEnumDMO* This,IEnumDMO **ppEnum) {
-    return This->lpVtbl->Clone(This,ppEnum);
-}
-#endif
-#endif
-
-#endif
-
-
-#endif  /* __IEnumDMO_INTERFACE_DEFINED__ */
-
-
 /*****************************************************************************
  * IMediaObjectInPlace interface
  */
@@ -840,226 +779,6 @@ static FORCEINLINE HRESULT IMediaObjectInPlace_GetLatency(IMediaObjectInPlace* T
 
 #endif  /* __IMediaObjectInPlace_INTERFACE_DEFINED__ */
 
-
-/*****************************************************************************
- * IDMOQualityControl interface
- */
-#ifndef __IDMOQualityControl_INTERFACE_DEFINED__
-#define __IDMOQualityControl_INTERFACE_DEFINED__
-
-DEFINE_GUID(IID_IDMOQualityControl, 0x65abea96, 0xcf36, 0x453f, 0xaf,0x8a, 0x70,0x5e,0x98,0xf1,0x62,0x60);
-#if defined(__cplusplus) && !defined(CINTERFACE)
-MIDL_INTERFACE("65abea96-cf36-453f-af8a-705e98f16260")
-IDMOQualityControl : public IUnknown
-{
-    virtual HRESULT STDMETHODCALLTYPE SetNow(
-        REFERENCE_TIME rtNow) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE SetStatus(
-        DWORD dwFlags) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE GetStatus(
-        DWORD *pdwFlags) = 0;
-
-};
-#ifdef __CRT_UUID_DECL
-__CRT_UUID_DECL(IDMOQualityControl, 0x65abea96, 0xcf36, 0x453f, 0xaf,0x8a, 0x70,0x5e,0x98,0xf1,0x62,0x60)
-#endif
-#else
-typedef struct IDMOQualityControlVtbl {
-    BEGIN_INTERFACE
-
-    /*** IUnknown methods ***/
-    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
-        IDMOQualityControl *This,
-        REFIID riid,
-        void **ppvObject);
-
-    ULONG (STDMETHODCALLTYPE *AddRef)(
-        IDMOQualityControl *This);
-
-    ULONG (STDMETHODCALLTYPE *Release)(
-        IDMOQualityControl *This);
-
-    /*** IDMOQualityControl methods ***/
-    HRESULT (STDMETHODCALLTYPE *SetNow)(
-        IDMOQualityControl *This,
-        REFERENCE_TIME rtNow);
-
-    HRESULT (STDMETHODCALLTYPE *SetStatus)(
-        IDMOQualityControl *This,
-        DWORD dwFlags);
-
-    HRESULT (STDMETHODCALLTYPE *GetStatus)(
-        IDMOQualityControl *This,
-        DWORD *pdwFlags);
-
-    END_INTERFACE
-} IDMOQualityControlVtbl;
-
-interface IDMOQualityControl {
-    CONST_VTBL IDMOQualityControlVtbl* lpVtbl;
-};
-
-#ifdef COBJMACROS
-#ifndef WIDL_C_INLINE_WRAPPERS
-/*** IUnknown methods ***/
-#define IDMOQualityControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
-#define IDMOQualityControl_AddRef(This) (This)->lpVtbl->AddRef(This)
-#define IDMOQualityControl_Release(This) (This)->lpVtbl->Release(This)
-/*** IDMOQualityControl methods ***/
-#define IDMOQualityControl_SetNow(This,rtNow) (This)->lpVtbl->SetNow(This,rtNow)
-#define IDMOQualityControl_SetStatus(This,dwFlags) (This)->lpVtbl->SetStatus(This,dwFlags)
-#define IDMOQualityControl_GetStatus(This,pdwFlags) (This)->lpVtbl->GetStatus(This,pdwFlags)
-#else
-/*** IUnknown methods ***/
-static FORCEINLINE HRESULT IDMOQualityControl_QueryInterface(IDMOQualityControl* This,REFIID riid,void **ppvObject) {
-    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
-}
-static FORCEINLINE ULONG IDMOQualityControl_AddRef(IDMOQualityControl* This) {
-    return This->lpVtbl->AddRef(This);
-}
-static FORCEINLINE ULONG IDMOQualityControl_Release(IDMOQualityControl* This) {
-    return This->lpVtbl->Release(This);
-}
-/*** IDMOQualityControl methods ***/
-static FORCEINLINE HRESULT IDMOQualityControl_SetNow(IDMOQualityControl* This,REFERENCE_TIME rtNow) {
-    return This->lpVtbl->SetNow(This,rtNow);
-}
-static FORCEINLINE HRESULT IDMOQualityControl_SetStatus(IDMOQualityControl* This,DWORD dwFlags) {
-    return This->lpVtbl->SetStatus(This,dwFlags);
-}
-static FORCEINLINE HRESULT IDMOQualityControl_GetStatus(IDMOQualityControl* This,DWORD *pdwFlags) {
-    return This->lpVtbl->GetStatus(This,pdwFlags);
-}
-#endif
-#endif
-
-#endif
-
-
-#endif  /* __IDMOQualityControl_INTERFACE_DEFINED__ */
-
-
-/*****************************************************************************
- * IDMOVideoOutputOptimizations interface
- */
-#ifndef __IDMOVideoOutputOptimizations_INTERFACE_DEFINED__
-#define __IDMOVideoOutputOptimizations_INTERFACE_DEFINED__
-
-DEFINE_GUID(IID_IDMOVideoOutputOptimizations, 0xbe8f4f4e, 0x5b16, 0x4d29, 0xb3,0x50, 0x7f,0x6b,0x5d,0x92,0x98,0xac);
-#if defined(__cplusplus) && !defined(CINTERFACE)
-MIDL_INTERFACE("be8f4f4e-5b16-4d29-b350-7f6b5d9298ac")
-IDMOVideoOutputOptimizations : public IUnknown
-{
-    virtual HRESULT STDMETHODCALLTYPE QueryOperationModePreferences(
-        ULONG ulOutputStreamIndex,
-        DWORD *pdwRequestedCapabilities) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE SetOperationMode(
-        ULONG ulOutputStreamIndex,
-        DWORD dwEnabledFeatures) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE GetCurrentOperationMode(
-        ULONG ulOutputStreamIndex,
-        DWORD *pdwEnabledFeatures) = 0;
-
-    virtual HRESULT STDMETHODCALLTYPE GetCurrentSampleRequirements(
-        ULONG ulOutputStreamIndex,
-        DWORD *pdwRequestedFeatures) = 0;
-
-};
-#ifdef __CRT_UUID_DECL
-__CRT_UUID_DECL(IDMOVideoOutputOptimizations, 0xbe8f4f4e, 0x5b16, 0x4d29, 0xb3,0x50, 0x7f,0x6b,0x5d,0x92,0x98,0xac)
-#endif
-#else
-typedef struct IDMOVideoOutputOptimizationsVtbl {
-    BEGIN_INTERFACE
-
-    /*** IUnknown methods ***/
-    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
-        IDMOVideoOutputOptimizations *This,
-        REFIID riid,
-        void **ppvObject);
-
-    ULONG (STDMETHODCALLTYPE *AddRef)(
-        IDMOVideoOutputOptimizations *This);
-
-    ULONG (STDMETHODCALLTYPE *Release)(
-        IDMOVideoOutputOptimizations *This);
-
-    /*** IDMOVideoOutputOptimizations methods ***/
-    HRESULT (STDMETHODCALLTYPE *QueryOperationModePreferences)(
-        IDMOVideoOutputOptimizations *This,
-        ULONG ulOutputStreamIndex,
-        DWORD *pdwRequestedCapabilities);
-
-    HRESULT (STDMETHODCALLTYPE *SetOperationMode)(
-        IDMOVideoOutputOptimizations *This,
-        ULONG ulOutputStreamIndex,
-        DWORD dwEnabledFeatures);
-
-    HRESULT (STDMETHODCALLTYPE *GetCurrentOperationMode)(
-        IDMOVideoOutputOptimizations *This,
-        ULONG ulOutputStreamIndex,
-        DWORD *pdwEnabledFeatures);
-
-    HRESULT (STDMETHODCALLTYPE *GetCurrentSampleRequirements)(
-        IDMOVideoOutputOptimizations *This,
-        ULONG ulOutputStreamIndex,
-        DWORD *pdwRequestedFeatures);
-
-    END_INTERFACE
-} IDMOVideoOutputOptimizationsVtbl;
-
-interface IDMOVideoOutputOptimizations {
-    CONST_VTBL IDMOVideoOutputOptimizationsVtbl* lpVtbl;
-};
-
-#ifdef COBJMACROS
-#ifndef WIDL_C_INLINE_WRAPPERS
-/*** IUnknown methods ***/
-#define IDMOVideoOutputOptimizations_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
-#define IDMOVideoOutputOptimizations_AddRef(This) (This)->lpVtbl->AddRef(This)
-#define IDMOVideoOutputOptimizations_Release(This) (This)->lpVtbl->Release(This)
-/*** IDMOVideoOutputOptimizations methods ***/
-#define IDMOVideoOutputOptimizations_QueryOperationModePreferences(This,ulOutputStreamIndex,pdwRequestedCapabilities) (This)->lpVtbl->QueryOperationModePreferences(This,ulOutputStreamIndex,pdwRequestedCapabilities)
-#define IDMOVideoOutputOptimizations_SetOperationMode(This,ulOutputStreamIndex,dwEnabledFeatures) (This)->lpVtbl->SetOperationMode(This,ulOutputStreamIndex,dwEnabledFeatures)
-#define IDMOVideoOutputOptimizations_GetCurrentOperationMode(This,ulOutputStreamIndex,pdwEnabledFeatures) (This)->lpVtbl->GetCurrentOperationMode(This,ulOutputStreamIndex,pdwEnabledFeatures)
-#define IDMOVideoOutputOptimizations_GetCurrentSampleRequirements(This,ulOutputStreamIndex,pdwRequestedFeatures) (This)->lpVtbl->GetCurrentSampleRequirements(This,ulOutputStreamIndex,pdwRequestedFeatures)
-#else
-/*** IUnknown methods ***/
-static FORCEINLINE HRESULT IDMOVideoOutputOptimizations_QueryInterface(IDMOVideoOutputOptimizations* This,REFIID riid,void **ppvObject) {
-    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
-}
-static FORCEINLINE ULONG IDMOVideoOutputOptimizations_AddRef(IDMOVideoOutputOptimizations* This) {
-    return This->lpVtbl->AddRef(This);
-}
-static FORCEINLINE ULONG IDMOVideoOutputOptimizations_Release(IDMOVideoOutputOptimizations* This) {
-    return This->lpVtbl->Release(This);
-}
-/*** IDMOVideoOutputOptimizations methods ***/
-static FORCEINLINE HRESULT IDMOVideoOutputOptimizations_QueryOperationModePreferences(IDMOVideoOutputOptimizations* This,ULONG ulOutputStreamIndex,DWORD *pdwRequestedCapabilities) {
-    return This->lpVtbl->QueryOperationModePreferences(This,ulOutputStreamIndex,pdwRequestedCapabilities);
-}
-static FORCEINLINE HRESULT IDMOVideoOutputOptimizations_SetOperationMode(IDMOVideoOutputOptimizations* This,ULONG ulOutputStreamIndex,DWORD dwEnabledFeatures) {
-    return This->lpVtbl->SetOperationMode(This,ulOutputStreamIndex,dwEnabledFeatures);
-}
-static FORCEINLINE HRESULT IDMOVideoOutputOptimizations_GetCurrentOperationMode(IDMOVideoOutputOptimizations* This,ULONG ulOutputStreamIndex,DWORD *pdwEnabledFeatures) {
-    return This->lpVtbl->GetCurrentOperationMode(This,ulOutputStreamIndex,pdwEnabledFeatures);
-}
-static FORCEINLINE HRESULT IDMOVideoOutputOptimizations_GetCurrentSampleRequirements(IDMOVideoOutputOptimizations* This,ULONG ulOutputStreamIndex,DWORD *pdwRequestedFeatures) {
-    return This->lpVtbl->GetCurrentSampleRequirements(This,ulOutputStreamIndex,pdwRequestedFeatures);
-}
-#endif
-#endif
-
-#endif
-
-
-#endif  /* __IDMOVideoOutputOptimizations_INTERFACE_DEFINED__ */
-
-#endif
 /* Begin additional prototypes for all interfaces */
 
 
diff --git a/mingw-w64-headers/include/mediaobj.idl b/mingw-w64-headers/include/mediaobj.idl
index 9172e1bb..77599214 100644
--- a/mingw-w64-headers/include/mediaobj.idl
+++ b/mingw-w64-headers/include/mediaobj.idl
@@ -1,175 +1,254 @@
-cpp_quote("/**")
-cpp_quote(" * This file is part of the mingw-w64 runtime package.")
-cpp_quote(" * No warranty is given; refer to the file DISCLAIMER within this package.")
-cpp_quote(" */")
-cpp_quote("")
-
-cpp_quote("#include <winapifamily.h>")
-cpp_quote("")
+/*
+ * Copyright (C) 2002 Alexandre Julliard
+ * Copyright (C) 2004 Vincent Béron
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
 
 import "unknwn.idl";
 import "objidl.idl";
-
-cpp_quote("")
-cpp_quote("#ifdef __strmif_h__")
-cpp_quote("typedef AM_MEDIA_TYPE DMO_MEDIA_TYPE;")
-cpp_quote("#else")
-typedef struct _DMOMediaType {
-  GUID majortype;
-  GUID subtype;
-  WINBOOL bFixedSizeSamples;
-  WINBOOL bTemporalCompression;
-  ULONG lSampleSize;
-  GUID formattype;
-  IUnknown *pUnk;
-  ULONG cbFormat;
-  [size_is (cbFormat)] BYTE *pbFormat;
+import "strmif.idl";
+
+interface IDMOQualityControl;
+interface IDMOVideoOutputOptimizations;
+
+typedef struct _DMOMediaType
+{
+    GUID majortype;
+    GUID subtype;
+    BOOL bFixedSizeSamples;
+    BOOL bTemporalCompression;
+    ULONG lSampleSize;
+    GUID formattype;
+    IUnknown *pUnk;
+    ULONG cbFormat;
+    BYTE *pbFormat;
 } DMO_MEDIA_TYPE;
 
-cpp_quote("")
-typedef LONGLONG REFERENCE_TIME;
-cpp_quote("#endif")
-
-cpp_quote("")
-enum _DMO_INPUT_DATA_BUFFER_FLAGS {
-  DMO_INPUT_DATA_BUFFERF_SYNCPOINT = 0x00000001,
-  DMO_INPUT_DATA_BUFFERF_TIME = 0x00000002,
-  DMO_INPUT_DATA_BUFFERF_TIMELENGTH = 0x00000004,
-  DMO_INPUT_DATA_BUFFERF_DISCONTINUITY = 0x00000008
-};
-
-cpp_quote("")
-enum _DMO_OUTPUT_DATA_BUFFER_FLAGS {
-  DMO_OUTPUT_DATA_BUFFERF_SYNCPOINT = 0x00000001,
-  DMO_OUTPUT_DATA_BUFFERF_TIME = 0x00000002,
-  DMO_OUTPUT_DATA_BUFFERF_TIMELENGTH = 0x00000004,
-  DMO_OUTPUT_DATA_BUFFERF_DISCONTINUITY = 0x00000008,
-  DMO_OUTPUT_DATA_BUFFERF_INCOMPLETE = 0x01000000
-};
-
-cpp_quote("")
-enum _DMO_INPUT_STATUS_FLAGS {
-  DMO_INPUT_STATUSF_ACCEPT_DATA = 0x00000001
-};
-
-cpp_quote("")
-enum _DMO_INPUT_STREAM_INFO_FLAGS {
-  DMO_INPUT_STREAMF_WHOLE_SAMPLES = 0x00000001,
-  DMO_INPUT_STREAMF_SINGLE_SAMPLE_PER_BUFFER = 0x00000002,
-  DMO_INPUT_STREAMF_FIXED_SAMPLE_SIZE = 0x00000004,
-  DMO_INPUT_STREAMF_HOLDS_BUFFERS = 0x00000008
-};
-
-cpp_quote("")
-enum _DMO_OUTPUT_STREAM_INFO_FLAGS {
-  DMO_OUTPUT_STREAMF_WHOLE_SAMPLES = 0x00000001,
-  DMO_OUTPUT_STREAMF_SINGLE_SAMPLE_PER_BUFFER = 0x00000002,
-  DMO_OUTPUT_STREAMF_FIXED_SAMPLE_SIZE = 0x00000004,
-  DMO_OUTPUT_STREAMF_DISCARDABLE = 0x00000008,
-  DMO_OUTPUT_STREAMF_OPTIONAL = 0x00000010
-};
+/*****************************************************************************
+ * IEnumDMO interface
+ */
+[
+    object,
+    uuid(2C3CD98A-2BFA-4A53-9C27-5249BA64BA0F),
+    pointer_default(unique)
+]
+interface IEnumDMO : IUnknown
+{
+    [local]
+    HRESULT Next(
+        [in] DWORD cItemsToFetch,
+        [out] CLSID *pCLSID,
+        [out] WCHAR **Names,
+        [out] DWORD *pcItemsFetched
+    );
+
+    HRESULT Skip(
+        [in] DWORD cItemsToSkip
+    );
+
+    HRESULT Reset();
+
+    HRESULT Clone(
+        [out] IEnumDMO **ppEnum
+    );
+}
 
-cpp_quote("")
-enum _DMO_SET_TYPE_FLAGS {
-  DMO_SET_TYPEF_TEST_ONLY = 0x00000001,
-  DMO_SET_TYPEF_CLEAR = 0x00000002
-};
+/*****************************************************************************
+ * IMediaBuffer interface
+ */
+[
+    object,
+    uuid(59eff8b9-938c-4a26-82f2-95cb84cdc837),
+    local
+]
+interface IMediaBuffer : IUnknown
+{
+    HRESULT SetLength(
+       DWORD cbLength
+    );
+
+    HRESULT GetMaxLength(
+       [out] DWORD *pcbMaxLength
+    );
+
+    HRESULT GetBufferAndLength(
+       [out] BYTE **ppBuffer,
+       [out] DWORD *pcbLength
+    );
+}
 
-cpp_quote("")
-enum _DMO_PROCESS_OUTPUT_FLAGS {
-  DMO_PROCESS_OUTPUT_DISCARD_WHEN_NO_BUFFER = 0x00000001
-};
+typedef struct _DMO_OUTPUT_DATA_BUFFER {
+    IMediaBuffer *pBuffer;
+    DWORD dwStatus;
+    REFERENCE_TIME rtTimestamp;
+    REFERENCE_TIME rtTimelength;
+} DMO_OUTPUT_DATA_BUFFER, *PDMO_OUTPUT_DATA_BUFFER;
 
-cpp_quote("")
-cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
 enum _DMO_INPLACE_PROCESS_FLAGS {
-  DMO_INPLACE_NORMAL = 0x00000000,
-  DMO_INPLACE_ZERO = 0x00000001
+    DMO_INPLACE_NORMAL = 0x00000000,
+    DMO_INPLACE_ZERO   = 0x00000001
 };
 
-cpp_quote("")
-enum _DMO_QUALITY_STATUS_FLAGS {
-  DMO_QUALITY_STATUS_ENABLED = 0x00000001
+enum _DMO_SET_TYPE_FLAGS {
+    DMO_SET_TYPEF_TEST_ONLY = 0x00000001,
+    DMO_SET_TYPEF_CLEAR     = 0x00000002,
 };
 
-cpp_quote("")
-enum _DMO_VIDEO_OUTPUT_STREAM_FLAGS {
-  DMO_VOSF_NEEDS_PREVIOUS_SAMPLE = 0x00000001
+enum _DMO_OUTPUT_DATA_BUFFERF_FLAGS {
+    DMO_OUTPUT_DATA_BUFFERF_SYNCPOINT   = 0x00000001,
+    DMO_OUTPUT_DATA_BUFFERF_TIME        = 0x00000002,
+    DMO_OUTPUT_DATA_BUFFERF_TIMELENGTH  = 0x00000004,
+    DMO_OUTPUT_DATA_BUFFERF_INCOMPLETE  = 0x01000000,
 };
 
-cpp_quote("")
-[object, local, uuid (59eff8b9-938c-4a26-82f2-95cb84cdc837)]
-interface IMediaBuffer : IUnknown {
-  HRESULT SetLength (DWORD cbLength);
-  HRESULT GetMaxLength ([out] DWORD *pcbMaxLength);
-  HRESULT GetBufferAndLength ([out] BYTE **ppBuffer,[out] DWORD *pcbLength);
+/*****************************************************************************
+ * IMediaObject interface
+ */
+[
+    object,
+    uuid(d8ad0f58-5494-4102-97c5-ec798e59bcf4),
+    local
+]
+interface IMediaObject : IUnknown
+{
+    HRESULT GetStreamCount(
+        [out] DWORD *pcInputStreams,
+        [out] DWORD *pcOutputStreams
+    );
+
+    HRESULT GetInputStreamInfo(
+        DWORD dwInputStreamIndex,
+        [out] DWORD *pdwFlags
+    );
+
+    HRESULT GetOutputStreamInfo(
+        DWORD dwOutputStreamIndex,
+        [out] DWORD *pdwFlags
+    );
+
+    HRESULT GetInputType(
+        DWORD dwInputStreamIndex,
+        DWORD dwTypeIndex,
+        [out] DMO_MEDIA_TYPE *pmt
+    );
+
+    HRESULT GetOutputType(
+        DWORD dwOutputStreamIndex,
+        DWORD dwTypeIndex,
+        [out] DMO_MEDIA_TYPE *pmt
+    );
+
+    HRESULT SetInputType(
+        DWORD dwInputStreamIndex,
+        [in] const DMO_MEDIA_TYPE *pmt,
+        DWORD dwFlags
+    );
+
+    HRESULT SetOutputType(
+        DWORD dwOutputStreamIndex,
+        [in] const DMO_MEDIA_TYPE *pmt,
+        DWORD dwFlags
+    );
+
+    HRESULT GetInputCurrentType(
+        DWORD dwInputStreamIndex,
+        [out] DMO_MEDIA_TYPE *pmt
+    );
+
+    HRESULT GetOutputCurrentType(
+        DWORD dwOutputStreamIndex,
+        [out] DMO_MEDIA_TYPE *pmt
+    );
+
+    HRESULT GetInputSizeInfo(
+        DWORD dwInputStreamIndex,
+        [out] DWORD *pcbSize,
+        [out] DWORD *pcbMaxLookahead,
+        [out] DWORD *pcbAlignment
+    );
+
+    HRESULT GetOutputSizeInfo(
+        DWORD dwOutputStreamIndex,
+        [out] DWORD *pcbSize,
+        [out] DWORD *pcbAlignment
+    );
+
+    HRESULT GetInputMaxLatency(
+        DWORD dwInputStreamIndex,
+        [out] REFERENCE_TIME *prtMaxLatency
+    );
+
+    HRESULT SetInputMaxLatency(
+        DWORD dwInputStreamIndex,
+        REFERENCE_TIME rtMaxLatency
+    );
+
+    HRESULT Flush();
+
+    HRESULT Discontinuity(DWORD dwInputStreamIndex);
+
+    HRESULT AllocateStreamingResources();
+
+    HRESULT FreeStreamingResources();
+
+    HRESULT GetInputStatus(
+        DWORD dwInputStreamIndex,
+        [out] DWORD *dwFlags
+    );
+
+    HRESULT ProcessInput(
+        DWORD dwInputStreamIndex,
+        IMediaBuffer *pBuffer,
+        DWORD dwFlags,
+        REFERENCE_TIME rtTimestamp,
+        REFERENCE_TIME rtTimelength
+    );
+
+    HRESULT ProcessOutput(
+        DWORD dwFlags,
+        DWORD cOutputBufferCount,
+        [in,out] DMO_OUTPUT_DATA_BUFFER *pOutputBuffers,
+        [out] DWORD *pdwStatus
+    );
+
+    HRESULT Lock(LONG bLock);
 }
 
-cpp_quote("")
-typedef struct _DMO_OUTPUT_DATA_BUFFER {
-  IMediaBuffer *pBuffer;
-  DWORD dwStatus;
-  REFERENCE_TIME rtTimestamp;
-  REFERENCE_TIME rtTimelength;
-} DMO_OUTPUT_DATA_BUFFER,*PDMO_OUTPUT_DATA_BUFFER;
-
-cpp_quote("")
-[object, local, uuid (d8ad0f58-5494-4102-97c5-ec798e59bcf4)]
-interface IMediaObject : IUnknown {
-  HRESULT GetStreamCount ([out] DWORD *pcInputStreams,[out] DWORD *pcOutputStreams);
-  HRESULT GetInputStreamInfo (DWORD dwInputStreamIndex,[out] DWORD *pdwFlags);
-  HRESULT GetOutputStreamInfo (DWORD dwOutputStreamIndex,[out] DWORD *pdwFlags);
-  HRESULT GetInputType (DWORD dwInputStreamIndex, DWORD dwTypeIndex,[out] DMO_MEDIA_TYPE *pmt);
-  HRESULT GetOutputType (DWORD dwOutputStreamIndex, DWORD dwTypeIndex,[out] DMO_MEDIA_TYPE *pmt);
-  HRESULT SetInputType (DWORD dwInputStreamIndex,[in] const DMO_MEDIA_TYPE *pmt, DWORD dwFlags);
-  HRESULT SetOutputType (DWORD dwOutputStreamIndex,[in] const DMO_MEDIA_TYPE *pmt, DWORD dwFlags);
-  HRESULT GetInputCurrentType (DWORD dwInputStreamIndex,[out] DMO_MEDIA_TYPE *pmt);
-  HRESULT GetOutputCurrentType (DWORD dwOutputStreamIndex,[out] DMO_MEDIA_TYPE *pmt);
-  HRESULT GetInputSizeInfo (DWORD dwInputStreamIndex,[out] DWORD *pcbSize,[out] DWORD *pcbMaxLookahead,[out] DWORD *pcbAlignment);
-  HRESULT GetOutputSizeInfo (DWORD dwOutputStreamIndex,[out] DWORD *pcbSize,[out] DWORD *pcbAlignment);
-  HRESULT GetInputMaxLatency (DWORD dwInputStreamIndex,[out] REFERENCE_TIME *prtMaxLatency);
-  HRESULT SetInputMaxLatency (DWORD dwInputStreamIndex, REFERENCE_TIME rtMaxLatency);
-  HRESULT Flush ();
-  HRESULT Discontinuity (DWORD dwInputStreamIndex);
-  HRESULT AllocateStreamingResources ();
-  HRESULT FreeStreamingResources ();
-  HRESULT GetInputStatus (DWORD dwInputStreamIndex,[out] DWORD *dwFlags);
-  HRESULT ProcessInput (DWORD dwInputStreamIndex, IMediaBuffer *pBuffer, DWORD dwFlags, REFERENCE_TIME rtTimestamp, REFERENCE_TIME rtTimelength);
-  HRESULT ProcessOutput (DWORD dwFlags, DWORD cOutputBufferCount,[in, out, size_is (cOutputBufferCount)]DMO_OUTPUT_DATA_BUFFER *pOutputBuffers,[out] DWORD *pdwStatus);
-  HRESULT Lock (LONG bLock);
-};
+/*****************************************************************************
+ * IMediaObjectInPlace interface
+ */
 
-cpp_quote("")
-[object, local, uuid (2c3cd98a-2bfa-4a53-9c27-5249ba64ba0f)]
-interface IEnumDMO : IUnknown {
-  HRESULT Next (DWORD cItemsToFetch,[out, size_is (cItemsToFetch), length_is (*pcItemsFetched)] CLSID *pCLSID,[out, size_is (cItemsToFetch), length_is (*pcItemsFetched), string] LPWSTR *Names,[out] DWORD *pcItemsFetched);
-  HRESULT Skip (DWORD cItemsToSkip);
-  HRESULT Reset (void);
-  HRESULT Clone ([out] IEnumDMO **ppEnum);
-}
-
-cpp_quote("")
-[object, local, uuid (651b9ad0-0fc7-4aa9-9538-d89931010741)]
+[
+    object,
+    uuid(651b9ad0-0fc7-4aa9-9538-d89931010741),
+    local
+]
 interface IMediaObjectInPlace : IUnknown {
-  HRESULT Process ([in] ULONG ulSize,[in, out, size_is (ulSize)] BYTE *pData,[in] REFERENCE_TIME refTimeStart,[in] DWORD dwFlags);
-  HRESULT Clone ([out] IMediaObjectInPlace **ppMediaObject);
-  HRESULT GetLatency ([out] REFERENCE_TIME *pLatencyTime);
-}
-
-cpp_quote("")
-[object, local, uuid (65abea96-cf36-453f-af8a-705e98f16260)]
-interface IDMOQualityControl : IUnknown {
-  HRESULT SetNow ([in] REFERENCE_TIME rtNow);
-  HRESULT SetStatus ([in] DWORD dwFlags);
-  HRESULT GetStatus ([out] DWORD *pdwFlags);
-}
-
-cpp_quote("")
-[object, local, uuid (be8f4f4e-5b16-4d29-b350-7f6b5d9298ac)]
-interface IDMOVideoOutputOptimizations : IUnknown {
-  HRESULT QueryOperationModePreferences (ULONG ulOutputStreamIndex, DWORD *pdwRequestedCapabilities);
-  HRESULT SetOperationMode (ULONG ulOutputStreamIndex, DWORD dwEnabledFeatures);
-  HRESULT GetCurrentOperationMode (ULONG ulOutputStreamIndex, DWORD *pdwEnabledFeatures);
-  HRESULT GetCurrentSampleRequirements (ULONG ulOutputStreamIndex, DWORD *pdwRequestedFeatures);
+    HRESULT Process(
+        [in] ULONG ulSize,
+        [in,out] BYTE* pData,
+        [in] REFERENCE_TIME refTimeStart,
+        [in] DWORD dwFlags
+    );
+
+    HRESULT Clone(
+        [out] IMediaObjectInPlace **ppMediaObject
+    );
+
+    HRESULT GetLatency(
+        [out] REFERENCE_TIME *pLatencyTime
+    );
 }
-cpp_quote("#endif")
diff --git a/mingw-w64-headers/direct-x/include/medparam.h b/mingw-w64-headers/include/medparam.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/medparam.h
rename to mingw-w64-headers/include/medparam.h
diff --git a/mingw-w64-headers/direct-x/include/medparam.idl b/mingw-w64-headers/include/medparam.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/medparam.idl
rename to mingw-w64-headers/include/medparam.idl
diff --git a/mingw-w64-headers/direct-x/include/mmstream.h b/mingw-w64-headers/include/mmstream.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/mmstream.h
rename to mingw-w64-headers/include/mmstream.h
index e0a08a67..522c6745 100644
--- a/mingw-w64-headers/direct-x/include/mmstream.h
+++ b/mingw-w64-headers/include/mmstream.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/mmstream.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/mmstream.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/mmstream.idl b/mingw-w64-headers/include/mmstream.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/mmstream.idl
rename to mingw-w64-headers/include/mmstream.idl
diff --git a/mingw-w64-headers/direct-x/include/qedit.h b/mingw-w64-headers/include/qedit.h
similarity index 99%
rename from mingw-w64-headers/direct-x/include/qedit.h
rename to mingw-w64-headers/include/qedit.h
index 00b32ec9..99a6bc81 100644
--- a/mingw-w64-headers/direct-x/include/qedit.h
+++ b/mingw-w64-headers/include/qedit.h
@@ -1,4 +1,4 @@
-/*** Autogenerated by WIDL 5.0-rc1 from direct-x/include/qedit.idl - Do not edit ***/
+/*** Autogenerated by WIDL 5.0-rc1 from include/qedit.idl - Do not edit ***/
 
 #ifdef _WIN32
 #ifndef __REQUIRED_RPCNDR_H_VERSION__
diff --git a/mingw-w64-headers/direct-x/include/qedit.idl b/mingw-w64-headers/include/qedit.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/qedit.idl
rename to mingw-w64-headers/include/qedit.idl
diff --git a/mingw-w64-headers/direct-x/include/qnetwork.h b/mingw-w64-headers/include/qnetwork.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/qnetwork.h
rename to mingw-w64-headers/include/qnetwork.h
diff --git a/mingw-w64-headers/direct-x/include/qnetwork.idl b/mingw-w64-headers/include/qnetwork.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/qnetwork.idl
rename to mingw-w64-headers/include/qnetwork.idl
diff --git a/mingw-w64-headers/direct-x/include/vfwmsgs.h b/mingw-w64-headers/include/vfwmsgs.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/vfwmsgs.h
rename to mingw-w64-headers/include/vfwmsgs.h
diff --git a/mingw-w64-headers/direct-x/include/vmr9.h b/mingw-w64-headers/include/vmr9.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/vmr9.h
rename to mingw-w64-headers/include/vmr9.h
diff --git a/mingw-w64-headers/direct-x/include/vmr9.idl b/mingw-w64-headers/include/vmr9.idl
similarity index 100%
rename from mingw-w64-headers/direct-x/include/vmr9.idl
rename to mingw-w64-headers/include/vmr9.idl
diff --git a/mingw-w64-headers/direct-x/include/xinput.h b/mingw-w64-headers/include/xinput.h
similarity index 100%
rename from mingw-w64-headers/direct-x/include/xinput.h
rename to mingw-w64-headers/include/xinput.h
diff --git a/mingw-w64-headers/wine-import.sh b/mingw-w64-headers/wine-import.sh
index 06bdd744..4b49b078 100755
--- a/mingw-w64-headers/wine-import.sh
+++ b/mingw-w64-headers/wine-import.sh
@@ -43,75 +43,34 @@ import_idl() {
 }
 
 # headers
-for f in \
-	corerror.h \
-	mscat.h \
-	propkey.h \
-	propkeydef.h \
-	rpcsal.h \
-	t2embapi.h \
-	uiautomation.h \
-	uiautomationcoreapi.h \
-	winhttp.h \
-	winineti.h; do
-    import_header $f include
-done
-
-# IDLs
-for f in \
-	ctfutb \
-	devicetopology \
-	downloadmgr \
-	drmexternals \
-	endpointvolume \
-	fusion \
-	icftypes \
-	mmdeviceapi \
-	mscoree \
-	msctf \
-	netfw \
-	netlistmgr \
-	objectarray \
-	optary \
-	taskschd \
-	uiautomationclient \
-	uiautomationcore \
-	urlhist \
-	wmdrmsdk \
-	wmsbuffer \
-	wmsdkidl \
-	wpcapi \
-	xmllite; do
-    import_idl $f.idl include
-done
-
-# DirectX headers
 for f in \
 	amaudio.h \
 	audevcod.h \
-	d3d.h \
+	corerror.h \
 	d3d10_1shader.h \
 	d3d10effect.h \
 	d3d10misc.h \
 	d3d10shader.h \
 	d3d11shader.h \
-	d3d8.h \
 	d3d8caps.h \
+	d3d8.h \
 	d3d8types.h \
-	d3d9.h \
 	d3d9caps.h \
+	d3d9.h \
 	d3d9types.h \
 	d3dcaps.h \
 	d3dcompiler.h \
+	d3d.h \
 	d3dhal.h \
-	d3drm.h \
 	d3drmdef.h \
+	d3drm.h \
 	d3drmobj.h \
 	d3dtypes.h \
-	d3dx9.h \
+	d3dvec.inl \
 	d3dx9anim.h \
 	d3dx9core.h \
 	d3dx9effect.h \
+	d3dx9.h \
 	d3dx9math.h \
 	d3dx9math.inl \
 	d3dx9mesh.h \
@@ -119,7 +78,6 @@ for f in \
 	d3dx9shape.h \
 	d3dx9tex.h \
 	d3dx9xof.h \
-	d3dvec.inl \
 	dls1.h \
 	dls2.h \
 	dmerror.h \
@@ -133,10 +91,10 @@ for f in \
 	dmusici.h \
 	dmusics.h \
 	dpaddr.h \
-	dplay.h \
 	dplay8.h \
-	dplobby.h \
+	dplay.h \
 	dplobby8.h \
+	dplobby.h \
 	dpnathlp.h \
 	dshow.h \
 	dvdmedia.h \
@@ -147,16 +105,26 @@ for f in \
 	errors.h \
 	evcode.h \
 	mediaerr.h \
+	mscat.h \
+	propkeydef.h \
+	propkey.h \
+	rpcsal.h \
+	t2embapi.h \
+	uiautomationcoreapi.h \
+	uiautomation.h \
 	vfwmsgs.h \
-	xinput.h; do
-    import_header $f direct-x/include
+	winhttp.h \
+	winineti.h \
+        xinput.h; do
+    import_header $f include
 done
 
-# DirectX IDLs
+# IDLs
 for f in \
 	amstream \
 	amvideo \
 	austream \
+	ctfutb \
 	d3d10 \
 	d3d10_1 \
 	d3d10sdklayers \
@@ -168,19 +136,41 @@ for f in \
 	d3d11sdklayers \
 	d3dcommon \
 	ddstream \
+	devicetopology \
+	downloadmgr \
+	drmexternals \
 	dxgi \
 	dxgi1_2 \
 	dxgi1_3 \
 	dxgi1_4 \
 	dxgi1_5 \
 	dxgi1_6 \
-	mediaobj \
 	dxgicommon \
 	dxgiformat \
 	dxgitype \
+	endpointvolume \
+	fusion \
+	icftypes \
+	mediaobj \
+	mmdeviceapi \
 	mmstream \
-	qedit; do
-    import_idl $f.idl direct-x/include
+	mscoree \
+	msctf \
+	netfw \
+	netlistmgr \
+	objectarray \
+	optary \
+	qedit \
+	taskschd \
+	uiautomationclient \
+	uiautomationcore \
+	urlhist \
+	wmdrmsdk \
+	wmsbuffer \
+	wmsdkidl \
+	wpcapi \
+	xmllite; do
+    import_idl $f.idl include
 done
 
 echo Import complete. You need to update headers generated from IDL files now:

_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to