向iPad提供mp4视频

3
我想在HTML文档中放置一个mp4视频,但它在实际服务器上无法播放。而本地却可以播放。即使在没有任何HTML的情况下,当我使用本地Apache时,它也可以播放。在网络服务器上,iPad显示“无法播放电影”。文件的标题在两个服务器上都是“video/mp4”。有什么问题吗?更新:本地Apache标题: "Accept-Ranges    bytes Cache-Control    max-age=86400 Connection    Keep-Alive Content-Length    8993646 Content-Type    video/mp4 Date    Thu, 23 Feb 2012 14:40:58 GMT Etag    "733258-893b6e-36d96c80" Keep-Alive    timeout=15, max=100 Last-Modified    Thu, 23 Feb 2012 10:36:18 GMT" 实时服务器标题: "Cache-Control    max-age=86400 Connection    Keep-Alive Content-Length    8993670 Content-Type    video/mp4 Date    Thu, 23 Feb 2012 14:40:40 GMT Keep-Alive    timeout=15, max=100 Server    Apache X-Mod-H264-Streaming    version=2.0" 此外,奇怪的是本地和实时服务器的Content-Length有所不同...

它能在电脑上运行吗?还是只有在iPad上不能运行?如何在本地Apache上使用iPad播放电影? - JJJ
@Juhana,它在所有浏览器上的计算机上都可以工作,但是从实时机器提供服务时,在iPad上无法工作。 - spankmaster79
你能告诉我们你的mp4文件的编码设置吗?这里是mp4文件的标准iPad编码设置:http://www.encoding.com/ipad_streaming_template。 - bhups
4个回答

3

检查实时服务器发送的mime头与您本地发送的相同。实时服务器可能会发送application/octet-stream(或其他默认类型),而不是video/mp4。浏览器大多数情况下会根据响应头中提供的mime类型进行处理,而不是提供的文件扩展名。


响应头在两个上都是video/mp4,还有什么其他的头可以导致这种情况? - spankmaster79

2

问题出在live-server的错误Conten-Length头文件上。修复了这个问题后就可以正常工作了。

同事修复了服务器设置,所以我不知道他具体做了什么。只是现在长度与我的本地机器相同。


0
如果您使用HTML5和一个mp4文件,请确保链接没有问题,并添加以下内容进行进一步测试。在iPad上播放该文件不应该有任何问题。
<video width="320" height="240" controls="controls">
  <source src="movie.mp4" type="video/mp4" />
  Your browser does not support the video tag. //add this line
</video>

请再仔细阅读第二句话...它可以在本地Web服务器上运行...但是在实际机器上无法运行... - spankmaster79

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接