需要帮助了解JAudioTagger,Tag Mapping

时间:2014-12-12 01:11:33

标签: java metadata jaudiotagger

我正在使用JAudioTagger库从我的音乐文件中读取元数据。我能够检索信息,但查看标记映射规范http://www.jthink.net/jaudiotagger/tagmapping.html。我正在尝试检索MusicBrainz录制ID,并且不知道如何选择特定的ID。 MP3文件是ID3v23或v24,不确定是哪一个。我尝试使用UFIDMUSICBRAINZ_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 个答案:

答案 0 :(得分:1)

您可以使用FieldKey.MUSICBRAINZ_TRACK_ID - 这是录制ID。它映射到UFID:http://musicbrainz.org,即根据MusicBrainz为该轨道提供UFID的字段。

另一种方法是使用TXXX:MusicBrainz Recording Id

最后,请注意,此字段不是文件中常见的字段。