我最近开始构建一个音频标签编辑器,但现在我发现一个我无法解决的问题。 我的问题是我不知道如何读取 .m4a 文件中的标签。
我使用此代码使用名为“Jaudiotagger”的公共外部库在 mp3 文件上读取它,并且工作正常。
try {
File file = new File(TrackPath);
AudioFile f = AudioFileIO.read(file);
Tag tag = f.getTag();
audioAlbum.setText(tag.getFirst(FieldKey.ALBUM));
audioArtist.setText(tag.getFirst(FieldKey.ARTIST));
}catch(Exception e) {
e.printStackTrace();
};
但是当我尝试使用 .m4a 文件时,即使使用 Mp4Tag 和 Mp4FieldKey 而不是 Tag 和 FieldKey,也只会返回空白字符串。
有谁知道任何其他外部库可以读取这些类型的音频文件或任何解决方法?
而且我不想使用 Android MediaStore,因为我希望将标签合并到文件中,这样我就可以将文件移动到另一台设备并保留它们。
提前致谢。
Jaudiotagger 处理 mp4 和 m4a 完全相同
您正在使用该库从文件中读取元数据,但在我看来,您假设该文件中已经包含艺术家和专辑元数据,但可能您的第二个文件中没有任何元数据。