Нужна помощь в понимании JAudioTagger, Tag Mapping

Я использую библиотеку JAudioTagger для чтения метаданных из моих музыкальных файлов. Мне удалось получить информацию, но я просмотрел спецификацию по отображению тегов http://www.jthink.net/jaudiotagger/tagmapping.html. Я пытаюсь получить идентификатор записи MusicBrainz и не знаю, как выбрать этот конкретный. Файл mp3 - ID3v23 или v24, не знаю, какой именно. Я попытался выполнить поиск с помощью UFID и MUSICBRAINZ_TRACK_ID.

File file = new File("09 Bleeding Out.mp3");

    AudioFile mp3 = null;
    try {
        mp3 = AudioFileIO.read(file);
    } catch (CannotReadException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (TagException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (ReadOnlyFileException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (InvalidAudioFrameException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }


    Tag tag = mp3.getTag();
    System.out.println(tag.getFirst("UFID"));
    Iterator<TagField> it = tag.getFields();
    while(it.hasNext()) {
        System.out.println(it.next());
    }

1 ответ

Ты можешь использовать FieldKey.MUSICBRAINZ_TRACK_ID - это идентификатор записи. Он отображается на UFID:http://musicbrainz.org то есть поле, дающее UFID для этого трека согласно MusicBrainz.

Альтернативой может быть использование TXXX:MusicBrainz Recording Id,

Наконец, обратите внимание, что это поле не так часто встречается в файлах.

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