来自Mongrel服务器的HTML5视频持续时间NaN,但是直接文件访问的正确时间

时间:2010-07-11 17:06:41

标签: video html5 mongrel html5-video

直接从文件系统访问以下html会给我正确的持续时间。

<video src="multimedia/bbb400p.ogv" id="v"></video> 
<button onclick="alert(document.getElementById('v').duration);
                 document.getElementById('v').play()">Play</button>

但是,通过mongrel web服务器(在我的机器上和通过heroku云服务)访问它会给我一个NaN。

还创建了测试代码,为“canplay”事件添加了一个监听器,并且仍然使用服务器获得NaN的持续时间。

这在FireFox和Chrome中发生。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:1)

似乎Mongrel和其他一些服务器不支持字节范围请求。因此,浏览器(对于Ogg文件)在到达结束之前无法知道视频的长度。

以下是一篇文章:http://www.ruby-forum.com/topic/130850

运行Apache,它支持我认为的字节范围请求,可以工作。要考虑的一件事是在Ogg文件中有足够的关键帧来改进ogg文件中的导航(跳转)。