Я использую 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).