我正在构建一个收音机播放器,我需要实时从音频流中检索和更新元数据。
我试过MediaMetadataRetriever
但得到空值:
MediaMetadataRetriever mmr;
url = "http://stream0.wfmu.org/freeform-128k";
if (Build.VERSION.SDK_INT >= 14)
mmr.setDataSource(url, new HashMap<String, String>());
else
mmr.setDataSource(url);
String out = "";
out += mmr.extractMetadata(MediaMetadataRetriever.METADATA_KEY_TITLE);
out += "\n";
out += mmr.extractMetadata(MediaMetadataRetriever.METADATA_KEY_ARTIST);
out += "\n";
out += mmr.extractMetadata(MediaMetadataRetriever.METADATA_KEY_ALBUM);
out += "\n";
out += mmr.extractMetadata(MediaMetadataRetriever.METADATA_KEY_YEAR);
out += "\n";
怎么了?
我怎么知道元数据何时发生变化?使用? OnInfoListener
_ onInfo
它是否处理我感兴趣的元数据(艺术家、标题...)或曲目的类型或语言代码,例如MediaPlayer.TrackInfo
?