Web MIDI API

- WD

The Web MIDI API specification defines a means for web developers to enumerate, manipulate and access MIDI devices

Chrome

  1. ❌ 4 - 42: Not supported
  2. ✅ 43 - 156: Supported
  3. ✅ 157: Supported
  4. ✅ 158 - 160: Supported

Edge

  1. ❌ 12 - 18: Not supported
  2. ✅ 79 - 155: Supported
  3. ✅ 156: Supported

Safari

  1. ❌ 3.1 - 27.1: Not supported
  2. ❌ 27.2: Not supported
  3. ❌ 27.3 - TP: Not supported

Firefox

  1. ❌ 2 - 107: Not supported
  2. ✅ 108 - 159: Supported
  3. ✅ 160: Supported
  4. ✅ 161 - 163: Supported

Opera

  1. ❌ 9 - 29: Not supported
  2. ✅ 30 - 138: Supported
  3. ✅ 139: Supported

IE

  1. ❌ 5.5 - 10: Not supported
  2. ❌ 11: Not supported

Chrome for Android

  1. ✅ 157: Supported

Safari on iOS

  1. ❌ 3.2 - 26.6: Not supported
  2. ❌ 27.0: Not supported
  3. ❌ 27.1 - 27.2: Not supported

Samsung Internet

  1. ✅ 4 - 30: Supported
  2. ✅ 31: Supported

Opera Mini

  1. ❌ all: Not supported

Opera Mobile

  1. ❌ 10 - 12.1: Not supported
  2. ✅ 80: Supported

UC Browser for Android

  1. ✅ 15.5: Supported

Android Browser

  1. ❌ 2.1 - 4.4.4: Not supported
  2. ✅ 157: Supported

Firefox for Android

  1. ❌ 160: Not supported

QQ Browser

  1. ✅ 14.9: Supported

Baidu Browser

  1. ✅ 13.52: Supported

KaiOS Browser

  1. ❌ 2.5: Not supported
  2. ❌ 3: Not supported

Safari has no native support. On macOS, a third-party Safari web extension, Web MIDI for Safari, adds navigator.requestMIDIAccess() backed by CoreMIDI, so a website can use Web MIDI once a user installs and enables the extension (Safari 18.4 and later). This is userland support and not part of WebKit, so the support status above stays unsupported.

Resources:
WebKit support bug
Firefox support bug
Polyfill
Web MIDI for Safari (Safari extension that adds the API on macOS)
Test/demo page