This feature is not Baseline because it does not work in some of the most widely-used browsers.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
The MIDIMessageEvent interface of the Web MIDI API represents the event passed to the midimessage event of the MIDIInput interface. A midimessage event is fired every time a MIDI message is sent from a device represented by a MIDIInput, for example when a MIDI keyboard key is pressed, a knob is tweaked, or a slider is moved.
MIDIMessageEvent()Creates a new MIDIMessageEvent object instance.
This interface also inherits properties from Event.
MIDIMessageEvent.dataA Uint8Array containing the data bytes of a single MIDI message. See the MIDI specification for more information on its form.
This interface doesn't implement any specific methods, but inherits methods from Event.
The following example prints all MIDI messages to the console.
navigator.requestMIDIAccess().then((midiAccess) => {
Array.from(midiAccess.inputs).forEach((input) => {
input[1].onmidimessage = (msg) => {
console.log(msg);
};
});
});
| Specification |
|---|
| Web MIDI API> # midimessageevent-interface> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
MIDIMessageEvent |
43 | 79 | 108 | 30 | No | 43 | No | 30 | No | 4.0 | 43 | No |
MIDIMessageEvent |
43 | 79 | 108 | 30 | No | 43 | No | 30 | No | 4.0 | 43 | No |
data |
43 | 79 | 108 | 30 | No | 43 | No | 30 | No | 4.0 | 43 | No |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/MIDIMessageEvent