我正在尝试在像应用程序这样的媒体播放器中使用JAudioTagger来为每首歌曲的元数据进行交换,但是我没有看到用于轨道持续时间的字段.我肯定必须有一个,但我似乎无法找到它并且几个搜索没有发现任何东西.我正在查看:http://www.jthink.com/jaudiotagger/tagmapping.html和java文档.
有谁有想法吗?感谢您的任何帮助!
正如前面的回答所说,轨道长度没有存储在标签中,但可以从音频本身导出,这就是为什么它可以通过audioheader对象而不是标签本身访问,即
AudioFile audioFile = AudioFileIO.readFile("/somefile.mp3");
System.out.println(audioFile.getAudioHeader().getTrackLength());
Run Code Online (Sandbox Code Playgroud)
如果它是一个mp3,你可以将tracklength输出nicel格式化为mm:ss
System.out.println((Mp3AudioHeader)audioFile.getHeader().getTrackLengthAsString());
Run Code Online (Sandbox Code Playgroud)
要么
new MP3File("/somefile.mp3").getMP3AudioHeader().getTrackLengthAsString();
Run Code Online (Sandbox Code Playgroud)