AS3 计算频谱 fft true

4

我只是想理解从computeSpectrum(bytes,true,0)返回的值的含义。 我从字节数组中读取每个浮点数,其值范围从0到1,但每个值是否代表一定的赫兹范围呢?


这个问题是关于不同FFT实现的,但我认为答案也适用于你的问题:https://dev59.com/3kbRa4cB1Zd3GeqPyDRg - mtrw
2个回答

2
computeSpectrum()返回的ByteArray包含512个字节。前256个字节是左声道,后256个字节是右声道。每个字节代表一个256个频带中的归一化能量级别。这些频带从约6赫兹到约11千赫兹进行线性划分,带宽为43.0664062赫兹(来源:http://blog.benstucki.net/?p=60)。因此,您查看的每个浮点值都是该频带的能量。请注意,如果您不想得到视觉上倾斜的结果,可能需要对线性分布进行补偿。

0
在我看来,每个值都代表了一定频带的能量大小,考虑到分辨率。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接