Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何使用MediaPlayer获取流媒体音频元数据?_Android_Audio_Media Player_Metadata - Fatal编程技术网

Android 如何使用MediaPlayer获取流媒体音频元数据?

Android 如何使用MediaPlayer获取流媒体音频元数据?,android,audio,media-player,metadata,Android,Audio,Media Player,Metadata,我正在构建一个无线电播放器,我需要从音频流中实时检索和更新元数据 我已尝试使用MediaMetadataRetriever,但得到空值: MediaMetadataRetriever mmr; url = "http://stream0.wfmu.org/freeform-128k"; if (Build.VERSION.SDK_INT >= 14) mmr.setDataSource(url, new HashMap<String, String>()); els

我正在构建一个无线电播放器,我需要从音频流中实时检索和更新元数据

我已尝试使用
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";
MediaMetadataRetriever mmr;
url=”http://stream0.wfmu.org/freeform-128k";
如果(Build.VERSION.SDK_INT>=14)
setDataSource(url,newHashMap());
其他的
mmr.setDataSource(url);
串出“”;
out+=mmr.extractMetadata(MediaMetadataRetriever.METADATA\u KEY\u TITLE);
out+=“\n”;
out+=mmr.extractMetadata(MediaMetadataRetriever.METADATA\u KEY\u ARTIST);
out+=“\n”;
out+=mmr.extractMetadata(MediaMetadataRetriever.METADATA\u KEY\u相册);
out+=“\n”;
out+=mmr.extractMetadata(MediaMetadataRetriever.METADATA\u KEY\u YEAR);
out+=“\n”;
怎么了


我如何知道元数据何时更改?使用
oninfolinter
onInfo
?它是否处理我感兴趣的元数据(艺术家、标题…)或曲目的类型或语言代码,如
MediaPlayer.TrackInfo

您试图访问的元数据是通过SHOUTcast服务器(版本2)交付的。MediaMetadataRetriever不支持SHOUTcast元数据检索,因此您将无法使用它。据我所知,没有基于Java的库支持检索ShoutCastVersion2元数据,因此您需要自己编写代码。有关更多信息,请参阅指南。

我无法从
/stats
/7.html
获取任何数据,因此我按照中给出的说明进行操作。