为什么 Safari 无法在 <video> 中播放没有扩展名的文件? [英] Why won't Safari play file without extension in <video>?
问题描述
我有一个名为 52bbb58c 的文件,没有文件扩展名,它是 mp4 视频.
I have file named 52bbb58c without file extension and it is mp4 video.
当我尝试将它作为 &
添加到具有属性类型 (video/mp4) 的 时,它不会播放.
When I try to add it as &<source>
to <video>
with attribute type (video/mp4), it doesn't play.
这适用于 Chrome 和 Firefox.我如何为 Safari 修复它?
This works on Chrome and Firefox working. How do I fix it for Safari?
推荐答案
Safari 在播放视频和音频等流媒体时非常繁琐.它有以下要求
Safari is extremely fussy when it comes to playback of streamed media such as video and audio. It has the following requirements
- 托管媒体的服务器/应用程序必须支持字节范围.Safari 将进行 2 字节的试用下载以确定媒体长度,然后它会根据文件的大小以一个或多个块下载媒体.如果你只是将所有数据发送给它,它不会很好玩.
- 从媒体服务器返回的内容范围必须包含媒体总大小的数字,而不仅仅是*".
- 媒体 URL 必须具有与媒体类型匹配的后缀.这就像 IE 一样:正确选择 mime 类型是徒劳的,因为 Safari 不会遵守这里的规则,它会忽略 mime 类型.
请注意,如果播放失败,Safari 不会告诉您问题是什么,只会引发媒体错误而没有更多信息.
Note that Safari doesn't tell you what the problem is if it fails on playback, there's just a media error raised with no further information.
对于 mpeg 4 视频/h.264,后缀 .mp4 有效对于 mpeg 4 音频/aac,后缀 .aac 有效
For mpeg 4 video / h.264, the suffix .mp4 works For mpeg 4 audio / aac, the suffix .aac works
如果您是 Safari 开发者,请考虑修复这些问题.
If you are a Safari dev please consider fixing these things.
这是在 Safari 11.1.2 上测试的
This is tested on Safari 11.1.2
这篇关于为什么 Safari 无法在 <video> 中播放没有扩展名的文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!