我正在使用mp3agic自动编辑mp3标签,以便我的收音机以我喜欢的方式显示所有内容。然而,我的收音机似乎讨厌大专辑艺术图像,导致无法解析其余的mp3标签。因此,我想使用mp3agic删除所有封面艺术。有一个名为ID3v2.setAlbumImage(byte[] albumImage, String mimeType)
的方法,由AbstractID3v2Tag
实现,如here所示。首先我考虑投入null
值,但在查看代码后这没有效果。
问题:如何使用setAlbumImage
方法删除现有专辑封面?有更好的方法吗?
答案 0 :(得分:3)
请看一下此示例的重新标记:https://github.com/mpatric/mp3agic-examples/blob/master/src/main/java/com/mpatric/mp3agic/app/Mp3Retag.java#L94
这可能是最好的解决方案,因为你不能删除,但只要我知道就读取和写入图像。
我希望这可以帮助您找到解决方案
答案 1 :(得分:0)
没有简单的方法可以通过公开的方法删除相册图像。我在github中为项目添加了一个新问题,以便添加此功能。
答案 2 :(得分:0)
也许您可以阅读现有标记,将其删除,然后使用目标文件中所需的字段重写标记。
答案 3 :(得分:0)
根据目前的javadoc [我在网上找不到,只能通过自己编译当前来源]可以通过
来完成clearAlbumImage();
ID3v2接口的功能。
以下是如何使用它的示例:
Mp3File mp3file = new Mp3File("example.mp3");
ID3v2 id3v2Tag;
if (mp3file.hasId3v2Tag()) {
id3v2Tag = mp3file.getId3v2Tag();
} else {
id3v2Tag = new ID3v24Tag();
mp3file.setId3v2Tag(id3v2Tag);
}
id3v2Tag.clearAlbumImage();
mp3file.save("example.mp3");