音乐处理库的建议?

时间:2010-11-08 13:53:28

标签: audio plot

我正在参加音乐理论课,对于我的决赛,我决定编写一个程序来输出关于某首歌的简单统计数据。我在想,有没有人为这样的任务设置好的图书馆?我真的不喜欢C ++或C,但如果我被迫使用它们,我会。

我已经尝试了麻省理工学院的Music21 for Python(我很兴奋,因为我喜欢它的功能),但我从来没有让它工作......有没有任何库可以给我原始数据(频率绘制时间)任何给定的MP3文件?谢谢!

3 个答案:

答案 0 :(得分:3)

要查找使用代码及时绘制的频率,您可能需要进行一些频域转换才能获得这些频率,例如FFT或小波。您在音频文件中获得的原始数据是时变电压的离散信号。 Python有一个内置的wav文件库,你可以通过numpy对信号进行FFT分析。 我有一个建议是PureData(http://puredata.info/),一个用于音乐目的的可视化编程环境。该软件将为您提供很多帮助,并为您在音乐软件开发的DSP部分中省去很多麻烦。使用PureData,您可以轻松地使用及时绘制的频率。如果想要为音乐理论课开发一些东西,这是一个很好的解决方案。

答案 1 :(得分:0)

用于C / C ++的libsndfile很好,但可能有点低级。你打算用它做什么? 您也可以查看javax.sound.sampled以获取Java。

答案 2 :(得分:0)

除非您熟悉图形编程语言(pd,max,reaktor),否则我建议使用SuperCollider。它有一个fft库,合理的gui /图形库,但它的真正优势在于它所基于的SmallTalk语言,它提供了丰富的功能和面向对象的功能。我觉得这个系统真的很有用。它配备了一个交互式解释器,可以帮助开发更加专注而不是结构化。

尝试一下,你可能会喜欢它。