Android MediaMetadataRetriever returns null values

2019-02-16 10:53发布

I want to get information out of my media files (mp3 mostly) and I get only null from those values I want. I have tried all keys for extractMetadata(key). Am I skipping/missing something?

Code basis:

MediaMetadataRetriever f = new MediaMetadataRetriever();
f.setDataSource(item.getFilePath());

String title = f.extractMetadata(MediaMetadataRetriever.METADATA_KEY_TITLE);

I do get correct values with the duration key (MediaMetadataRetriever.METADATA_KEY_DURATION) and mimetype key (MediaMetadataRetriever.METADATA_KEY_MIMETYPE), which indicates that the datasource/filepath is working.

Poweramp (popular media player) is able to read metadata values, like title/author/composer etc. since it displays these extra values in the UI. Or perhaps Poweramp gets these values from some other source or method?

Any help is appreciated.

3条回答
狗以群分
2楼-- · 2019-02-16 11:29

Poweramp maintains its own database in /data/data/com.maxmpz.audioplayer/databases/folders.db You will need a rooted device to investigate this database. You can send me a pm if you want more details

查看更多
萌系小妹纸
3楼-- · 2019-02-16 11:37

This may sound silly but have you tried with many different mp3 files? Just with my experience if you get your mp3 files illegally the keys sometimes just aren't there.

查看更多
家丑人穷心不美
4楼-- · 2019-02-16 11:37

The meta data value associate with the given keyCode on success; null on failure.

查看更多
登录 后发表回答