MIDIAccess

这是 实验性技术
检查 浏览器兼容性表格 在生产中使用这之前。

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

特性

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

事件处理程序

MIDIAccess.onstatechange
Called whenever a new MIDI port is added or an existing port changes state.

范例

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);
     };
  });
					

规范

规范 状态 Comment
Web MIDI API 工作草案 初始定义。

浏览器兼容性

更新 GitHub 上的兼容性数据
Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet
MIDIAccess
Chrome 43 Edge ≤79 Firefox 不支持 No IE 不支持 No Opera 33 Safari 不支持 No WebView Android 43 Chrome Android 43 Firefox Android ? Opera Android 33 Safari iOS 不支持 No Samsung Internet Android 4.0
inputs
Chrome 43 Edge ≤79 Firefox 不支持 No IE 不支持 No Opera Yes Safari 不支持 No WebView Android 43 Chrome Android 43 Firefox Android ? Opera Android Yes Safari iOS 不支持 No Samsung Internet Android 4.0
outputs
Chrome 43 Edge ≤79 Firefox 不支持 No IE 不支持 No Opera Yes Safari 不支持 No WebView Android 43 Chrome Android 43 Firefox Android ? Opera Android Yes Safari iOS 不支持 No Samsung Internet Android 4.0
statechange event
Chrome 43 Edge ≤79 Firefox 不支持 No IE 不支持 No Opera ? Safari 不支持 No WebView Android 43 Chrome Android 43 Firefox Android ? Opera Android ? Safari iOS 不支持 No Samsung Internet Android 4.0
sysexEnabled
Chrome 45 Edge ≤79 Firefox 不支持 No IE 不支持 No Opera Yes Safari 不支持 No WebView Android 45 Chrome Android 45 Firefox Android ? Opera Android Yes Safari iOS 不支持 No Samsung Internet Android 5.0

图例

完整支持
完整支持
不支持
不支持
兼容性未知
兼容性未知
实验。期望将来行为有所改变。
实验。期望将来行为有所改变。