AudioProcessingEvent: inputBuffer property

Deprecated: This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.

Thuộc tính chỉ đọc inputBuffer của giao diện AudioProcessingEvent biểu diễn bộ đệm đầu vào của một sự kiện xử lý âm thanh.

Bộ đệm đầu vào được biểu diễn bằng một đối tượng AudioBuffer, đối tượng này chứa một tập hợp các kênh âm thanh, trong đó mỗi kênh là một mảng các giá trị dấu phẩy động biểu diễn dạng sóng tín hiệu âm thanh được mã hóa như một chuỗi các biên độ. Số lượng kênh và độ dài của từng kênh được xác định bởi số kênh và thuộc tính kích thước bộ đệm của AudioBuffer.

Giá trị

Một đối tượng AudioBuffer.

Ví dụ

Trong ví dụ này, một ScriptProcessorNode được tạo với kích thước bộ đệm là 256 mẫu, 2 kênh đầu vào và 2 kênh đầu ra. Khi một sự kiện audioprocess được kích hoạt, các bộ đệm đầu vào và đầu ra được lấy từ đối tượng sự kiện. Dữ liệu âm thanh trong bộ đệm đầu vào được xử lý, và kết quả được ghi vào bộ đệm đầu ra. Trong trường hợp này, dữ liệu âm thanh được giảm xuống theo hệ số 0.5.

js
const audioContext = new AudioContext();
const processor = audioContext.createScriptProcessor(256, 2, 2);

processor.addEventListener("audioprocess", (event) => {
  const inputBuffer = event.inputBuffer;
  const outputBuffer = event.outputBuffer;

  for (let channel = 0; channel < outputBuffer.numberOfChannels; channel++) {
    const inputData = inputBuffer.getChannelData(channel);
    const outputData = outputBuffer.getChannelData(channel);

    // Xử lý dữ liệu âm thanh tại đây
    for (let i = 0; i < outputBuffer.length; i++) {
      outputData[i] = inputData[i] * 0.5;
    }
  }
});

processor.connect(audioContext.destination);

Thông số kỹ thuật

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

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

Xem thêm