summaryrefslogtreecommitdiffstats
path: root/stream
diff options
context:
space:
mode:
authorreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2010-01-02 17:41:11 +0000
committerreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2010-01-02 17:41:11 +0000
commit12760fc513cb66f0fd39536c35a5898b6cc19498 (patch)
tree92ef075e02539a4fe44564acedb4c7e95c1ff1b7 /stream
parentf4f37e555a0fd2041009cbf431ea9ec58203f5de (diff)
downloadmpv-12760fc513cb66f0fd39536c35a5898b6cc19498.tar.bz2
mpv-12760fc513cb66f0fd39536c35a5898b6cc19498.tar.xz
Several hacks to fix compilation of tvi_dshow on MinGW64.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30169 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'stream')
-rw-r--r--stream/tvi_dshow.c5
-rw-r--r--stream/tvi_dshow.h16
2 files changed, 21 insertions, 0 deletions
diff --git a/stream/tvi_dshow.c b/stream/tvi_dshow.c
index 97fb5f0d5f..46accd81ed 100644
--- a/stream/tvi_dshow.c
+++ b/stream/tvi_dshow.c
@@ -89,6 +89,11 @@
#include "tvi_dshow.h"
+#ifndef STDCALL
+// mingw64 needs this
+#define STDCALL __stdcall
+#endif
+
static tvi_handle_t *tvi_init_dshow(tv_param_t* tv_param);
/*
diff --git a/stream/tvi_dshow.h b/stream/tvi_dshow.h
index dc5a7c3741..3dea9d348a 100644
--- a/stream/tvi_dshow.h
+++ b/stream/tvi_dshow.h
@@ -434,6 +434,8 @@ DECLARE_INTERFACE(IAMCrossbar)
STDMETHOD(get_CrossbarPinInfo) (THIS_ BOOL, long, long *, long *);
};
+#ifndef __IPropertyBag_INTERFACE_DEFINED__
+#define __IPropertyBag_INTERFACE_DEFINED__
#undef INTERFACE
#define INTERFACE IPropertyBag
DECLARE_INTERFACE(IPropertyBag)
@@ -444,6 +446,7 @@ DECLARE_INTERFACE(IPropertyBag)
STDMETHOD(Read) (THIS_ LPCOLESTR, LPVARIANT, LPERRORLOG);
STDMETHOD(Write) (THIS_ LPCOLESTR, LPVARIANT);
};
+#endif
#undef INTERFACE
#define INTERFACE IAMStreamConfig
@@ -678,6 +681,19 @@ DECLARE_INTERFACE(IVideoWindow)
STDMETHOD(IsCursorHidden) (THIS_ long *);
};
+#ifndef DECLARE_ENUMERATOR_
+#define DECLARE_ENUMERATOR_(I,T) \
+ DECLARE_INTERFACE_(I,IUnknown) \
+ { \
+ STDMETHOD(QueryInterface)(I*, REFIID,PVOID*); \
+ STDMETHOD_(ULONG,AddRef)(I*); \
+ STDMETHOD_(ULONG,Release)(I*); \
+ STDMETHOD(Next)(I*, ULONG,T*,ULONG*); \
+ STDMETHOD(Skip)(I*, ULONG); \
+ STDMETHOD(Reset)(I*); \
+ STDMETHOD(Clone)(I*, I**); \
+ }
+#endif
DECLARE_ENUMERATOR_(IEnumFilters, LPBASEFILTER);
DECLARE_ENUMERATOR_(IEnumPins, LPPIN);
DECLARE_ENUMERATOR_(IEnumMediaTypes, AM_MEDIA_TYPE *);