如何在android中的mp3文件中获取Embed Picture?

时间:2013-11-13 11:51:22

标签: android

我想在我的媒体播放器应用中展示专辑封面。我为api7(2.1)开发它。我使用getEmbedPicture()方法,但它出错,我找不到错误。

它出了什么问题?

     retriver.setDataSource(serviceBinder.path+serviceBinder.track);
    try{
        InputStream is=new ByteArrayInputStream(retriver.getEmbeddedPicture());
        if(is==null)
            cover.setImageResource(R.drawable.default_album);
        else{
            is=new ByteArrayInputStream(retriver.getEmbeddedPicture());
            Bitmap bMap = BitmapFactory.decodeStream(is);
            cover.setImageBitmap(bMap);
        }
    }
    catch(Exception e){
        Toast.makeText(getApplicationContext(), e.toString(), Toast.LENGTH_LONG).show();
    }

如何从android api7的mp3文件中嵌入图片?

感谢。

2 个答案:

答案 0 :(得分:0)

         MediaMetadataRetriever mmr = new MediaMetadataRetriever();
         mmr.setDataSource(songsList.get(songIndex).get("songPath"));
         byte[] artBytes =  mmr.getEmbeddedPicture();
         if(artBytes!=null)
           {

             Bitmap bm = BitmapFactory.decodeByteArray(artBytes, 0, artBytes.length);
             bSongImage.setImageBitmap(bm);
         }
         else
         {
             bSongImage.setImageDrawable(getResources().getDrawable(R.drawable.masud));
         }

其他用于没有嵌入图片

答案 1 :(得分:0)

API 7中不提供

MediaMetadataRetriever。您需要使用FFmpegMediaMetadataRetriever之类的库。