MIDIOutput: send() Methode
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Die send()
Methode des MIDIOutput
-Interfaces reiht Nachrichten für den entsprechenden MIDI-Port ein. Die Nachricht kann sofort gesendet werden oder mit einem optionalen Zeitstempel, um das Senden zu verzögern.
Syntax
send(data)
send(data, timestamp)
Parameter
data
-
Eine Sequenz von einem oder mehreren gültigen MIDI-Nachrichten. Jeder Eintrag repräsentiert ein einzelnes Datenbyte.
timestamp
Optional-
Ein
DOMHighResTimestamp
mit der Zeit in Millisekunden, zu der die Nachricht gesendet werden soll (relativ zuPerformance.timeOrigin
).
Rückgabewert
Kein (undefined
).
Ausnahmen
TypeError
-
Wird ausgelöst, wenn
data
keine gültige Sequenz ist oder keine gültige MIDI-Nachricht enthält. InvalidAccessError
DOMException
-
Wird ausgelöst, wenn
data
eine systemexklusive Nachricht ist und derMIDIAccess
keinen exklusiven Zugriff ermöglicht hat. InvalidStateError
DOMException
-
Wird ausgelöst, wenn der Port getrennt ist.
Beispiele
Im folgenden Beispiel wird eine mittlere C-Note sofort gesendet, gefolgt von einer "Note Off"-Nachricht eine Sekunde später.
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.
}
Spezifikationen
Specification |
---|
Web MIDI API # dom-midioutput-send |