2010-04-07 52 views
4

我只是想了解从computeSpectrum(bytes,true,0)发回的数值是什么意思。对于从字节数组中读取的每个浮点数,我都有从0到1的值,但是每个值都表示Hz的范围。AS3 computeSpectrum fft true

+0

这个问题是针对不同的FFT实现,但我认为答案也适用于您的问题:http://stackoverflow.com/questions/433831/help-me-understand-fft-function-matlab – mtrw 2010-04-08 00:38:20

回答

0

在我看来,每个值代表了频率带宽的能量,考虑到分辨率。

2

computeSpectrum()返回(很好,修改)的ByteArray包含512个字节。前256个用于左声道,而后256个用于右声道。每个字节表示256个频带中的1个的归一化能级。这些频带从〜6赫兹到〜11khz线性划分,带宽为43.0664062 Hz(来源:http://blog.benstucki.net/?p=60)。因此,您所看到的每个浮点值都是该频段的能量。请注意,如果您不想在视觉上扭曲结果,则可能需要补偿线性分布。