好的,所以我尝试使用 ID3 标签来获取持续时间,我也尝试使用 JMF media player.getDuration()。
player.getDuration().getSeconds()
该文件是 VBR。 JMF 中是否有任何轻量级库或其他东西可以用来解决这个问题。
谢谢。
最佳答案
我使用 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 文件)。
关于java - 在 Java 中查找 MP3 文件的持续时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5759331/