RtMidi for Unity
November 23, 2025 ยท View on GitHub
RtMidi for Unity is a wrapper plugin of RtMidi that enables Unity to access MIDI devices from C# scripts.
Note that this plugin only provides low-level MIDI I/O functionality. For application-level use, it's recommended to use a higher-level library like Minis, a MIDI extension for the Input System.
System Requirements
- Unity 2022.3 LTS or later
Currently, RtMidi for Unity supports the following platform and architecture combinations:
- Windows: x86_64
- macOS: Intel and Apple silicon
- iOS: arm64
- Linux: x86_64
- Android: arm64
- Web (requires Web MIDI support)
In addition, there are some platform-specific considerations to keep in mind:
Android
Minis currently does not support the GameActivity entry point. You must select "Activity" as the Application Entry Point in the Player Settings.
There is a known issue with multi-port MIDI devices. keijiro/jp.keijiro.rtmidi#16
Linux
The RtMidi backend requires ALSA (libasound2) on Linux platforms. If Minis
does not work, please check that ALSA is installed.
Installation
You can install the RtMidi for Unity package (jp.keijiro.rtmidi) via the
"Keijiro" scoped registry using the Unity Package Manager. To add the registry
to your project, follow these instructions.