如何用Python读取音乐文件并识别音符的不同频率等级?
请帮我解决一下关于Python的问题……这是我的项目主题……
1 个回答
2
傅里叶变换。在考虑代码之前,先了解一些关于音乐和信号的基础知识。
基本大纲:
音频导入
可以查看http://wiki.python.org/moin/Audio/,找到一个可以导入你(未指定)文件的工具。
分析
获取numpy
库。
>>> from numpy.fft import fft
>>> a = abs(fft([1,2,3,2]*4))
>>> a
array([ 32., 0., 0., 0., 8., 0., 0., 0.,
0., 0., 0., 0., 8., 0., 0., 0.])
我们可以清楚地看到直流成分在0的位置,然后由于这是一个真实信号,主要的交流成分出现在fs/4
和3*fs/4
,因为所有频率成分在X轴上是对称的。