Since Cubase 12, “WinRT MIDI” has appeared as a MIDI driver option. WinRT MIDI is a new standard for Windows’ MIDI system, offering appealing features compared to the conventional “MME (Win32 MIDI),” such as native support for Bluetooth MIDI. However, a troublesome issue called “MMCSS error” has been reported, primarily on the official forums, among Cubase users. This article will explain the following points about WinRT MIDI:
- How it has evolved compared to the traditional MME?
- What are the benefits?
- What are the causes and countermeasures for the MMCSS error that occurs in Cubase?
- And, what is the even newer standard, “Windows MIDI Services”?
- What is WinRT MIDI? Evolution Points from MME
- Benefits of WinRT MIDI
- What is the “MMCSS Error” Occurring with Cubase × WinRT MIDI?
- MMCSS Error Solutions and Workarounds
- Are WinRT MIDI Compatibility and Stability Still Under Development?
- Newly Emerging “Windows MIDI Services”
- Final Thoughts ~ How Should Cubase Users Deal with WinRT MIDI?
What is WinRT MIDI? Evolution Points from MME
Traditional Standard API “MME (Win32 MIDI)” and Its Limitations
For many years, the API (interface for exchanging data) called “MME (MultiMedia Extensions)” or “Win32 MIDI” has supported Windows’ MIDI processing. Many DAWs and MIDI devices are compatible with this, and it has a stable track record. However, with the changes of the times, several challenges have become apparent:
- No native support for Bluetooth MIDI: Often requires separate software or drivers.
- Weak Plug and Play: Sometimes requires restarting the PC when connecting or disconnecting devices.
- Limited multi-client functionality: Basically, only one application can use one MIDI port at a time. (Example: Cannot use the same MIDI interface in a standalone synth editor while Cubase is running.)
- Old design: Not optimized for the latest PC environments, and some bugs remain that cannot be fixed by the application side. (Example: In some cases, the process cannot be terminated correctly, so Cubase’s termination process may rarely freeze under specific conditions.)
Next-Generation API “WinRT MIDI (UWP MIDI)” Appears
To solve these MME challenges and provide a more modern MIDI environment, “WinRT MIDI (Windows Runtime MIDI API / UWP MIDI API)” was introduced starting with Windows 10. WinRT MIDI was developed aiming for improvements such as:
- Improved performance and lower latency
- Native support for Bluetooth MIDI
- Enhanced Plug and Play functionality
- Multi-client support
In Cubase, there is a “Use WinRT MIDI” checkbox in the settings screen, allowing you to choose whether to use this new API.
Benefits of WinRT MIDI
Enhanced Plug and Play
Problems like “MIDI device connected but not recognized” or “driver installed but not working” are common initial setup issues with DAWs. With WinRT MIDI, enhanced Plug and Play functionality has eliminated the need for manual driver installation or PC restarts in many cases. You can use a MIDI device immediately after connecting it to a USB port, allowing you to proceed smoothly with your work without interrupting your creative inspiration.
Native Support for Bluetooth MIDI
It is no exaggeration to say this is the biggest highlight feature of WinRT MIDI. You can connect Bluetooth MIDI keyboards and controllers directly to Windows without third-party software or complex settings. Wireless connection of MIDI devices allows you to tidy up studio cable management or improve freedom in live performances. Furthermore, using apps available on the Microsoft Store like “BLE-MIDI Connect” may make connection management even easier. Importantly, Microsoft only supports Bluetooth Low Energy (BLE) MIDI devices via the WinRT/UWP API, so if you want to use wireless MIDI on Windows, WinRT MIDI is essentially required.
Multi-Client Support Allows Simultaneous Access
With WinRT MIDI, multiple applications can simultaneously access a single MIDI interface or device. Therefore, you can edit synth sounds with a separate standalone app while creating a song in Cubase, or use a MIDI controller setting tool and a DAW simultaneously. You no longer have to bother closing applications or switching settings every time, as was the case with MME, and workflow freedom is significantly improved.
What is the “MMCSS Error” Occurring with Cubase × WinRT MIDI?
WinRT MIDI offers many benefits, but there is a point particularly noteworthy for Cubase users: the “MMCSS priority cannot be set” error. This error indicates that the number of available MMCSS threads has reached its limit, warning of the possibility of audio dropouts or performance degradation.
What is MMCSS?
MMCSS (Multimedia Class Scheduler Service) is a Windows service that prioritizes the execution of real-time critical processes (time-constrained tasks) like audio and MIDI over other tasks. MMCSS plays a very important role in ensuring that DAWs play and record sound smoothly without interruptions. Cubase also utilizes MMCSS to ensure stable operation even with high CPU load projects.
Why Does the Error Occur When Using WinRT MIDI?
According to Steinberg’s official information, the cause of the error is that the number of available MMCSS threads has reached its upper limit. When WinRT MIDI is enabled in Cubase, Windows creates multiple MMCSS threads for each connected active MIDI input port. If you have many MIDI devices connected, this alone consumes many threads. Cubase itself also creates MMCSS threads for each logical CPU core for audio processing. Thus, with recent multi-core CPUs, this alone accounts for a considerable number of threads. As a result, if the total number of threads used by WinRT MIDI and Cubase exceeds Windows’ default MMCSS thread limit (usually 32), the “MMCSS priority cannot be set” error occurs. This problem is particularly likely to occur in environments with many MIDI input ports and a high-core-count CPU.
MMCSS Error Solutions and Workarounds
If you encounter an MMCSS error in Cubase, try the following countermeasures:
Countermeasure ①: Increase Thread Limit with MMCSS Tool
Steinberg provides a dedicated tool “MMCSS Tool (SetMaxMMCSSThreads.exe)” to address this problem. Download the tool from Steinberg’s website (the link to the tool is on the official page below).
Run the tool and increase the maximum number of MMCSS threads from the default 32 to 64, 96, or 128 (starting with 64 is recommended. Increasing unnecessarily may affect performance). After setting and restarting your PC, Cubase with WinRT MIDI should be able to secure the necessary number of threads, resolving the error in many cases.
Countermeasure ②: Organize Unnecessary MIDI Ports
If you have many unused MIDI input ports enabled, they can consume MMCSS threads. Open Cubase’s “Studio Setup” > “MIDI Port Setup” and uncheck the “Show” column for any MIDI input ports you are not currently using to hide them (physically disconnecting MIDI devices is also effective).
Alternative: Disable WinRT MIDI and Return to MME
If the MMCSS Tool does not resolve the issue or if WinRT features like Bluetooth MIDI are not essential, disabling WinRT MIDI and returning to the traditional MME (Win32 MIDI) is an option. Although MME is an older standard, it is well-established and generally highly stable. Serious problems are unlikely to occur during normal use, making it a recommended conservative choice. Open Cubase’s “Studio Setup” > “MIDI Port Setup”, uncheck “Use WinRT MIDI” (or similar item name), and restart Cubase. This will avoid the MMCSS error but means you cannot utilize WinRT MIDI benefits (native Bluetooth support, multi-client support, etc.).
Advanced: Disable Hyper-Threading/SMT
This is a slightly more advanced countermeasure. By disabling Hyper-Threading (Intel) or SMT (AMD) in your PC’s UEFI/BIOS settings, you can reduce the number of logical cores recognized by the OS, thereby reducing the number of MMCSS threads required by Cubase. However, this can affect overall system performance, so proceed only if you fully understand the implications. This countermeasure is only preferable in situations where Bluetooth MIDI is essential or most connected MIDI devices are must-haves, and the CPU is the only element that can reduce the number of threads (i.e., MME is not an option).
Are WinRT MIDI Compatibility and Stability Still Under Development?
WinRT MIDI is a relatively new technology and may not work perfectly in all environments. Issues like the following have been reported on online forums:
- MIDI port names like “MIDI” are too generic and difficult to distinguish.
- Compatibility issues with older MIDI hardware.
- Bluetooth MIDI devices not being recognized or connections being unstable.
- Hang notes (notes stopping or sustaining indefinitely) and timing shifts occurring.
- Conflicts with virtual MIDI ports (like loopMIDI).
- Cubase becoming unstable or crashing when WinRT MIDI is enabled.
Of course, many users are benefiting from WinRT MIDI without problems. However, it is important to remember that compatibility issues can arise depending on the combination of your PC environment, OS version, MIDI devices, and Cubase version.
Newly Emerging “Windows MIDI Services”
WinRT MIDI might be considered a transitional technology. Microsoft is currently developing “Windows MIDI Services” as the next-generation foundation for MIDI processing in Windows. This is a significant evolution from MME and WinRT MIDI, and the following features are expected:
- Complete MIDI stack refresh: Improved performance, stability, and reliability.
- Full MIDI 2.0 support: Compatibility with high-resolution MIDI messages, per-note expression, etc.
- Native multi-client: Standard support for all MIDI devices.
- MMCSS-independent design: Expected to fundamentally resolve the MMCSS error issue in Cubase.
- More robust Bluetooth MIDI support
- Extensibility: Easy support for new MIDI transmission methods (like Network MIDI).
- Open source: Increased transparency and community contribution to development.
Windows MIDI Services is currently (as of May 2025) in the public preview stage, but it is expected to become the standard Windows MIDI system in the future. Once it is officially released and DAWs support it, the MIDI environment in Windows will become even more robust and comfortable.

