‼️ Native Windows MIDI Services with MetaServer (Windows 11) — Setup Guide

Native Windows MIDI Services with MetaServer (Windows 11) — Setup Guide

If you’re on Windows 11 and want MetaServer to use native Windows MIDI ports instead of loopMIDI, here’s a working setup. Big thanks to @triplebrett for documenting the steps that got it running.

Background — why this is needed (click to expand)

Recent Windows 11 updates introduced the new Windows MIDI Services stack (MIDI 2.0, plus a rebuilt MIDI 1.0 layer). This is a Windows-side change — it’s what has been breaking loopMIDI for many users, and it’s also what provides the native loopback ports used below.

The native Basic Loopback endpoints are designed to work like loopMIDI, and once configured are available to both MIDI 1.0 and MIDI 2.0 apps. The components are still rolling out in phases and the loopback piece is currently preview-stage, so a manual install is needed for now.


Before you start

You’ll need a recent Windows 11 build with Windows MIDI Services enabled. @triplebrett was on build 26200; the relevant security update in that thread was KB5074105.

:warning: If you don’t see native MIDI ports after install, an outdated build is the most likely reason. Make sure you’re fully up to date first.


Steps

:information_source: Reboot after the final step at minimum. Rebooting between steps is safest.

1. Enable Developer Mode Search “developer mode” in Windows Settings and switch it on. This isn’t cosmetic — the preview loopback plugin is unsigned, and Windows only loads unsigned service plugins when Developer Mode is on. Without it, the plugin won’t load.

2. Get the latest Windows build In Windows Update, install any optional/pending updates so you’re on the newest build. Enabling “get the latest updates as soon as they’re available” helps.

3. Install MIDI 1.0 Basic Loopback From Microsoft’s official repo: Releases · microsoft/MIDI · GitHub Download and install the MIDI 1.0 Basic Loopback service plugin. (This plugin is what creates the loopMIDI-style ports — the SDK runtime alone won’t.)

4. Install the Network MIDI 2.0 preview From: Release Network MIDI 2.0 Spring 2026 · microsoft/MIDI · GitHub Install the Windows.MIDI.Services.MIDI2.0.Preview… package.

5. Install the SDK Runtime and Tools Download the current SDK Runtime and Tools package from Microsoft’s official page: About Windows MIDI Services - Windows MIDI Services

:information_source: Update (thanks to Pete from Microsoft, below): the official download is About Windows MIDI Services - Windows MIDI Services, not winget. The winget package (Microsoft.WindowsMIDIServicesSDK) was uploaded by a community member and is currently outdated — it doesn’t track the latest release. @triplebrett got it working via winget, but the official page is the version you want.

6. Set the service to run as Local System Open services.msc, scroll to Windows MIDI Services, right-click → Properties, and set it to log on as Local System account.

:white_check_mark: This step is important — it’s what let MetaServer actually see the native ports.

Then reboot. After that, MetaServer should enumerate the native Windows MIDI ports and you can disable loopMIDI.


A note on the loopMIDI startup error

If both loopMIDI and MetaServer launch at startup, MetaServer can start before loopMIDI has created its ports — so it doesn’t see them (and you get the loopMIDI error even when loopMIDI is running).

Restarting MetaServer once loopMIDI is up resolves it. Moving to native Windows MIDI removes this race condition entirely.


:memo: This is a preview-stage Windows feature, so steps may change as Microsoft finalises the rollout. Per Pete from Microsoft (see below), over the next few months the SDK — and the MIDI 1.0 loopback support — are planned to ship in-box with Windows, so the separate download should eventually no longer be required. There’s no firm date yet, and breaking API changes are expected along the way. We’ll keep this post updated and add it to the Help Guide.

2 Likes

One more thing to add that helps. Run ‘services.msc’ and right click on Windows Midi services and click properties. Change Startup to Automatic (Delayed Start)

The go-to site for all things relating to the new Windows Midi Services is https://aka.ms/mididiscord

Pete Brown, the Microsoft project manager for Native Windows Midi Services, set this up and posts regularly. There’s setups, workarounds, news of developments, resources, reporting of issues etc.

For example:
"Fix for loopMIDI/rtpMIDI/IP-MIDI etc and workaround for Hangs with inMusic/AKAI/Rane/NuMark/m-audio etc. drivers

The update is now rolling out in Windows 11 via 30-day CFR starting on April 30, finishing by May 30. CFRs are explained here: key-release-updates

