javascript - Web 音频 API 卷积器节点的相位问题
问题描述
我制作了一个在线合成器,它使用网络音频 API 卷积器节点具有混响效果,我会说大约 10% 的时间你打开合成器,卷积器节点有一些声音相位问题,好像左右略有异相。
let reverb = context.createConvolver();
let reverbGain = context.createGain();
reverbGain.gain.value = 2;
delayFeedback.connect(reverbGain);
reverbGain.connect(reverb);
let anotherReverbGain = context.createGain();
anotherReverbGain.gain.value = 0;
reverbIn.connect(anotherReverbGain);
let takeOutLow = context.createBiquadFilter();
takeOutLow.type = 'lowshelf';
takeOutLow.frequency.value = 400;
takeOutLow.gain.value = -10;
anotherReverbGain.connect(takeOutLow);
takeOutLow.connect(reverb);
let loadImpulse = function ()
{
let url = "audio/impulse.wav";
let request = new XMLHttpRequest();
request.open( "GET", url, true );
request.responseType = "arraybuffer";
request.onload = function (){
context.decodeAudioData( request.response, function ( buffer ) {
reverb.buffer = buffer;
});
}
request.send();
};
loadImpulse();
解决方案
推荐阅读
- node.js - Flutter:如何在标头中传递 JWT-Token?
- webpack - 微前端:导入外部遥控器
- tcl - 如何在 tcl/tk 中绑定一些变量值?
- google-apps-script - LinkedIn API 返回“*** 不存在”
- java - 为什么我的组合框 selectedItem 不起作用?
- c# - C# Marshal.GetActiveObject() 替代 .NET 5.0 上的 Outlook 自动化
- javascript - Apache ECharts:桑基色
- docker - 使用 docker-compose 的容器具有不同的行为,具体取决于执行它们的机器
- sql - 如何优化这个复杂的查询?
- c# - 可以在使用旧版本 c# 的项目中使用使用较新版本 c# 构建的 NuGet 包吗?