私はラジオ プレーヤーを作成していますが、リアルタイムでオーディオ ストリームからメタデータを取得して更新する必要があります。
私は試してみましMediaMetadataRetriever
たが、null値を取得します:
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
ますか?