我正在使用 http://msdn.microsoft.com/en-us/library/gg442302(v=vs.92).aspx 中的基本方法访问麦克风。但我试图检测特定声音的出现,例如拍板声。如何解读麦克风发出的声音?缓冲区中的 float 到底代表什么?
谢谢
最佳答案
我认为这可能有帮助 http://en.wikipedia.org/wiki/Pulse-code_modulation 。我认为这些值在某种程度上代表了麦克风中的机械部分与其中间位置的偏移,但我确信理论和词汇可能会非常深入。
当涉及到识别声音时 - 它也可以变得任意复杂,但拍板可能是一项简单的任务 - 你基本上想要检测音量的突然增加,这将表现为声音的短期急剧增加流中绝对值的移动平均值,因此我会在流上放置一个滑动窗口,并继续检查某些阈值 - 一个短窗口用于高音量阈值,两个相邻、较长和较低的阈值窗口以确保存在拍板前后均无此类杂音。
关于windows-phone-7 - 如何解释来自麦克风的音频流以检测 WP7 中的特定声音?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8131558/