Firefox缓存而不是直播流

时间:2012-11-20 23:15:05

标签: html5 firefox stream icecast internet-radio

我们使用icecast服务器建立了一个互联网广播流媒体,通过html5音频标签将MP3流式传输到Firefox。但是,有时拖缆会因任何原因(断开连接等)而停止,当您重新启动流式传输时,它会从会话开始时开始流式传输,这使我们相信它正在播放浏览器缓存中的内容。

让流媒体播放实际直播的唯一方法是删除Firefox中的历史记录。这在其他浏览器中不会发生。如果使用闪回后退而不是html5音频标记,也会发生这种情况。

考虑使用以下脚本但不认为它适用于此场景。

<meta http-equiv="Cache-control" content="no-cache" />

任何见解都会有所帮助。感谢。

2 个答案:

答案 0 :(得分:5)

我发现使用SHOUTcast / Icecast流,保证不会从缓存中播放的唯一方法是使用添加缓存破坏URL参数的旧方法。

如果您的原始流网址是:

http://1.2.3.4/someMountPoint

然后在播放时使用JavaScript生成这样的URL:

http://1.2.3.4/someMountPoint?nocache=123456789

这确保不会发生缓存,对于浏览器而言,它们是不同的资源。

答案 1 :(得分:0)

icecast.xml

 <http-headers>
    <header name="Cache-control" value="no-cache" />
</http-headers>