BaseAudioContext:createConvolver() 方法
基线 广泛可用
此功能已经很成熟,并且可以在许多设备和浏览器版本中使用。自 2021 年 4 月.
报告反馈
BaseAudioContext
接口的 createConvolver()
方法创建一个 ConvolverNode
,它通常用于将混响效果应用于您的音频。有关更多信息,请参见 卷积的规范定义。
语法
注意:建议使用
ConvolverNode()
构造函数创建 ConvolverNode
;请参见 创建 AudioNode。createConvolver()
js
参数
无。
返回值
示例
一个 ConvolverNode
。
创建卷积器节点
以下示例演示了如何使用 AudioContext 创建卷积器节点。您将创建一个包含音频样本的 AudioBuffer
,该音频样本将用作塑造卷积的音效(称为冲激响应),并将该音效应用于卷积器。以下示例使用了一个简短的音乐厅人群样本,因此应用的混响效果非常深沉且具有回声感。
注意:建议使用
ConvolverNode()
构造函数创建 ConvolverNode
;请参见 创建 AudioNode。const audioCtx = new AudioContext();
// ...
const convolver = audioCtx.createConvolver();
// ...
// Grab audio track via fetch() for convolver node
try {
const response = await fetch(
"https://mdn.github.io/voice-change-o-matic/audio/concert-crowd.ogg",
);
const arrayBuffer = await response.arrayBuffer();
const decodedAudio = await audioCtx.decodeAudioData(arrayBuffer);
convolver.buffer = decodedAudio;
} catch (error) {
console.error(
`Unable to fetch the audio file: ${name} Error: ${err.message}`,
);
}
规范
有关更完整的应用示例/信息,请查看我们的 Voice-change-O-matic 演示(有关下面摘录的代码,请参见 app.js)。 |
---|
Web Audio API # 规范 |
浏览器兼容性
dom-baseaudiocontext-createconvolver