Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/231.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 SHOUTcast-Polling 7.html_Android_Android Mediaplayer_Audio Streaming_Shoutcast - Fatal编程技术网

Android SHOUTcast-Polling 7.html

Android SHOUTcast-Polling 7.html,android,android-mediaplayer,audio-streaming,shoutcast,Android,Android Mediaplayer,Audio Streaming,Shoutcast,我不喜欢通过投票来获取信息,我怀疑有更好的方式来实现我的目标 我正在用Android的MediaPlayer播放互联网广播流。我可以通过请求服务器地址上的7.html文件来确定播放的是哪首曲子,由哪位艺术家演奏 我的问题是: 有没有办法在新歌开始时收到通知 玩? 我必须轮询7.html以了解现在正在播放的内容吗? 如果我真的要投票,有什么办法可以决定吗 当前歌曲的持续时间,因此我只能在播放新歌时进行投票 开始? 我想,如果我有自己的低级流处理功能,我可以知道歌曲何时更改,因为我会收到元数据,但我

我不喜欢通过投票来获取信息,我怀疑有更好的方式来实现我的目标

我正在用Android的MediaPlayer播放互联网广播流。我可以通过请求服务器地址上的7.html文件来确定播放的是哪首曲子,由哪位艺术家演奏

我的问题是:

有没有办法在新歌开始时收到通知 玩? 我必须轮询7.html以了解现在正在播放的内容吗? 如果我真的要投票,有什么办法可以决定吗 当前歌曲的持续时间,因此我只能在播放新歌时进行投票 开始?
我想,如果我有自己的低级流处理功能,我可以知道歌曲何时更改,因为我会收到元数据,但我不确定如何使用Android MediaPlayer类实现这一点。

是的,7.html方法不可靠,而且越来越不可用。正如您所建议的,您必须编写一个流解复用器来将音频和元数据组件分开。我不是Android开发人员,所以我不能建议一种方法来实现这一点,但我在这里看到了处理元数据的堆栈溢出类。我确实写了关于如何在PHP中实现这一点的说明。也许可以翻译成:@Brad:谢谢Brad。我有一些C代码可以做到这一点。。现在我只需要每隔10秒进行一次投票,直到我觉得有必要用Android编写自己的流媒体播放器为止。您是否每次都尝试获取这里描述的元标记?我知道SHOUTcast刚刚更新了他们的API,但我只使用iOS版本。我们使用标签StreamTitle,通常98%是艺术家头衔。如果artist包含一个-…@longilong:谢谢你的回复,你只需要使用正则表达式。。好像很久以前我就这么做了。我在安卓系统上使用轮询让它工作正常,但无论我在iOS上做什么都可以。我认为iOS中的播放器抽象必须过滤掉流中包含的元数据,而Android没有。真不敢相信我问起这件事的时候只有11月。似乎是一辈子以前的事了: