2
我正在建立一個無線電播放器,我需要實時從音頻流中檢索和更新元數據。如何使用MediaPlayer獲取流媒體音頻元數據?
我已經與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
?
我無法從'/ stats'或'/ 7.html'獲取任何數據,因此我遵循http://www.smackfu.com/stuff/programming/shoutcast.html中的說明。 – jul