如何从api 8获取mp3或mp4的元数据,但不想使用ffmpegMediametadataretriever库,因为这个库的大小为13 MB,对我来说不是一个好的解决方案!谁能帮助我获取URL的id3tag?!!我尝试了很多方法,比如id3tag的可用java库我无法做到。请帮助我。我很感谢你的代码示例。 我使用的代码:
Mp3File mp3file = null; 尝试{ mp3file = new Mp3File(“http://www.stephaniequinn.com/Music/Commercial%20DEMO%20-%2009.mp3”); } catch(IOException e){ e.printStackTrace(); } catch(UnsupportedTagException e){ e.printStackTrace(); } catch(InvalidDataException e){ e.printStackTrace(); }
if (mp3file.hasId3v1Tag()) {
ID3v1 id3v1Tag = mp3file.getId3v1Tag();
System.out.println("Track: " + id3v1Tag.getTrack());
System.out.println("Artist: " + id3v1Tag.getArtist());
System.out.println("Title: " + id3v1Tag.getTitle());
System.out.println("Album: " + id3v1Tag.getAlbum());
System.out.println("Year: " + id3v1Tag.getYear());
System.out.println("Genre: " + id3v1Tag.getGenre() + " (" + id3v1Tag.getGenreDescription() + ")");
System.out.println("Comment: " + id3v1Tag.getComment());
}
答案 0 :(得分:2)
尝试FFmpegMediaMetadataRetriever:
FFmpegMediaMetadataRetriever mmr = new FFmpegMediaMetadataRetriever();
mmr.setDataSource("some MP3 URL");
mmr.extractMetadata(FFmpegMediaMetadataRetriever.METADATA_KEY_ALBUM);
mmr.extractMetadata(FFmpegMediaMetadataRetriever.METADATA_KEY_ARTIST);
byte [] artwork = mmr.getEmbeddedPicture();
mmr.release();
答案 1 :(得分:1)
我做到了最后,只需将arm-fmmr.aar添加到app libs文件夹,然后在build.gradle中添加以下行:
repositories {
flatDir {
dirs 'libs'
}
}
dependencies {
compile (name:'arm-fmmr', ext:'aar')
}