如何使用c#或XNA测量声音频率?有没有图书馆呢?我想录制声音并识别这种声音的频率。
答案 0 :(得分:4)
频率是什么意思?大多数声音,如语音,音乐等,都包含整个频谱。所以你基本上寻找的是spectrum analyzer。可以使用快速傅立叶变换(FFT)来计算这样的频谱。完成后,您可以查找频谱中的主频率(如果有)。
您可能需要查看NAudio和相关库,例如WPF Sound Visualizer,以了解如何在C#中完成此操作。还有一个CodeProject article使用XNA捕获麦克风输入,然后使用NAudio进行进一步处理。虽然该文章中的示例针对的是Windows Phone,但我认为它也应该在桌面应用程序中进行少量修改。