使用Python 2.6快速分析音频文件的频谱?

3
我想做的是编写一个子程序,每隔200毫秒分析一次给定的音频文件,并将特定频率范围内的频率强度值(从0到1作为浮点数)输出到一个数组中,稍后我会保存该值。然后,该值将用作图形的不透明度值,该图形应“闪光”到音频文件。
问题在于,我以前从未涉足过音频分析领域,也不知道从何开始。我曾经查看了pymedia和scipy / numpy,认为我能够使用FFT来实现这一目标,但我真的不确定如何操纵数据以得到所需的结果。 pymedia的SpectrAnalyzer类文档几乎不存在,网站上的示例实际上无法与最新版本的库一起使用 - 这并没有使我的生活变得更轻松。
我该如何开始这个项目?我完全不知道应该使用哪些库。

你可能会在这里找到有用的代码:http://www.swharden.com/blog/2010-03-05-realtime-fft-graph-of-audio-wav-file-or-microphone-input-with-python-scipy-and-wckgraph/ - unutbu
1个回答

3

首先,您需要了解采样的工作原理,然后可以使用Scipy FFT例程(它们非常快速)来输出频率强度值,然后您可以使用Matplotlib绘制此类图形。 请参见这里的一篇文章,介绍如何使用Python分析声音文件,这里是一个类似的有关FFT和Python中的频谱图的问题。


我使用scipy.io.wavfile来加载音频文件的信号,并使用matplotlib的specgram函数对其进行分析,现在我有了我认为需要的数据,但是我不知道该如何处理这些数据。这似乎是我所需要的一切 - 我只是不知道如何使其具体化。有什么想法吗? - Ephemeralis

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接