带麦克风的SoundMixer.computeSpectrum

时间:2010-05-24 17:58:11

标签: flex flash

Flex具有SoundMixer.computeSpectrum功能,可让您根据当前播放的声音计算FFT。我想做的是计算FFT 而不用播放声音。由于Flash 10.1允许我们访问microphone bytes directly,因此我们似乎应该可以直接根据用户说话来计算FFT。

2 个答案:

答案 0 :(得分:0)

我不确定是否有办法传递该数据,但如果其他所有方法都失败了,您可以自己计算FFT。

答案 1 :(得分:0)

不幸的是,就我所知,这不起作用。如Adobe帮助页面所述:

  

SoundMixer.computeSpectrum()   方法让应用程序读取   波形的原始声音数据   目前正在播放。如果更多   比一个SoundChannel对象   目前正在播放   SoundMixer.computeSpectrum()方法   显示每个的组合声音数据   SoundChannel对象混合在一起。

这意味着两个缺点:

  1. 它只适用于输出(SoundChannel)
  2. 它只适用于所有输出的混合。
  3. 如果您根本不需要输出通道,可以将其音量调低至零或接近零!?不知道这是否可行。

    对于我自己,我目前没有看到任何其他机会自己实施FFT来计算麦克风数据的频谱。