Удалить обложку с mp3agic

Я использую mp3agic для автоматического редактирования mp3-тегов, чтобы мое радио отображало все так, как мне нравится. Однако, мое радио, кажется, ненавидит большие изображения обложек альбомов, в результате чего остальная часть mp3-тега не анализируется. Следовательно, я хочу использовать mp3agic, чтобы удалить все обложки. Есть метод с именем ID3v2.setAlbumImage(byte[] albumImage, String mimeType) который реализуется AbstractID3v2Tag как видно здесь. Сначала я подумал о том, чтобы бросить в null значения, но после просмотра кода это не имеет никакого эффекта.

Вопрос: Как я могу удалить существующую обложку альбома с помощью setAlbumImage метод? Есть ли подходящий метод лучше?

4 ответа

Посмотрите на этот пример для повторной пометки: https://github.com/mpatric/mp3agic-examples/blob/master/src/main/java/com/mpatric/mp3agic/app/Mp3Retag.java#L94

Это может быть лучшим решением, потому что вы не можете удалить, а просто прочитать и написать изображение, насколько я знаю.

Я надеюсь, что это поможет вам найти решение

Короткий ответ

Согласно текущему 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");

Возможно, вы могли бы прочитать существующий тег, удалить его, а затем переписать тег с полями, которые вы хотели в целевом файле.

Нет простого способа удалить изображения альбома с помощью открытых методов. Я добавил новую проблему в проект в github, чтобы добавить эту функцию.

https://github.com/mpatric/mp3agic/issues/46

Другие вопросы по тегам