如何从MP3文件中获取振幅数据?

时间:2012-09-12 02:44:45

标签: javascript html5 mp3 signal-processing amplitude

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

1 个答案:

答案 0 :(得分: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检索信息

Extracting beats out of MP3 music with Python

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

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

然后,您需要对原始音频数据应用必要的过滤器,以提取您需要的信息。这是信号处理的问题,并没有直接连接到Javascript编程。如果您更仔细地指定人们可能会帮助您使用相关的Javascript库(例如快速傅里叶变换库)之后的数据类型。