summaryrefslogtreecommitdiffstats
path: root/loader
diff options
context:
space:
mode:
authorrtogni <rtogni@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-06-05 18:41:01 +0000
committerrtogni <rtogni@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-06-05 18:41:01 +0000
commitc7ff0c643adacf98337710a451762755d492c6f4 (patch)
treef45ecf07ea1c052d738087d90adc381c29fac281 /loader
parentfbae2ba72b4d0b34c69d71e98208acd04c639fb5 (diff)
downloadmpv-c7ff0c643adacf98337710a451762755d492c6f4.tar.bz2
mpv-c7ff0c643adacf98337710a451762755d492c6f4.tar.xz
Support WVC1 decoding via dmo binary codec wvc1dmod.dll
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18581 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'loader')
-rw-r--r--loader/win32.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/loader/win32.c b/loader/win32.c
index e756d1e4bc..2b11c2a158 100644
--- a/loader/win32.c
+++ b/loader/win32.c
@@ -3750,6 +3750,16 @@ static WIN_BOOL WINAPI expGetProcessAffinityMask(HANDLE hProcess,
return 1;
}
+// Fake implementation: does nothing, but does it right :)
+static WIN_BOOL WINAPI expSetProcessAffinityMask(HANDLE hProcess,
+ LPDWORD dwProcessAffinityMask)
+{
+ dbgprintf("SetProcessAffinityMask(0x%x, 0x%x) => 1\n",
+ hProcess, dwProcessAffinityMask);
+
+ return 1;
+};
+
static int WINAPI expMulDiv(int nNumber, int nNumerator, int nDenominator)
{
static const long long max_int=0x7FFFFFFFLL;
@@ -4778,6 +4788,14 @@ static double exp_CIsin(void)
return sin(x);
}
+static double exp_CIsqrt(void)
+{
+ FPU_DOUBLE(x);
+
+ dbgprintf("_CIsqrt(%lf)\n", x);
+ return sqrt(x);
+}
+
/* Needed by rp8 sipr decoder */
static LPSTR WINAPI expCharNextA(LPCSTR ptr)
{
@@ -4786,6 +4804,13 @@ static LPSTR WINAPI expCharNextA(LPCSTR ptr)
return (LPSTR)(ptr + 1);
}
+// Fake implementation, needed by wvc1dmod.dll
+static int WINAPI expPropVariantClear(void *pvar)
+{
+// dbgprintf("PropVariantclear (0x%08x), %s\n", ptr, ptr);
+ return 1;
+}
+
struct exports
{
char name[64];
@@ -4957,6 +4982,7 @@ struct exports exp_kernel32[]=
FF(ExitProcess,-1)
{"LoadLibraryExA", -1, (void*)&LoadLibraryExA},
FF(SetThreadIdealProcessor,-1)
+ FF(SetProcessAffinityMask, -1)
};
struct exports exp_msvcrt[]={
@@ -4999,6 +5025,7 @@ struct exports exp_msvcrt[]={
FF(_CIpow,-1)
FF(_CIcos,-1)
FF(_CIsin,-1)
+ FF(_CIsqrt,-1)
FF(ldexp,-1)
FF(frexp,-1)
FF(sprintf,-1)
@@ -5119,6 +5146,7 @@ struct exports exp_ole32[]={
FF(CoTaskMemAlloc, -1)
FF(CoTaskMemFree, -1)
FF(StringFromGUID2, -1)
+ FF(PropVariantClear, -1)
};
// do we really need crtdll ???
// msvcrt is the correct place probably...