Windows Multimedia Wrapper for CoolSoft VMS

It seems you're using an AdBlocker or JavaScript is disabled!

This sites offers only FREE software and it's supported by a few advertisement boxes (no intrusive popups).

This 10 seconds wait is to let you update your AdBlocker whitelist...

Got it, show me the content...
Please enable JavaScript!
Posts: 102
Joined: 8 Mar 2014 - 22:29
Windows Multimedia Wrapper for CoolSoft VMS

Hi Claudio!
I recently managed to create a working prototype of my Windows Multimedia Wrapper for VirtualMIDISynth.

The main purpose of the wrapper is to reduce the latency caused by the WinMM lib in Windows 8 and later (which got messed up by Microsoft for some reason), and to also reduce the huge overhead present in the midiOutShortMsg function (which causes both latency and performance issues, the latter being clearly evident when playing Black MIDIs).

Again, this is a proof of concept, and the actual source code isn't yet available on GitHub. If you're interested in implementing it, I'll be happy to either upload the source code, or give it privately to you.

To test it, just place one of the binaries next to the application you want to try, and rename it to "winmm.dll".

Download: https://github.com/KeppySoftware/WinMMWRP/releases/tag/4.2A

Posts: 102
Joined: 8 Mar 2014 - 22:29
Re: Windows Multimedia Wrapper for CoolSoft VMS

Here's a video which shows the performance gain produced by the wrapper.

Please do not watch if you suffer from epilepsy: https://youtu.be/IKm_BLRKRas

Posts: 1536
Joined: 25 Mar 2012 - 01:19
Re: Windows Multimedia Wrapper for CoolSoft VMS

Sounds interesting!

AFAIU the patched winmm.dll should be placed beside MIDI client binary (player), right?
Or does the patched version need to be placed beside VirtualMIDISynth.dll too?

Posts: 102
Joined: 8 Mar 2014 - 22:29
Re: Windows Multimedia Wrapper for CoolSoft VMS
coolsoft wrote:

Sounds interesting!

AFAIU the patched winmm.dll should be placed beside MIDI client binary (player), right?
Or does the patched version need to be placed beside VirtualMIDISynth.dll too?

It's not really a patched WinMM, it's more like a wrapper which replaces most MIDI out functions with its own (and forwards them to the real WinMM in the DAW version, when required).

The wrapper files need to be moved in the same folder as the target MIDI app, as shown here:

Posts: 1536
Joined: 25 Mar 2012 - 01:19
Re: Windows Multimedia Wrapper for CoolSoft VMS

Yes, that's what I supposed.
Sadly it's a client-side patch, so it must be applied to each installed MIDI client...

Posts: 102
Joined: 8 Mar 2014 - 22:29
Re: Windows Multimedia Wrapper for CoolSoft VMS

You could implement something similar to my configurator, and allow users to patch and unpatch programs at their will.