What happened to MIDI Mapper on Windows 8 (and later)?
The number of help requests I'm getting from Windows 8 users trying to use MIDI programs is growing day by day.
I've done some research and tests on the arguments, but the available documentation is really "poor" (confirming my feeling about Microsoft intention to drop it out).
This is what I've find out.
Let's get back to Windows XP era, where MIDI was "exposed" to the public and it had its own place into "Sound and Multimedia" control panel application.
Users were able to configure their preferred MIDI out device, and this settings was used by MIDIMapper, a special MIDI out device bundled with XP.
This device was not a real device, but a sort of "pipe": it receives a MIDI stream on its input and drive it to an user configured (real) MIDI out device.
MIDIMapper, as said, was bundled with Windows, installed as MIDI device #0 and preconfigured to use the first available "real" device (see below).
Another MIDI device was bundled, the well known Microsoft GS Wavetable Synth (MGWS from now on).
MGWS is a (low quality) software wave synth, installed as MIDI out device #1.
So on Windows XP, programmers had 2 well known devices: #0 (MIDIMapper) and #1 (MGWS), the former preconfigured to use the latter.
When a MIDI software (i.e. your MIDI player) starts playing, it should select a MIDI out device otherwise #0 is used.
There are a lot of softwares around without this setting available (think about game emulators and Active Movie based players, like Windows Media Player and MediaPlayer classic): they all use #0 by default.
Device #0 is MIDIMapper --> MIDIMapper is configured to use MGWS --> MGWS will play your MIDI.
This chain worked well: default users had a working MIDI synthesis out of the box.
It all worked up to Windows 7, but getting worst version by version:
- Windows XP: device #0 is MIDIMapper, #1 is MGWS and so on
- Windows Vista / 7: same as above, but MIDIMapper configuration disappeared from control panel (registry settings were still available, so some third part tools were released as workaround)
- Windows 8/10: no more MIDIMapper... go further reading!
On Windows 8 the MIDIMapper device has been completely removed so MIDI softwares are now REQUIRED to select a specific device (no selection still means #0).
I wrote "REQUIRED" because, worst of all, MGWS is now installed with some sort of "dynamic" ID: #0 out of the box, but it becomes #1 if you install another one (like VirtualMIDISynth or an USB MIDI device). I suppose device numbering is now done alphabetically, but I can't confirm it.
Anyway #0 won't lead to a well known situation like in pre-Windows 8 era; #0 could be MGWS or any other one.
The only way to select a specific device is use a MIDI software with a configuration option to select a device.
If you don't have it (and your software will use #0), you're out of luck: your software will use the first in the devices list...
That's why next VirtualMIDISynth versions will have MIDIMapper setting disabled on Windows 8.
Starting from 1.8 a new setting will be added to allow the selection of Active Movie based players MIDI out device.
I tried to explain my findings in a non technical way; feel free to post your comments.
An althernative to the missing MIDIMapper could be the new CoolSoft MIDIMapper, an althernative MIDIMapper for Windows 8 and newer.
It can be used alone (with its own configurator) or together with the new VirtualMIDISynth 2.
Check it out here.
Thanks for your comprehension and enjoy CoolSoft.
- .NET Framework
- WEB / PHP
- Translate software
Click here if you want to support CoolSoft: