Flex具有SoundMixer.computeSpectrum功能,可让您根据当前播放的声音计算FFT。我想做的是计算FFT 而不用播放声音。由于Flash 10.1允许我们访问microphone bytes directly,因此我们似乎应该可以直接根据用户说话来计算FFT。
答案 0 :(得分:0)
我不确定是否有办法传递该数据,但如果其他所有方法都失败了,您可以自己计算FFT。
答案 1 :(得分:0)
不幸的是,就我所知,这不起作用。如Adobe帮助页面所述:
SoundMixer.computeSpectrum() 方法让应用程序读取 波形的原始声音数据 目前正在播放。如果更多 比一个SoundChannel对象 目前正在播放 SoundMixer.computeSpectrum()方法 显示每个的组合声音数据 SoundChannel对象混合在一起。
这意味着两个缺点:
如果您根本不需要输出通道,可以将其音量调低至零或接近零!?不知道这是否可行。
对于我自己,我目前没有看到任何其他机会自己实施FFT来计算麦克风数据的频谱。