我设置了一个很好的音高检测系统,我想在给定一组音频样本的情况下返回一系列音符。
我目前的方法如下:我有一个跨越音频信号的移动窗口,我计算每个窗口的音高。之后,我通过检测静音区域(即音高检测器返回空值的位置)将音频分割成不同的音符。然后我简单地取每个音符区域的平均值。
不幸的是,这并没有给我带来这么好的结果。音高检测器看起来确实很准确,但问题是它似乎不能很好地分割音符。只有当我在录制音频时在每个音符之间留有长时间的停顿时,它才真正起作用。我想要一些方法来检测音符的变化,而不必依赖一个大的静音区域。
任何想法将不胜感激!