gpt4 book ai didi

javascript - webaudio 的 AnalyserNode 的 FFT 值超出范围

转载 作者:行者123 更新时间:2023-11-29 15:37:19 30 4
gpt4 key购买 nike

我正在尝试使用 Web-Audio 的分析器节点并不断从中得到奇怪的结果。

代码:

var self = this;
var bufferSize = 512;
var spectrum = new Float32Array(bufferSize/2);

self.analyser = audioContext.createAnalyser();
self.analyser.fftSize = bufferSize;
self.analyser.smoothingTimeConstant = 0;
self.analyser.minDecibels = -120;
self.analyser.maxDecibels = 0;
self.analyser.getFloatFrequencyData(spectrum);
source.connect(self.analyser);

即使我明确设置了最大和最小分贝的值,我仍然得到小于 -120 的值,例如 -180。

此外,当我console.log 分析器时,我发现值确实发生了变化,但 FFT 给出的值仍然低于预期。

我正在使用立体声 mp3 文件对其进行测试,这可能是个问题吗?

有什么想法吗?

最佳答案

最小和最大分贝仅影响 getByteFrequencyData 值,而不影响 getFloatFrequencyData 值。 “用于转换为无符号字节值的 FFT 分析数据的缩放范围内的最小/最大功率值。”

关于javascript - webaudio 的 AnalyserNode 的 FFT 值超出范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26241430/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com