MIDIOutput: phương thức send()

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

Phương thức send() của giao diện MIDIOutput xếp hàng các tin nhắn cho cổng MIDI tương ứng. Tin nhắn có thể được gửi ngay lập tức hoặc với dấu thời gian tùy chọn để trì hoãn việc gửi.

Cú pháp

js
send(data)
send(data, timestamp)

Tham số

data

Một chuỗi gồm một hoặc nhiều tin nhắn MIDI hợp lệ. Mỗi mục đại diện cho một byte dữ liệu.

timestamp Optional

Một DOMHighResTimestamp với thời gian tính bằng mili giây khi tin nhắn nên được gửi (tương đối so với Performance.timeOrigin).

Giá trị trả về

Không có (undefined).

Ngoại lệ

TypeError

Được ném ra nếu data không phải là chuỗi hợp lệ hoặc không chứa tin nhắn MIDI hợp lệ.

NotAllowedError DOMException

Được ném ra nếu data là tin nhắn hệ thống độc quyền và MIDIAccess không bật quyền truy cập độc quyền.

InvalidStateError DOMException

Được ném ra nếu cổng bị ngắt kết nối.

Ví dụ

Trong ví dụ sau, một nốt C giữa được gửi ngay lập tức, tiếp theo là tin nhắn tắt nốt sau một giây.

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.
}

Thông số kỹ thuật

Specification
Web MIDI API
# dom-midioutput-send

Tương thích trình duyệt