Making music with MIDI just got a real boost in Windows 11

Non-musicians may often equate MIDI solely with .mid music files or the nostalgic sound sets from the late 80s, yet its significance extends far beyond that. For musicians, MIDI serves as a fundamental component, facilitating everything from instrument synchronization to stage lighting, effects control, sequencing, and beat making. MIDI is the essential connective tissue that enables electronic music creation.

MIDI 1.0: A Legacy of Innovation

The journey of MIDI began at the 1983 NAMM Show, where Roland and Sequential Circuits unveiled a groundbreaking open standard for connecting musical instruments. This innovation marked the dawn of electronic music production, establishing MIDI as a beloved tool for decades. The original MIDI specification was straightforward, transmitting short messages over a DIN serial cable at a speed of approximately one millisecond per message. While this was adequate for the technology of the time, the evolution of MIDI has introduced numerous enhancements, including the General MIDI standard, Standard MIDI Files, and richer expression through the MIDI Polyphonic Expression (MPE) standard.

Despite its widespread adoption, MIDI 1.0 has its limitations. It lacks standardized bidirectional discovery mechanisms, imposes a control parameter range of 0-127, and does not fully support rich note expression. Moreover, it struggles with orchestral articulation and identifying MIDI controllers effectively. These constraints have been well recognized by musicians who rely on MIDI controllers and software.

Introducing MIDI 2.0

In 2020, the MIDI Association released the first version of the Universal MIDI Packet (UMP) and MIDI 2.0 Protocol specification, with significant updates in 2022 and 2023 to enhance device discovery and protocol setup. MIDI 2.0 introduces a host of improvements, including:

  • Bidirectional communication
  • Automatic device discovery
  • Uncapped speeds
  • High-resolution controllers
  • Per-note articulation
  • Self-describing devices

While MIDI 1.0 remains a cornerstone of music production, the future of MIDI 2.0 is bright, necessitating robust support for MIDI 1.0 across operating systems.

Windows MIDI Services: A New Era

With great enthusiasm, we announce that Windows 11 now supports both MIDI 1.0 and MIDI 2.0 through the newly developed Windows MIDI Services. This initiative involved a complete overhaul of decades-old MIDI 1.0 code to enhance its functionality while integrating MIDI 2.0 capabilities. The core components of Windows MIDI Services are embedded within Windows 11, rolling out in phases to ensure compatibility with existing MIDI applications.

Key Features of Windows MIDI Services

The introduction of Windows MIDI Services brings a wealth of requested features, ensuring that MIDI 1.0 operates seamlessly while laying the groundwork for MIDI 2.0.

Multi-Client Support

One of the most anticipated features is the ability for multiple applications to access the same MIDI device simultaneously, known as “multi-client” support. This functionality is now available for all MIDI 1.0 and MIDI 2.0 applications, eliminating the need for custom vendor drivers in most cases.

Customizable MIDI Endpoints

Users can now personalize MIDI port names, choosing from classic API names for backward compatibility, new-style names provided by devices, or entirely custom names. Additional metadata, including custom images and descriptions, can also be set through the upcoming MIDI Settings app.

Built-in Loopback and App-to-App MIDI

Windows MIDI Services now features built-in loopback support, allowing applications to communicate with one another without additional drivers. This includes the capability for applications to function as full MIDI 2.0 devices, complete with protocol negotiation and discovery.

Automatic Translation and Scaling

High-resolution MIDI 2.0 devices can now be utilized by any MIDI-aware application on Windows, with automatic protocol translation and value scaling managed by the MIDI Service. This ensures compatibility across devices without requiring user intervention.

Tighter Message Timing

To enhance timing accuracy, Windows MIDI Services supports timestamps for incoming and outgoing messages, achieving precision under a microsecond. This feature aims to provide musicians with the tightest timing possible across all MIDI devices.

New USB Class Driver

The introduction of the new USB MIDI 2.0 class driver, developed with Microsoft’s guidance, enhances communication with the MIDI service while maintaining compatibility with older devices.

Tools and MIDI Scripting

In the coming months, an updated MIDI App SDK Runtime and Tools package will be released, featuring a MIDI Console, MIDI Settings app, and PowerShell projections for MIDI scripting. These tools will facilitate the creation of loopback endpoints and customization of MIDI settings.

Community Collaboration

The development of Windows MIDI Services has been a collaborative effort, with contributions from partners and the community through platforms like GitHub. Special thanks go to AMEI for their invaluable testing support and the donation of the USB MIDI 2.0 driver.

Future Developments

Looking ahead, we are committed to enhancing music creation on Windows, with plans for low-latency USB audio drivers, new MIDI transports, and a virtual patch bay for improved MIDI routing. Stay tuned for updates on these exciting developments.

Winsage
Making music with MIDI just got a real boost in Windows 11