我正在尝试在iPad的手机屏幕应用中播放视频。
此视频给出了错误:
MEDIA_ERR_SRC_NOT_SUPPORTED
我尝试播放的视频不是本地视频,当我在该视频上使用curl -I时,这是它带来的信息:
HTTP/1.1 200 OK
Server: nginx
Date: Tue, 13 Jan 2015 19:56:03 GMT
Content-Type: video/mp4
Content-Length: 12939401
Last-Modified: Thu, 20 Nov 2014 18:11:31 GMT
Connection: keep-alive
Keep-Alive: timeout=45
Accept-Ranges: bytes
我还试图从外部网站加载另一个视频,它确实有效(它也是一个mp4)。
我的手机版本是3.5.0.0
据我所知,我得到的是受支持的mp4,任何人都可以在这里看到任何错误吗?
答案 0 :(得分:0)
以防万一这对某人有帮助。请谨慎使用基线配置文件对移动视频进行编码。
似乎视频使用简单的配置文件进行编码。 Safari移动浏览器仅支持具有以下特征的原生视频:
iOS(包括iPad)上的Safari目前支持 MPEG-4视频(基线配置文件)和使用 H.264视频(基线配置文件)编码的QuickTime电影支持的音频类型。
正如本页所述:
答案 1 :(得分:0)
确保服务器支持部分请求,因为我注意到这是iOS的要求。
将视频网址复制到Chrome浏览器中,点击F12 - >网络选项卡查看请求,然后重新加载。你应该看到这样的东西:
GET 200 OK
GET 206 PARTIAL CONTENT
GET 206 PARTIAL CONTENT
...
这告诉您服务器支持部分内容请求,这很好。
如果您通过服务(而不是静态)自行提供视频,则需要在服务器端代码中明确支持此功能。例如,ASP.NET Web API教程在此处:
http://blogs.msdn.com/b/webdev/archive/2012/11/23/asp-net-web-api-and-http-byte-range-support.aspx
答案 2 :(得分:0)
也许您犯了我同样的错误,我花了很多时间尝试使用Access-Control-Allow-Origin配置apache ...但是最后我意识到我正在使用nginx,因此必须修改标头在Nginx上:
add_header“访问控制允许来源”“ *”;