Java音乐播放:获取音频信息
·
Java音乐播放:获取音频信息
Java音频格式
【百度百科】音频格式:CD格式、WAVE(*.WAV)、AIFF、MPEG、MP3、MPEG-4、MIDI、WMA、RealAudio、VQF、OggVorbis、AMR、APE、FLAC、AAC
维基百科:音频编码格式的比较
使用jaudiotagger获取
官网地址:http://www.jthink.net/jaudiotagger
API DOC:http://www.jthink.net/jaudiotagger/javadoc/index.html
下载地址:https://repo1.maven.org/maven2/org/jaudiotagger/2.0.3/
maven { url ‘https://jitpack.io’ }
implementation ‘com.github.goxr3plus:jaudiotagger:2.2.7’
音频文件(mp3,flac格式等)的详细属性信息:(可查看jaudiotagger包中org.jaudiotagger.tag下FieldKey文件)
- 比特率(BitRate)
- 制作格式或制作技术(Format)
- 单曲名(TITLE)
- 单曲艺术家(ARTIST)
- 专辑名(ALBUM)
- 专辑艺术家(ALBUM_ARTIST)
- 音轨号(TRACK)
- 语言(LANGUAGE)
- 版权方(COPYRIGHT)
- … …
File file = new File("F:\\Music\\音乐\\Let Me Down Slowly.mp3");
MP3FileReader reader = new MP3FileReader();
AudioFile audioFile = reader.read(file);
System.out.println(audioFile.toString());



System.out.println(" ----- ----- ");
MP3AudioHeader audioHeader = new MP3AudioHeader(file);
System.out.println("标题:" + audioFile.getTag().getFirst(FieldKey.TITLE));
System.out.println("作者:" + audioFile.getTag().getFirst(FieldKey.ARTIST));
System.out.println("专辑:" + audioFile.getTag().getFirst(FieldKey.ALBUM));
System.out.println("比特率:" + audioHeader.getBitRate());
System.out.println("时长:" + audioHeader.getTrackLengthAsString() + " (" + audioHeader.getTrackLength() + "s)");
// System.out.println("大小:" + (file.length() / 1024F / 1024F) + "MB");
System.out.println("大小:" + (audioFile.getFile().length() / 1024F / 1024F) + "MB");
System.out.println(" ----- ----- ");

使用包中AudioFileIO、AudioFile

AudioFile audioFile = AudioFileIO.read(file);
System.out.println(audioFile.toString());
System.out.println("标题:" + audioFile.getTag().getFirst(FieldKey.TITLE));
System.out.println("作者:" + audioFile.getTag().getFirst(FieldKey.ARTIST));
System.out.println("专辑:" + audioFile.getTag().getFirst(FieldKey.ALBUM));
System.out.println("比特率:" + audioFile.getAudioHeader().getBitRate());
System.out.println("时长:(" + audioFile.getAudioHeader().getTrackLength() + "s)");
System.out.println("大小:" + audioFile.getFile().length() + " B");
System.out.println("文件名称:" + audioFile.getBaseFilename(audioFile.getFile()));
System.out.println("文件类型:" + audioFile.getExt());

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)