代码之家  ›  专栏  ›  技术社区  ›  Blender

音乐处理库的建议?[关闭]

  •  1
  • Blender  · 技术社区  · 14 年前

    我在一个音乐理论课上,在期末考试中,我决定编写一个程序来输出一首给定歌曲的简单统计数据。我想知道,有没有人有好的图书馆来完成这样的任务?我不喜欢C++或者C,但是如果我被迫使用它们,我会的。

    我试过麻省理工学院的Music21 for python(我很兴奋,因为我喜欢它的特性),但我从来没有让它工作过…有没有任何库可以只给我任何给定MP3文件的原始数据(按时间绘制的频率)?谢谢!

    3 回复  |  直到 14 年前
        1
  •  3
  •   Nemeth    14 年前

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

        2
  •  0
  •   fredley    14 年前

    对于C/C++来说,LBSNDFLE是好的,但可能有点低级。你打算用它做什么? 你可以看看 javax.sound.sampled 也适用于Java。

        3
  •  0
  •   Mark Hamlin    14 年前

    除非您熟悉图形编程语言(pd、max、reaktor),否则我建议您 SuperCollider .它有一个FFT库,合理的图形用户界面/图形库,但其真正的优势在于它基于的Smalltalk语言,它提供了丰富的功能和面向对象的工具。我觉得这个系统是一个真正的工作乐趣。它附带了一个交互式解释器,可以帮助开发更为特殊而不是结构化的地方。

    试试看,你可能会喜欢的。