如何在WP7上播放来自Icecast的音频流

时间:2011-01-11 19:42:43

标签: windows windows-phone-7 streaming icecast

如何在WP7上播放来自Icecast的音频流

我尝试过SMF,SmoothStreaming客户端和MediaElement。

这些都没有奏效。格式为asx或wma。

编辑:

最近我发现了一个新流。当我在设计师时,这条小溪有效。但它不适用于该设备。在设备上,流被立即打开和关闭。

此流来自MP3格式的IceCast服务器。有一个?.mp3扩展名。或没有。

4 个答案:

答案 0 :(得分:1)

当您直播流媒体时,流可以由IceCast服务器或ShoutCast服务器进行编码。要读取这些流,您需要在memomry中解码流,并在解码后将其传递给MediaElement。

查看Mp3MediaStreamSource

Audio output from Silverlight

我在这方面浪费了大量时间,这是我迄今为止找到的最佳解决方案。

答案 1 :(得分:0)

快速浏览一下Icecast网站(我不熟悉他们的服务)似乎他们为流媒体音频提供的大部分内容都是以MP3格式提供的,但他们在M3U中提供这个播放列表或XSPF格式。您不能将此提供给WP7框架中的任何内置控件或类,但您可以解析文件的内容并将其传递给MediaElement以播放单个文件。

M3U文件是一个简单的组成URL列表,因此最简单的处理,但XSPF格式(XML格式)提供了更多信息,例如标题。您可以轻松地使用XDocument类来解析XSPF文件,然后使用LINQ查询内容。

答案 2 :(得分:0)

您是不是将。.mp3添加到pls文件右侧,嵌入式URL?如果您使用的是从PLS / M3U文件获得的URL,则可能需要为其附加文件扩展名。您通常可以通过向URL添加?ext = .mp3或?file.mp3来实现此目的,并且它应该与MediaElement一起使用,因为我在MS开发板上看到人们已经开始使用Shoutcast流。

答案 3 :(得分:0)

从计算机上拔下插件时,您的流是否可以在设备上运行?当你插入Zune同步中心时,媒体播放不起作用。

克里斯