AudioWorklet: thuộc tính port

Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

Thuộc tính chỉ đọc port của giao diện AudioWorklet trả về một đối tượng MessagePort có thể được dùng để gửi và nhận thông điệp giữa luồng chính và AudioWorkletGlobalScope liên kết.

Điều này cho phép giao tiếp bất đồng bộ tùy chỉnh giữa mã trong luồng chính và phạm vi toàn cục của một audio worklet, chẳng hạn như nhận dữ liệu điều khiển hoặc các thiết lập toàn cục.

Giá trị

Đối tượng MessagePort kết nối AudioWorklet với AudioWorkletGlobalScope liên kết của nó.

Ví dụ

Xem AudioWorkletNode.port để biết thêm ví dụ.

Dùng một cổng cho các thông điệp toàn cục

Trong ví dụ sau, ta có thể dùng port.onmessage để nhận dữ liệu và port.postMessage để gửi dữ liệu:

js
const context = new AudioContext();
// Tải mô-đun chứa mã worklet
await context.audioWorklet.addModule("processor.js");

// Bộ lắng nghe thông điệp từ AudioWorkletGlobalScope
context.audioWorklet.port.onmessage = (event) => {
  console.log("Message from global worklet:", event.data);
};

// Thiết lập một cấu hình toàn cục, ví dụ:
context.audioWorklet.port.postMessage({
  volume: 0.8,
});

Thông số kỹ thuật

Thông số kỹ thuật
Web Audio API
# dom-audioworklet-port

Khả năng tương thích với trình duyệt

Xem thêm