Final Thoughts ~ How Should Cubase Users Deal with WinRT MIDI?
We have taken a detailed look at WinRT MIDI. Finally, let’s summarize how Cubase users should approach it.
Here are the key takeaways:
- Understand your current status: First, check if WinRT MIDI is enabled in your Cubase settings.
- If an MMCSS error occurs:
Top Priority: Use Steinberg’s “MMCSS Tool” to increase the thread limit.
Second Best: Organize unnecessary MIDI ports (hide or disconnect).
Alternative: Disable WinRT MIDI and return to MME (with feature limitations). - If you want to use Bluetooth MIDI, WinRT MIDI is essential. If the connection is unstable, try updating your PC’s Bluetooth driver, using a helper app like “BLE-MIDI Connect,” or checking Steinberg’s official information.
- If you observe unstable behavior with WinRT MIDI, returning to MME is a valid option to prioritize stability rather than forcing its use.
- Keep an eye on the developments of the “Windows MIDI Services” expected to be implemented in the future. Its widespread adoption could resolve many issues like the MMCSS error problem.
- The optimal settings vary depending on your PC environment, equipment used, and workflow. It is important to experiment and find the environment that allows you to concentrate on music production most stably.
WinRT MIDI offers attractive features like Bluetooth support, but it also presents challenges, particularly the MMCSS error in the Cubase environment. However, by understanding its mechanism and countermeasures, there is no need to be overly afraid. I hope this article helps you find the optimal MIDI settings for your environment and enjoy a more comfortable music production life.