c# - 通过麦克风播放时识别音符

标签 c# audio xna

我想制作一个程序来识别我用吉他在麦克风上弹奏的音符,但我不确定如何让我的程序识别我弹奏的声音,然后让程序在一堆声音中进行选择笔记。 我能帮忙吗?我基本上需要一个库,它能够识别通过麦克风播放的声音,然后将其与不同的音频文件进行比较,看看哪个最接近播放的音符。 我希望你们现在明白这一点,很难解释。

最佳答案

正如 Dan Bryant 所提到的,您基本上想要进行 FFT,它可以为您提供不同频率下的能量。找到具有最大能量的频率,然后选择频率最接近该频率的音符。这就是您购买的可帮助​​您为吉他调音的小型数字调音器的功能。有几个可用的库可以为您执行 FFT。您只需要指定一个 FFT 大小,为您提供足够的频率分辨率来区分音符。

关于c# - 通过麦克风播放时识别音符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12982011/

相关文章:

c# - Entity Framework 核心 : How to configure model with two One to Many relations in one entity referencing the same table

objective-c - 是否可以从iOS应用程序中的麦克风获得声压?

c# - 在 XNA 中使用图像作为字体(SpriteFont?或者其他什么?)

c# - 在 Entity Framework ADO.NET 实体数据模型中导入 SQL Server 函数时出错

c# - 如何在 WPF 中获取 "Selected MenuItem"

android - onMetadataChanged MediaControllerCompat.Callback 从未调用过

c# - 将频率转换为-1..1浮点

c# - 我有一个游戏的攻击链系统,但它很快就会变得非常复杂

c# - 全局样式在 WPF 中不起作用

windows - 允许计算机在从 Windows 应用程序播放音频时进入休眠状态