MIDIPort
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.
Das MIDIPort
Interface der Web MIDI API repräsentiert einen MIDI-Eingangs- oder Ausgangsport.
Eine MIDIPort
-Instanz wird erstellt, wenn ein neues MIDI-Gerät angeschlossen wird. Daher gibt es keinen Konstruktor.
Instanz-Eigenschaften
MIDIPort.id
Schreibgeschützt-
Gibt eine Zeichenkette zurück, die die eindeutige ID des Ports enthält.
MIDIPort.manufacturer
Schreibgeschützt-
Gibt eine Zeichenkette zurück, die den Hersteller des Ports enthält.
MIDIPort.name
Schreibgeschützt-
Gibt eine Zeichenkette zurück, die den Systemnamen des Ports enthält.
MIDIPort.type
Schreibgeschützt-
Gibt eine Zeichenkette zurück, die den Typ des Ports enthält, eine von:
MIDIPort.version
Schreibgeschützt-
Gibt eine Zeichenkette zurück, die die Version des Ports enthält.
MIDIPort.state
Schreibgeschützt-
Gibt eine Zeichenkette zurück, die den Status des Ports enthält, einer von:
"disconnected"
-
Das Gerät, das dieses
MIDIPort
repräsentiert, ist vom System getrennt. "connected"
-
Das Gerät, das dieses
MIDIPort
repräsentiert, ist derzeit verbunden.
MIDIPort.connection
Schreibgeschützt-
Gibt eine Zeichenkette zurück, die den Verbindungsstatus des Ports enthält, einer von:
Instanz-Methoden
Dieses Interface erbt auch Methoden von EventTarget
.
MIDIPort.open()
-
Macht das MIDI-Gerät, das mit diesem
MIDIPort
verbunden ist, explizit verfügbar und gibt einPromise
zurück, das aufgelöst wird, sobald der Zugriff auf den Port erfolgreich war. MIDIPort.close()
-
Macht das MIDI-Gerät, das mit diesem
MIDIPort
verbunden ist, nicht verfügbar und ändert denstate
von"open"
zu"closed"
. Dies gibt einPromise
zurück, das aufgelöst wird, sobald der Port geschlossen wurde.
Ereignisse
statechange
-
Wird aufgerufen, wenn ein bestehender Port seinen Status oder seine Verbindung ändert.
Beispiele
Ports und ihre Informationen auflisten
Das folgende Beispiel listet Eingangs- und Ausgangsports auf und zeigt Informationen über sie mit Hilfe von MIDIPort
-Eigenschaften an.
function listInputsAndOutputs(midiAccess) {
for (const entry of midiAccess.inputs) {
const input = entry[1];
console.log(
`Input port [type:'${input.type}'] id:'${input.id}' manufacturer: '${input.manufacturer}' name: '${input.name}' version: '${input.version}'`,
);
}
for (const entry of midiAccess.outputs) {
const output = entry[1];
console.log(
`Output port [type:'${output.type}'] id: '${output.id}' manufacturer: '${output.manufacturer}' name: '${output.name}' version: '${output.version}'`,
);
}
}
Verfügbare Ports zu einer Auswahl-Liste hinzufügen
Das folgende Beispiel nimmt die Liste der Eingangsports und fügt sie einer Auswahlliste hinzu, damit der Benutzer das gewünschte Gerät auswählen kann.
inputs.forEach((port, key) => {
const opt = document.createElement("option");
opt.text = port.name;
document.getElementById("port-selector").add(opt);
});
Spezifikationen
Specification |
---|
Web MIDI API # MIDIPort |
Browser-Kompatibilität
BCD tables only load in the browser