我可以使用MediaPlayer接口成功地收听音频流,但是如何获取流的属性,例如当前比特率或流文本(许多流,如在线广播,包括当前播放的曲目)?
我尝试查找这些信息,但无法找到。如果可能的话,是否有在Android开发者网站上列出各种可用“属性”的列表?
我尝试查找这些信息,但无法找到。如果可能的话,是否有在Android开发者网站上列出各种可用“属性”的列表?
onInfoListener
接口,您可以在扩展MediaPlayer
的类中实现它。这需要您实现public boolean onInfo(MediaPlayer mp, int what, int extra)
。 http://developer.android.com/reference/android/media/MediaPlayer.OnInfoListener.html指出了what=MEDIA_INFO_METADATA_UPDATE
。我可能把这件事想得比必要的还要复杂,但你可以使用Jlayer或其他MP3解码库来解码流的帧以获取所需的信息。不确定是否有一种只使用Android SDK就能完成此操作的方法。
http://yp.shoutcast.com/Metadata_Info1.php?surl=<stream_url>
,这个项目是无用的。绝对是杀鸡焉用牛刀,会产生很多依赖关系。 - rds