向 iPad 提供 mp4 视频

发布于 2025-01-08 15:52:16 字数 683 浏览 0 评论 0原文

我想在 HTML 文档中提供 mp4 视频,但它无法在实时服务器上播放。在本地它有效。

即使仅使用不带任何 HTML 的文件,当我使用本地 Apache 时它也会播放。在网络服务器上,iPad 显示“无法播放电影”

两台服务器上的文件标头均为“video/mp4”。

这里可能有什么问题?

问候

更新:

标头本地 Apache:

接受范围字节 缓存控制最大年龄=86400 连接保持活动状态 内容长度8993646 内容类型视频/mp4 日期2012 年 2 月 23 日星期四 14:40:58 GMT 电子标签 “733258-893b6e-36d96c80” 保持活动状态超时=15,最大=100 最后修改时间2012 年 2 月 23 日星期四 10:36:18 GMT

标头实时服务器:

缓存控制最大年龄=86400 连接保持活动状态 内容长度8993670 内容类型视频/mp4 日期2012 年 2 月 23 日星期四 14:40:40 GMT 保持活动状态超时=15,最大=100 服务器阿帕奇 X-Mod-H264-流媒体版本=2.0

同样奇怪的是内容长度与本地的和实时的不同......

I want to serve a mp4 video in a HTML document but it doesn't play on the live server. Locally it works.

Even using only the file without any HTML it does play when I use my local Apache. On the webserver the iPad says "Movie could not be played"

The header for the file is "video/mp4" on both Servers.

What could be the problem here?

Regards

UPDATE:

Header local 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

Header live server:

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

What's also weird is that the Content-Length differs from local to live...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

梦醒灬来后我 2025-01-15 15:52:16

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

Check what the live server is sending out for a mime header v.s. what your local one is. The live server may be sending application/octet-stream (or some other default type) instead of video/mp4. Browsers go by the supplied mime-type in the response headers for the most part, not the served up file extension.

冰葑 2025-01-15 15:52:16

解决方案是来自实时服务器的错误 Conten-Length 标头。解决这个问题后就成功了。

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

Solution is a wrong Conten-Length header from the live-server. After fixing this problem it worked.

Collegue fixed server settings, so I don't know excactly what he did. Just that the lenght is now the same as on my local machine

我的痛♀有谁懂 2025-01-15 15:52:16

如果您将 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>

If you are using the HTML5 along with a mp4 file. There should be no problems playing the file on your iPad.. the only thing left is to make sure the link is not broken and add this part to make further testing :

<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>
很糊涂小朋友 2025-01-15 15:52:16

提供媒体文件的 Web 服务器还应该支持“Accept-Ranges”标头。 另一个 stackoverflow 问题中提到了这一点有一个指向 苹果文档

The web server serving the media files should also support 'Accept-Ranges' header. This is mentioned in another stackoverflow question which has a link to apple documentation.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文