This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The MIDIAccess interface of the Web MIDI API provides methods for listing MIDI input and output devices, and obtaining access to those devices.
MIDIAccess.inputs Read only
MIDIInputMap which provides access to any available MIDI input ports.MIDIAccess.outputs Read only
MIDIOutputMap which provides access to any available MIDI output ports.MIDIAccess.sysexEnabled Read only
MIDIAccess.onstatechangenavigator.requestMIDIAccess()
.then(function(access) {
// Get lists of available MIDI controllers
const inputs = access.inputs.values();
const outputs = access.outputs.values();
access.onstatechange = function(e) {
// Print information about the (dis)connected MIDI controller
console.log(e.port.name, e.port.manufacturer, e.port.state);
};
}); | Specification | Status | Comment |
|---|---|---|
| Web MIDI API | Working Draft | Initial definition. |
| Desktop | ||||||
|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
| Basic support | 43 | ? | No | No | 33 | No |
| Mobile | |||||||
|---|---|---|---|---|---|---|---|
| Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
| Basic support | 43 | 43 | ? | ? | 33 | No | 4.0 |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/MIDIAccess