Firefox Tomorrow

web api interface

MIDIAccess

View on MDN ↗

Secure context

The MIDIAccess interface of the Web MIDI API provides methods for listing MIDI input and output devices, and obtaining access to those devices.

MIDIAccess is a transferable object.

Instance properties

  • inputs Read only
    • : Returns an instance of MIDIInputMap which provides access to any available MIDI input ports.
  • outputs Read only
    • : Returns an instance of MIDIOutputMap which provides access to any available MIDI output ports.
  • sysexEnabled Read only
    • : A boolean attribute indicating whether system exclusive support is enabled on the current MIDIAccess instance.

Events

  • statechange
    • : Called whenever a new MIDI port is added or an existing port changes state.

Examples

The requestMIDIAccess() method returns a promise that resolves with a MIDIAccess object. Information about the input and output ports is returned.

When a port changes state, information about that port is printed to the console.

navigator.requestMIDIAccess().then((access) => {
  // Get lists of available MIDI controllers
  const inputs = access.inputs.values();
  const outputs = access.outputs.values();

  access.onstatechange = (event) => {
    // Print information about the (dis)connected MIDI controller
    console.log(event.port.name, event.port.manufacturer, event.port.state);
  };
});

Specifications

SpecificationsStandards references are available on the canonical MDN page.

Browser compatibility

Browser compatibilityCompatibility data is available on the canonical MDN page.