MIDIOutput:send() 方法
MIDIOutput 接口的 send() 方法将消息排队发送到相应的 MIDI 端口。消息可以立即发送,也可以使用可选的时间戳来延迟发送。
语法
js
send(data)
send(data, timestamp)
参数
data-
一个或多个有效 MIDI 消息的序列。每个条目代表一个字节的数据。
timestamp可选-
一个
DOMHighResTimeStamp,表示消息应该发送的时间(以毫秒为单位,相对于Performance.timeOrigin)。
返回值
无(undefined)。
异常
TypeError-
如果
data不是一个有效的序列,或者不包含有效的 MIDI 消息,则抛出此异常。 InvalidAccessErrorDOMException-
如果
data是一个系统独占消息,并且MIDIAccess没有启用独占访问,则抛出此异常。 InvalidStateErrorDOMException-
如果端口已断开连接,则抛出此异常。
示例
在下面的示例中,立即发送一个中央 C 音符,一秒钟后发送一个音符关闭消息。
js
function sendMiddleC(midiAccess, portID) {
const noteOnMessage = [0x90, 60, 0x7f]; // Note on middle C, full velocity
const output = midiAccess.outputs.get(portID);
output.send(noteOnMessage); // Omitting the timestamp means send immediately.
output.send([0x80, 60, 0x40], window.performance.now() + 1000.0); // timestamp = now + 1000ms.
}
规范
| 规范 |
|---|
| Web MIDI API # dom-midioutput-send |
浏览器兼容性
加载中…