diff loader/module.c @ 13745:3db10035d297

Windows media video advanced profile (wmva) support via binary codec
author rtognimp
date Sun, 24 Oct 2004 00:29:57 +0000
parents 3c7d56b95a5a
children f5537cc95b02
line wrap: on
line diff
--- a/loader/module.c	Sat Oct 23 22:43:19 2004 +0000
+++ b/loader/module.c	Sun Oct 24 00:29:57 2004 +0000
@@ -471,6 +471,20 @@
           }
         }
 
+        // Windows Media Video 9 Advanced
+        if (strstr(libname,"wmvadvd.dll") && wm)
+        {
+          // The codec calls IsRectEmpty with coords 0,0,0,0 => result is 0
+          // but it really wants the rectangle to be not empty
+          if (PE_FindExportedFunction(wm, "CreateInstance", TRUE)==(void*)0x08c4b812) {
+            // Dll version is 10.0.0.3645
+            *((char*)0x08c48b0f)=0xeb; // Jump always, ignoring IsRectEmpty result
+          } else {
+            fprintf(stderr, "Unsupported WMVA version\n");
+            return 0;
+          }
+        }
+
 	if (strstr(libname,"QuickTime.qts") && wm)
 	{
 	    void** ptr;