Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Java MP3 ID3标记库检索相册插图_Java_Id3v2 - Fatal编程技术网

如何使用Java MP3 ID3标记库检索相册插图

如何使用Java MP3 ID3标记库检索相册插图,java,id3v2,Java,Id3v2,我在做mp3播放器。我在用电话。据我所知,相册艺术品编码为ID3v2标签 我可以访问一个mp3文件的ID3v2标签,但我不能得到艺术品! 中的AbstractID3v2类中没有任何方法 似乎要找回一张照片 一个人如何使用这个库?我最终使用了另一个库,我使用了 这是一个很好用的图书馆。这是我用来获取专辑插图的示例代码 Mp3File song = new Mp3File(filename); if (song.hasId3v2Tag()){ ID3v2 id3v2tag = song.g

我在做mp3播放器。我在用电话。据我所知,相册艺术品编码为ID3v2标签

我可以访问一个mp3文件的ID3v2标签,但我不能得到艺术品! 中的AbstractID3v2类中没有任何方法 似乎要找回一张照片


一个人如何使用这个库?

我最终使用了另一个库,我使用了

这是一个很好用的图书馆。这是我用来获取专辑插图的示例代码

Mp3File song = new Mp3File(filename);
if (song.hasId3v2Tag()){
     ID3v2 id3v2tag = song.getId3v2Tag();
     byte[] imageData = id3v2tag.getAlbumImage();
     //converting the bytes to an image
     BufferedImage img = ImageIO.read(new ByteArrayInputStream(imageData));
}
还有可以读/写Mp3、Mp4(Mp4音频、M4a和M4p音频)Ogg Vorbis、Flac和Wma+其他一些(还有专辑艺术)

MP3File f=(MP3File)AudioFileIO.read(testFile);
列出工作清单;
if(f.hasID3v1Tag()){
ID3v1Tag v1tag=f.getID3v1Tag();
artworkList=(列表)v1tag.getArtworkList();
/* ... */
}

您可以使用mp3agic完成,这是另一种方式

在此处获取Jar:


谢谢你的提示!我无法导入该库。我尝试了
id3-1.6.0d9.jar
jid3lib-0.5.4.jar
,但都没有
Mp3File
。它也适用于其他音频文件格式吗?或者也需要找到那些?其他音频文件格式也有类似的东西吗?我想这个库已经坏了。我得到:
找不到从org.jaudiotager.audio.mp3.MP3File.readV2Tag引用的类“sun.nio.ch.DirectBuffer”
MP3File f = (Mp3File)AudioFileIO.read(testFile);
List<Artwork> artworkList;
if (f.hasID3v1Tag()) {
    ID3v1Tag v1tag = f.getID3v1Tag();
    artworkList = (List<Artwork>) v1tag.getArtworkList();
    /* ... */
}
Mp3File mp3file = new Mp3File("SomeMp3File.mp3");
if (mp3file.hasId3v2Tag()) {
   ID3v2 id3v2Tag = mp3file.getId3v2Tag();
   byte[] imageData = id3v2Tag.getAlbumImage();
}

if (imageData != null) {
   String mimeType = id3v2Tag.getAlbumImageMimeType();
   RandomAccessFile file = new RandomAccessFile("album-artwork", "rw");
   file.write(data);
   file.close();
}