AudioBuffer: метод copyFromChannel()
Базовая поддержка Широко доступна
Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с апреля 2021 года.
Метод copyFromChannel() интерфейса AudioBuffer копирует данные аудиообразцов из указанного канала AudioBuffer в указанный Float32Array.
Синтаксис
copyFromChannel(destination, channelNumber, startInChannel)
Параметры
destination-
A
Float32Arrayдля копирования образцов канала. channelNumber-
Номер канала текущего
AudioBufferдля копирования данных канала. startInChannelНеобязательно-
Необязательный смещение в буфере исходного канала, с которого начинать копирование образцов. Если не указано, по умолчанию используется значение 0 (начало буфера).
Возвращаемое значение
None (undefined).
Исключения
indexSizeError-
Одно из входных параметров имеет значение, выходящее за допустимый диапазон:
- Значение
channelNumberуказывает на номер канала, который не существует (то есть, оно больше или равно значениюnumberOfChannelsв канале). - Значение
startInChannelнаходится вне текущего диапазона образцов, которые уже существуют в исходном буфере; то есть, оно больше, чем его текущаяlength.
- Значение
Примеры
В этом примере создаётся новый буфер аудио, а затем копируются образцы из другого канала в него.
const myArrayBuffer = audioCtx.createBuffer(2, frameCount, audioCtx.sampleRate); const anotherArray = new Float32Array(length); myArrayBuffer.copyFromChannel(anotherArray, 1, 0);
Спецификации
| Спецификация |
|---|
| Web Audio API # dom-audiobuffer-copyfromchannel |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
copyFromChannel |
43 | 13 | 27 | 30 | 14.1 | 43 | 27 | 30 | 14.5 | 4.0 | 43 |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/AudioBuffer/copyFromChannel