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.onstatechange
navigator.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