⁠Symptoms: loopMIDI/rtpMIDI/loopBE/SSL/AVID/ipMIDI/NI DAW etc ports do not show up in apps. Symptoms: Cubase and other apps hang at “initializing MIDI” and you have an inMusic device connected.

Be sure to keep up to date with your Windows Updates to receive this fix. I’ve removed the link to the workaround from here because the better choice is to get the in-box version."

2 Likes

Hey all. Excited to see this!

I found this because one of the MetaGrid/MetaServer customers ran into a MIDI detection issue and posted on our Discord server.

Just a note: the official download for the current Windows MIDI Service SDK and Tools is About Windows MIDI Services - Windows MIDI Services , not the winget link. Someone listed an older SDK version in winget, and last I checked, had not updated it to the rc4 version.

As explained on the Discord server, over the next few months, we will be putting the SDK (not the MIDI Settings app or Console) into Windows so no download will be required for that. (Current plan is for this to also include the MIDI 1 loopback support for SDK and Service.) There are breaking API changes there based on feedback, and although it’s not an officially supported scenario, the downloadable and in-box SDKs should coexist while you move to the in-box version.

Any questions? Windows MIDI / Audio

Pete
Microsoft

2 Likes

Thank you Mister, Finaly my Windows Midi App is here and now can make my midi loopback with the new system… Thank you Mr Psychlist1972 (again…:wink: )

1 Like

Thank you, Pete — really appreciate you stepping in directly, and the correction is noted. I’ve updated our guide to point to About Windows MIDI Services - Windows MIDI Services as the canonical source rather than the winget package.

And congratulations to you and the team on Windows MIDI Services — it’s a genuinely impressive piece of work. Bringing proper MIDI 2.0, multi-client support, and a modern SDK to Windows while keeping decades of MIDI 1.0 apps and devices working is no small feat, and the UMP-centric design with transparent translation is exactly the kind of foundation the platform has needed for a long time.

We also fully appreciate how hard this is to roll out — shipping something this fundamental across the entire Windows install base, in phases, while iterating on breaking API changes from community feedback, is a serious undertaking. The out-of-band SDK approach makes a lot of sense given that.

Looking forward to the in-box SDK and loopback support landing down the line — that’ll make life much simpler for our users. Thanks again your reply on this forum.

1 Like

Early adopter to Pete’s fixes here. I had everything working with Reaper/Metaserver/Metagrid under Windows 11 updated MIDI.

I have been using native Windows MIDI ports using metaserver 5.1.8. Just updated to metaserver 6 and it isn’t working. It looks like it should be but it’s not. I guess metaserver 6 thought i was running with loopmidi ports, but I wasn’t. It asked if I wanted to change to the new midi ports so i said ok. I saw that it created it’s own midi ports. Ok, but they didn’t work. I noticed that under integration (Reaper) it said incomplete. It wasn’t, it’s been fine. But i imported the keymap anyway. Nothing.

Ok, so I reverted to the ‘old’ ports. Everything is working again.

Metaserver still thinks I’m on the old loopmidi, but I’m not. It thinks the ports I assigned are loopMidi ports, but they are not.

The option to switch to native midi ports is still there, but again, it doesn’t work for some reason. When i turn it on, I see the ports it creates, but they don’t get used.

Under integrations, it shows Reaper “Setup Incomplete”. But it isn’t, because it’s working.

These are the Windows Midi ports in the new windows midi settings (pic below) that I created for 5.1.8.

So for now, I’m on Metaserver 6 using my own ‘custom’ native Windows MIDI ports.

The UI in metaserver doesn’t provide any indication why the new midi ports weren’t working. I couldn’t see anyway to troubleshoot it. For now, I’ll stick with what I have.

I write this in the hopes that devs can stremline the migration process for someone already using native windows Midi.

Some more thoughts regarding Win 11:

  • Metaserver does not start with Windows, even though I have the box checked.
  • Checking for a new version provides no feedback.
  • The tray icon shows WiFi and USB as online, but the app shows USB as idle.
  • Still thinks I’m using LoopMidi ports and prompts me to use Windows MIDI services, even though I am (from early hotfixes provided by Pete from Microsoft).
  • Reaper integration shows as ‘setup incomplete’, but it was previously setup on the older versions of Metaserver, and I have all the custom macros/keymaps imported and it works.

@biped Are you on MetaServer 6.0.2?

Yes, confirmed: 6.02 (you can see it my screenshot above)