如何跟踪音频文件中的峰值?

时间:2014-02-02 12:13:13

标签: java android audio mp3

我的目的是跟踪歌曲中的节拍和峰值,并使用点或类似的东西在“歌曲图形描述”中表示它们。

换句话说,我想跟踪并以“声音云图形”显示节拍和峰值......

您是否知道如何以图形方式绘制声波,跟踪节拍和峰值并以图形形式显示它们?

到现在为止,我可以使用媒体播放器播放一首歌

MediaPlayer mediaPlayer = MediaPlayer.create(context, R.raw.sound_file_1);
mediaPlayer.start(); // no need to call prepare(); create() does that for you

1 个答案:

答案 0 :(得分:0)

实现这一目标取决于您是否可以访问正在播放的原始样本。通过阅读Android MediaPlayer class,我看到create()方法的第二个参数是Uri class。它似乎不能访问原始PCM样本。你是否已经从Uri继承了另一个课程,你在这里经历了什么?我看到Uri类没有“原始”成员。

我打赌你想播放MP3或MP4音频文件,而不仅仅是PCM WAV文件?如果您想进行可视化,那么您需要以这种或那种方式访问​​原始音频样本流。如果你决心要做到这一点,你可能需要整合自己的音频解码库,这样你就可以自己完成繁重的工作,只是为了获得对原始字节的访问。