3

是否可以使用 HTML5 的 AUDIO 标签播放 Icecast 流?我使用的语法对 ShoutCast 似乎很满意,但对我感到困惑的 Icecast 却不满意。此外,如果我浏览到某个 Icecast 流的 URL,浏览器窗口会自动显示播放器(参见最后一个示例)。

工作 ShoutCast 示例。

<audio src="http://107.182.233.214:8000/;listen.pls?sid=1" autoplay="true" muted="false" controls="true" volume="1.0"></audio>

非工作 Icecast 示例。

<audio src="http://91.121.59.45:8016/;stream" autoplay="false" muted="false" controls="true" volume="1.0"></audio>

<audio src="http://91.121.59.45:8016/stream" autoplay="false" muted="false" controls="true" volume="1.0"></audio>

<audio src="http://91.121.59.45:8016" autoplay="false" muted="false" controls="true" volume="1.0"></audio>

在浏览器中自动打开播放器的 Icecast 流 URL。

http://91.121.59.45:8016/stream
4

1 回答 1

8

是否可以使用 HTML5 的 AUDIO 标签播放 Icecast 流?

是的,一点没错。

唯一的要求是浏览器支持您正在流式传输的编解码器。

我使用的语法对 ShoutCast 似乎很满意,但对我感到困惑的 Icecast 却不满意。

所有这些带分号的流 URL;仅用于 SHOUTcast。SHOUTcast 服务器在与流相同的 URL 上运行其管理界面。他们进行用户代理嗅探以确定客户端是网络浏览器还是音频播放器。许多年前,当网页开始播放音频时,他们需要一种方法来解决这个问题,以便浏览器可以获取音频流。带有分号的流 URL 强制 SHOUTcast 忽略浏览器的用户代理并将其替换为“MPEG OVERRIDE”,这会导致服务器的其余部分返回流。

;需要。整个;stream事情只是被复制和粘贴的不必要的东西。

您可以在此处阅读更多信息: https ://stackoverflow.com/a/38217135/362536

至于 Icecast 流,您所需要的只是:

<audio src="http://91.121.59.45:8016/stream" />

(当然,除非您支持多个编解码器,在这种情况下您将使用多个源。)

于 2016-07-17T06:29:24.113 回答