Android 安卓从mp3中获取频率峰值

Android 安卓从mp3中获取频率峰值,android,mp3,fft,frequency,Android,Mp3,Fft,Frequency,我正在创建android音频播放器,我想增加用频率和振幅绘制实时图表的可能性(我不知道它的确切名称)。我知道如何用FFT做这件事。但FFT只能应用于原始数据。我的播放器有mp3。那么,如何从mp3文件中提取频率及其振幅呢 我看到了一个可能的决定:编写自己的本机库来解压mp3文件(AFAIK android没有解压mp3的工具),然后使用FFT创建频谱图。 但是这种方法有一个基本缺点——它需要大量的时间。将mp3转换为wav并对完整的原始数据应用FFT需要花费很多时间。显然,在播放过程中,在移动中

我正在创建android音频播放器,我想增加用频率和振幅绘制实时图表的可能性(我不知道它的确切名称)。我知道如何用FFT做这件事。但FFT只能应用于原始数据。我的播放器有mp3。那么,如何从mp3文件中提取频率及其振幅呢

我看到了一个可能的决定:编写自己的本机库来解压mp3文件(AFAIK android没有解压mp3的工具),然后使用FFT创建频谱图。 但是这种方法有一个基本缺点——它需要大量的时间。将mp3转换为wav并对完整的原始数据应用FFT需要花费很多时间。显然,在播放过程中,在移动中进行播放会更好。但是我不知道怎么做

有没有其他方法可以实现我的目标


另外,我需要这样的东西,例如,使用mp3解码器可以实现这个目标。它可以为android构建,并提供了访问原始歌曲数据的可能性。我发现这个项目使用不同的mp3解码器