从本质上讲,我要问的问题是,当wav文件由于大文件而导致片段崩溃时,如何查看其数据,然后在播放歌曲时确定其幅度。可以将程序中的振荡想像成Winamp来对音乐进行视觉化。在这种情况下,我需要形成声波的数值。

我对诸如采样率之类的东西进行了一些疯狂的研究,甚至设法找到了一些代码,但这并没有帮助我完成这项任务。

如果有人愿意提供一个粗略的轮廓和一些代码,我将不胜感激。谢谢

最佳答案

此代码未经测试,但这大致就是您应该做的:

File fileIn = new File("C:\\path\\to\\your\\file.wav");
AudioInputStream audioInputStream = AudioSystem.getAudioInputStream(fileIn);
int size = audioInputStream.available();
byte[] b = new byte[size];
if (size == audioInputStream.read(b)) {
  // Do what you have to do
}

10-07 15:28