如何从mp3中提取元数据?

时间:2012-07-04 11:13:24

标签: android mp3

我有mp3文件的文件名。如何从这个mp3文件中提取艺术家,专辑,专辑图像等元数据?

3 个答案:

答案 0 :(得分:11)

尝试使用API​​级别10或更高级别

 MediaMetadataRetriever mmr = new MediaMetadataRetriever();
 mmr.setDataSource(filePath);

String albumName = mmr.extractMetadata(MediaMetadataRetriever.METADATA_KEY_ALBUM));

依旧......

了解更多help

答案 1 :(得分:5)

         MediaMetadataRetriever mmr = new MediaMetadataRetriever();
         mmr.setDataSource(songsList.get(songIndex).get("songPath"));
         byte[] artBytes =  mmr.getEmbeddedPicture();
         if(artBytes!=null)
           {
        //     InputStream is = new ByteArrayInputStream(mmr.getEmbeddedPicture());
             Bitmap bm = BitmapFactory.decodeByteArray(artBytes, 0, artBytes.length);
             bSongImage.setImageBitmap(bm);
         }
         else
         {
             bSongImage.setImageDrawable(getResources().getDrawable(R.drawable.cmp));
         }

其他没有在音频文件中嵌入图像

答案 2 :(得分:0)

MetaDataRetriever m_metaRetriever = new MetaDataRetriever();
m_metaRetriever.setDataSource(MainActivity.this,uriSound);

setDataSource方法的输入参数也应包括上下文。否则抛出illigalArgument Exception。