是否可以使用html5播放shoutcast(或某些)互联网广播流?
所以我有下一个代码:
<html>
<body>
<audio src="http://shoutcast.internet-radio.org.uk:10272/" />
</body>
</html>
我将其另存为HTML页面并启动浏览器(Google Chrome 4.0.249.78,safary或FF)
但它不起作用/工作!(
它不会与我试图播放的任何其他网络电台一起播放!(
为什么!?!我做错了什么?
btw:来自HTML5 (including next generation additions still in development) 2.6.1 Protocol concepts 用户代理可以实现各种传输协议,但是该规范主要根据HTTP定义行为。 [HTTP]
HTTP GET方法等同于协议的默认检索操作。例如,FTP中的RETR。在HTTP术语中,这些行为是幂等的和安全的。
HTTP响应代码等同于具有相同基本含义的其他协议中的状态。例如,“找不到文件”错误等同于404代码,服务器错误等同于5xx代码,依此类推。
HTTP标头等同于具有相同基本含义的其他协议中的字段。例如,HTTP身份验证标头等同于FTP协议的身份验证方面。
答案 0 :(得分:42)
在http
请求的末尾添加分号。它是由shoutcast提出的协议,以覆盖其浏览器检测。像这个例子:
<audio controls src="http://shoutcast.internet-radio.org.uk:10272/;"></audio>
答案 1 :(得分:16)
HTML5未指定播放器必须支持的音频格式(无论是渐进式还是流式)。这取决于浏览器根据需求和实施可行性来确定。在早期的草稿中,我们尝试指定所有浏览器必须支持的一些基线编解码器和格式,但每种可能的格式都会导致某些浏览器供应商拒绝实现它。
以下内容似乎适用于Safari(4.0.4,WebKit nightly 6531.21.10,r54538,Mac OS X 10.6.2),但不适用于Chrome或Firefox:
<!DOCTYPE html>
<audio controls src="http://shoutcast.internet-radio.org.uk:10272/"></audio>
(请注意<audio>
在HTML序列化中需要结束标记,它不能使用XML样式的自动结束标记,我需要包含controls
或autoplay
为了实际启动音频)
这可能是因为Safari免费获得Shoutcast的支持,因为它只使用QuickTime来处理它所提供的任何音频和视频URL,而QuickTime已经支持Shoutcast。这也可能导致一些奇怪的错误,因为QuickTime的HTTP实现,quirky,是好的。{/ p>
我建议在不支持它的浏览器中提交要求Shoutcast支持的bug。以下是Firefox (Gecko/Mozilla),Chrome (Chromium)和Safari的错误跟踪器(如果它不适用于Windows,或类似的东西)。
答案 2 :(得分:10)
您不能使用ShoutCast,但使用Icecast和edcast客户端,您可以通过HTML5 <audio>
标记流式传输vorbis。只需将其指向http://your-url.com:port/stream.ogg:p
答案 3 :(得分:4)
<!DOCTYPE html>
<html>
<head>
<title>audio testing live stream!</title>
</head>
<body>
<audio controls="controls" autoplay="autoplay" src="http://oggvorbis.tb-stream.net:80/technobase.ogg">
</audio>
</body>
</html>
就是这样!
BB
答案 4 :(得分:4)
<!DOCTYPE html>
<audio controls src="http://baldyradio.com:8010/;"></audio>
这适用于IE9的发布版本,对于FireFox 4来说,悲伤也是如此!
答案 5 :(得分:3)
阅读HTML 5音频规范(http://www.w3schools.com/html5/html5_audio.asp)W3C概述了哪些格式(MP3或OGG)受哪些浏览器支持
我要做的是有一个播放MP3和OGG流的icecast服务器(不是ShoutCast)
使用javascript检测浏览器类型 - http://www.javascripter.net/faq/browsern.htm
if(浏览器不支持HTML5){ 打印消息 - 使用新浏览器 }
if(浏览器支持HTML5和OGG流媒体(使用W3c中的列表)){ 使用SRC标签中来自icecast服务器的OGG流 }
if(浏览器支持HTML5 MP3流媒体(使用W3C列表)){ 使用SRC标签中来自icecast服务器的MP3流 }
我认为这将涵盖所有主流浏览器,并将解决大多数人的问题 你可能会发现,随着越来越多的浏览器支持
,这将是多余的答案 6 :(得分:2)
<audio controls src="http://example.com:8000/mountpath;"></audio>
答案 7 :(得分:2)
上述帖子给出了正确的答案,尽管他们没有提到使用斜杠。确保在流URL和端口之后有 /; 。
<audio src="http://shoutcast.internet-radio.org.uk:10272/;" />
答案 8 :(得分:1)
好吧,Firefox和Opera不支持非免费编解码器,如mp3(与Opera 10.5 alpha一样,FF 3.5及更高版本仅支持PCM wav和Ogg Vorbis用于音频)。我相信Chrome和Safari确实支持MP3。
下一个问题是您的网址似乎指向描述流的网页,而不是流。
最后,据我所知,没有人为音频元素实现播放列表解析器(规范只提到音频文件,而不是播放列表),这是一个问题,即使你点击“听”你得到播放列表而非原始流。
答案 9 :(得分:0)
是的,你可以玩ShoutCast2我就是这样使用它
<audio preload="none" autoplay="autoplay" controls="controls">
<source src="http://178.32.62.172:9079/stream" type="audio/mpeg">
Your browser does not support this player, please update the version
</audio>