5

我试图使用 html5 和 javascript 来获取 mp3 的振幅(和其他组件)。任何有帮助的图书馆?

4

1 回答 1

6

首先需要将问题划分为实时回放和非线性幅度等接入。

对于实时播放,您可以使用 Web Audio API

https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html

节拍示例

https://beatdetektor.svn.sourceforge.net/svnroot/beatdetektor/trunk/core/js/beatdetektor.js

对于非线性、非实时的访问,有两种方式

如果您允许服务器端处理,您可以编写将数据发送到 Echo Nest 服务器并通过 Echo Next Remix API 检索信息的代理

使用 Python 从 MP3 音乐中提取节拍

如果您想完全避免服务器端处理,您需要用纯 Javascript 解码 MP3,以便以非实时方式访问原始音频数据

https://github.com/devongovett/mp3.js

然后你需要对原始音频数据应用必要的过滤器来提取你需要的信息。这是信号处理的问题,与 Javascript 编程没有直接关系。如果您更仔细地指定您需要什么样的数据,人们可能会帮助您使用相关的 Javascript 库,例如用于快速傅立叶变换的库。

于 2012-09-15T11:00:46.663 回答