[Bug 47362] New: Media Feature Pack for W10N requires rtworkq.dll

wine-bugs at winehq.org wine-bugs at winehq.org
Fri Jun 14 05:20:43 CDT 2019


https://bugs.winehq.org/show_bug.cgi?id=47362

            Bug ID: 47362
           Summary: Media Feature Pack for W10N requires rtworkq.dll
           Product: Wine
           Version: 4.10
          Hardware: x86-64
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: -unknown
          Assignee: wine-bugs at winehq.org
          Reporter: tonix64 at inventati.org
      Distribution: ---

I've tried installing the dlls from:

https://www.microsoft.com/en-us/software-download/mediafeaturepack (1803
version)

The feature pack has all the mfplat dlls, including wmv decoders, msmpeg etc so
it could be a good way to install the needed dlls for many games without
getting them from dodgy places in the internet.

It seems for basic installation and registration of the components a component
unavailable in wine is needed: RTWorkQ.dll.

Initially it will complain about some missing methods but incrementally adding
them will in the end use these (I just hooked random methods that looked like
would return good stub results and would result in safe parameter use, so this
is just intended as reference, not as a solution proposal :D):

@ stub RtwqLockWorkQueue
@ stub RtwqUnlockWorkQueue
@ stdcall RtwqRegisterPlatformEvents(ptr) kernel32.RequestDeviceWakeup
@ stdcall RtwqStartup() propsys.PSRefreshPropertySchema
@ stdcall RtwqJoinWorkQueue(long ptr ptr) kernel32.SetThreadIdealProcessorEx
@ stdcall RtwqLockPlatform() propsys.PSRefreshPropertySchema
@ stdcall RtwqUnlockPlatform() propsys.PSRefreshPropertySchema

There's a couple other minor methods/dlls that seem to be required I think just
some forwards from currently also not existing
api-ms-win-core-processtopology-l1-1-0.

If RtWorkQ can be implemented at least as a proof of concept I could further
test this path and maybe get the different mfplat scenarios working. I don't
have enough wine/c expertise to actually implement it but I have some expertise
in getting mfplat scenarios working.

For now with the spoofed forwards the dlls allow for games to load and progress
a bit but it's going to hang waiting for some event probably due to the
incomplete work queue.

I also tried installing a rtworkq.dll from windows, but I don't know of a legit
redistributable that carries this, and also when trying it (version 10.XXX) I
had to add loads more of api-ms style dlls so in the end implementing
rtworkq.dll seems like a more direct fix.

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list