Cy.*_*Cy. 26 streaming html5 shoutcast audio-streaming icecast
是否可以使用HTML5播放shoutcast/icecast流?
如果是这样,我该如何实施呢?
小智 47
在http请求的末尾添加分号.这是shoutcast提出的协议,以覆盖它的浏览器检测.像这样:
<audio controls src="http://shoutcast.internet-radio.org.uk:10272/;"></audio>
Run Code Online (Sandbox Code Playgroud)
bob*_*nce 18
SHOUTcast存在一个很大的问题,我怀疑它是否负责它甚至不能用于支持MP3的Chrome.
SHOUTcast可以提供三种不同类型的响应:
本机-SHOUTcast"ICY"协议流式音频响应.如果访问流的播放器包含icy-metadata: 1标题,则决定执行此操作.
没有额外元数据的普通HTTP流式音频响应,适用于没有ICY支持的媒体播放器.
"SHOUTcast DNAS状态"页面和Web界面上的其他页面.
它如何决定是否提供网页而不是音频流?它猜测您是否使用Web浏览器.通过查看User-Agent标题是否以Mozilla/....因为所有的网络浏览器都是Mozilla,对吧?Jeez,SHOUTcast.
因此,当Chrome尝试获取要播放的音频流时,SHOUTcast认为它是一个网络浏览器(好吧......)并且拒绝将音频流添加到音频标签中.而是获取管理员网页.
(我猜想Safari正在通过icy-metadata标题来避免这个问题,特别支持SHOUTcast.由于Safari不会播放音频或视频,我现在无法测试它.也许它希望我为此安装QuickTime.它可以被塞满.)
因此,您可能需要添加Flash音频播放器作为后备.
小智 5
<audio src="http://85.25.108.20:8090/;" controls autoplay></audio>
Run Code Online (Sandbox Code Playgroud)
这应该可以正常工作,但请确保/;在流 URL 和端口之后。如果您不需要自动播放,请删除“自动播放”标签。