Some games with support for the haptic feedback and speaker features of the Sony DualSense controller select the controller's audio output by filtering on the ContainerId IMMDevice property to find one that matches the controller's HID's.
While MRs !359 and !360 implement getting the ContainerID of the IMMDevice, this MR implements getting the ContainerID from the HID device.
As for !360, I marked this MR as a draft because I understand that the way the ���GUID��� is generated is far from ideal. Furthermore, there is code duplication with !360 in the way the container's sysfspath is found and how a GUID is generated from it, so moving that part elsewhere would make sense. But as for !360, I think I will need help with those tasks.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/535
And discard irrelevant parts in select request. We currently store something in CTX_PENDING and ignore it later in select request if we're currently running in wow context.
--
v5: ntdll/tests: Add tests for setting context on unsuspended thread.
server: Store both contexts in pending context object.
https://gitlab.winehq.org/wine/wine/-/merge_requests/3566
Which I intend to use to support (and rewrite) instrument / wave downloads.
--
v2: dmusic: Implement IDirectMusicPortDownload_GetBuffer.
dmusic: Implement IDirectMusicPortDownload_(Download|Unload).
dmusic: Implement IDirectMusicPortDownload_AllocateBuffer.
dmusic: Implement synth port IDirectMusicPortDownload_GetDLId.
dmusic: Rename IDirectMusicDownloadImpl method prefix to download.
dmusic: Move IDirectMusicDownloadImpl struct to where it is used.
dmusic: Simplify and cleanup IDirectMusicDownload constructor.
dmusic: Always return S_FALSE from DllCanUnloadNow.
dmusic/tests: Test IDirectMusicPort_(Download|Unload)Instrument.
dmusic/tests: Test IDirectMusic(Port)Download interfaces.
include: Fix incorrect IDirectMusicPortDownload_Unload macro.
https://gitlab.winehq.org/wine/wine/-/merge_requests/3722