Javascript 振荡器上的分析仪节点错误数据
Javascript 振荡器上的分析仪节点错误数据,javascript,fft,web-audio-api,Javascript,Fft,Web Audio Api,让ctx=newaudiocontext(), Analyzer=ctx.createAnalyzer(), 振荡器=ctx.create振荡器(), 数据=新的Float32Array(Analyzer.frequencyBinCount); 振荡器。连接(分析仪); start(); 设置超时(()=>{ 分析仪.getFloatFrequencyData(数据); 控制台日志(振荡器、频率、数据); }, 1000);仓位编号不是频率。您需要使用编号2*料仓计数*频率/采样率检查料仓,其中
让ctx=newaudiocontext(),
Analyzer=ctx.createAnalyzer(),
振荡器=ctx.create振荡器(),
数据=新的Float32Array(Analyzer.frequencyBinCount);
振荡器。连接(分析仪);
start();
设置超时(()=>{
分析仪.getFloatFrequencyData(数据);
控制台日志(振荡器、频率、数据);
}, 1000);代码>仓位编号不是频率。您需要使用编号2*料仓计数*频率/采样率检查料仓,其中料仓计数=fft大小/2
@Raymond toy,谢谢你在一台采样率为44.1 kHz的机器上运行你的代码片段。相关分析仪输出为:“20”:-28.359,“21”:-28.948。箱20对应于约430 Hz的频率。箱21为452赫兹。这是合理的,默认FFT大小为2048,其中每个箱子的宽度约为21 Hz。@RaymondToy,如何计算箱子数?