如何使用Python分析音频并将其分为高、中、低音以便可视化?

5 投票
3 回答
1988 浏览
提问于 2025-04-17 00:09

我打算尝试用Arduino和Python制作一个灯光音乐装置,通过串口通信来控制多个LED的亮度。电脑将使用麦克风或播放的MP3文件来生成数据。

我对音频处理不是很确定。有没有什么好的Python库可以处理正在播放的音频文件或麦克风数据(我更倾向于使用麦克风),然后把音频分成不同的频率范围,并把强度写入变量中?如果我使用麦克风,是否需要担心泛音的问题?

3 个回答

0

Portaudio有一个Python接口,可以让你从麦克风读取数据。

对于频段分离,你可以使用类似带通滤波器的东西,然后接入一个包络跟随器——每个感兴趣的频率段都用一个滤波器和跟随器。

0

可以访问 http://wiki.python.org/moin/Audio,这里有很多关于Python音频处理的工具包链接。

audioop包 提供了一些基本的波形处理功能。

另外,你还可以看看:

1

如果你不一定要用Python的话,可以考虑用PureData (PD)来处理音频分析。把PD和Arduino连接起来这个问题已经有人解决了,而且有很多现成的组件可以让你更轻松地处理音频。

撰写回答