用Java查找MP3文件的持续时间

时间:2011-04-22 19:39:57

标签: java mp3

好的,所以我尝试使用ID3标签来获取持续时间,我也尝试使用JMF媒体播放器.getDuration()。

player.getDuration().getSeconds()

该文件是VBR。 JMF中是否有可用于解决此问题的轻量级库或其他内容。

感谢。

1 个答案:

答案 0 :(得分:4)

我使用JAudioTagger来实现这一目标。以下代码将为您提供MP3曲目的持续时间。

int duration = 0;

try {
  AudioFile audioFile = AudioFileIO.read(new File("file.mp3"));
  duration = audioFile.getAudioHeader().getTrackLength();

} catch (Exception e) {
  e.printStackTrace();

}

您也可以将audioFile.getAudioHeader()转换为MP3AudioHeader并使用方法getPreciseTrackLength()来获得更精确的持续时间。但是,这(我相信)仅适用于MP3文件而不适用于其他格式(如WAV文件)。