AudioBuffer: phương thức copyFromChannel()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2021.

Phương thức copyFromChannel() của giao diện AudioBuffer sao chép dữ liệu mẫu âm thanh từ kênh được chỉ định của AudioBuffer sang một Float32Array được chỉ định.

Cú pháp

js
copyFromChannel(destination, channelNumber, startInChannel)

Tham số

destination

Một Float32Array để sao chép các mẫu của kênh vào.

channelNumber

Số thứ tự kênh của AudioBuffer hiện tại để sao chép dữ liệu kênh từ đó.

startInChannel Optional

Độ lệch tùy chọn vào bộ đệm của kênh nguồn, từ đó bắt đầu sao chép các mẫu. Nếu không chỉ định, giá trị mặc định được giả định là 0 (đầu bộ đệm).

Giá trị trả về

Không có (undefined).

Ngoại lệ

indexSizeError

Một trong các tham số đầu vào có giá trị nằm ngoài phạm vi chấp nhận:

  • Giá trị của channelNumber chỉ định một số kênh không tồn tại (tức là lớn hơn hoặc bằng giá trị numberOfChannels của bộ đệm).
  • Giá trị của startInChannel nằm ngoài phạm vi mẫu hiện có trong bộ đệm nguồn; tức là lớn hơn length hiện tại của nó.

Ví dụ

Ví dụ này tạo một bộ đệm âm thanh mới, sau đó sao chép các mẫu từ một kênh khác vào đó.

js
const myArrayBuffer = audioCtx.createBuffer(2, frameCount, audioCtx.sampleRate);
const anotherArray = new Float32Array(length);
myArrayBuffer.copyFromChannel(anotherArray, 1, 0);

Thông số kỹ thuật

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

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

Xem thêm