我在iOS设备上播放一个经过适当编码的视频时遇到了问题。以下是一些背景/信息:
- 我们使用jwPlayer进行播放
- 视频通过flash和HTML5播放效果很好
- 视频是通过zencoder的默认设置进行编码的
- 我们正在从同一台服务器提供视频,该服务器可在iOS设备上正常工作(但该站点不是Sitecore)
- 当通过dropbox同步时,视频可以在我的iPad上播放
通过一些调查和来自Zencoder优秀支持人员的帮助,我们认为问题可能与头文件有关(顶部是不起作用的视频,底部可以正常工作):
$ curl -I http://fraternity.computol.com/~/media/Fraternity/mp4/leadership_zen.mp4
HTTP/1.1 200 OK
Date: Wed, 29 Jun 2011 16:30:29 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
X-AspNet-Version: 2.0.50727
Content-Disposition: attachment; filename="leadership_zen.mp4"
Transfer-Encoding: chunked
Set-Cookie: fraternity#sc_wede=1; path=/
Cache-Control: public, max-age=604800
Expires: Wed, 06 Jul 2011 16:30:29 GMT
Last-Modified: Wed, 29 Jun 2011 16:28:26 GMT
ETag: 9cba9593424645bfb372a01bfe522f97
Content-Type: application/octet-stream
$ curl -I http://www.rhythmonthevine.org/videos/SHR_ROTV_Dierks_v02.mp4
HTTP/1.1 200 OK
Content-Length: 16091772
Content-Type: video/mpeg
Last-Modified: Thu, 24 Mar 2011 14:05:49 GMT
Accept-Ranges: bytes
ETag: "8374ff932ceacb1:335c"
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
Date: Wed, 29 Jun 2011 16:30:32 GMT
有人知道这个问题是否与标题相关吗?如果是,有没有办法让Sitecore正确地提供媒体文件呢?
编辑:另外,如果有任何区别的话,我们正在使用IIS6。
编辑:特别麻烦的差异有:
- 传输编码(不能正常工作的是分块传输)
- 内容长度(顶部视频缺失)
- 内容类型(我认为这是最大的问题。我在Sitecore中设置了正确的MIME类型 - 不知道为什么Sitecore无法提供它)