AudioProcessingEvent: свойство outputBuffer
Устаревшее: Эта функция больше не рекомендуется. Хотя некоторые браузеры могут её поддерживать, она может быть уже удалена из соответствующих веб-стандартов, может быть в процессе удаления или может быть сохранена только для совместимости. Избегайте её использования и, при возможности, обновите существующий код; см. таблицу совместимости внизу этой страницы, чтобы принять решение. Имейте в виду, что эта функция может перестать работать в любое время.
Свойство outputBuffer только для чтения интерфейса AudioProcessingEvent представляет выходной буфер события обработки аудио.
Выходной буфер представлен объектом AudioBuffer, который содержит набор каналов аудио, каждый из которых является массивом значений с плавающей запятой, представляющих звуковую волну, закодированную в виде ряда амплитуд. Количество каналов и длина каждого канала определяются свойствами количества каналов и размера буфера объекта AudioBuffer.
Значение
Объект AudioBuffer.
Примеры
В этом примере создаётся ScriptProcessorNode с размером буфера 256 выборок, 2 входными каналами и 2 выходными каналами. Когда срабатывает событие audioprocess, входные и выходные буферы извлекаются из объекта события. Данные аудио в входном буфере обрабатываются, а результат записывается в выходной буфер. В данном случае данные аудио масштабируются в 0,5 раза.
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);
// Process the audio data here
for (let i = 0; i < outputBuffer.length; i++) {
outputData[i] = inputData[i] * 0.5;
}
}
});
processor.connect(audioContext.destination);
Спецификации
Совместимость с браузерами
| Рабочий стол | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
outputBuffer |
14 | 12 | 25 | 15 | 6 | 18 | 25 | 14 | 6 | 1.0 | 4.4 |
См. также
© 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/AudioProcessingEvent/outputBuffer