3

我使用 JWPlayer 从服务器播放视频。视频使用 h.264 编解码器进行编码。如果我在支持 h.264 的浏览器中打开它们 - 视频播放效果很好,我可以寻找它,因为服务器返回 206 标头浏览器理解它的部分内容。但是,如果我尝试在 Opera 上播放相同的视频,例如,正在使用 flash 播放器,它会收到 200 OK!这里有2个问题:

  1. 我无法搜索视频,直到下载了部分视频
  2. 如果视频没有“正确”编码,播放器甚至无法开始播放,直到文件完全下载。

flash 正确询问/理解 http 标头有什么问题吗?(我以前从未使用过 flash,所以也许我的问题有点愚蠢,我只是不知道 flash 的局限性)..

4

1 回答 1

2

1)您需要为 Flash 启用伪流 - http://www.longtailvideo.com/support/jw-player/28855/pseudo-streaming-in-flash,如果您可以提供链接,我会采取看看这里到底发生了什么,我或多或少在猜测这个。不过,HTML5 不需要在服务器端安装伪流模块。在 Flash 中,默认是渐进式下载,所以只能寻找下载的部分,而在 html5 中,则不是这样。

2)是的,那是因为编码。如果您的 MP4 文件在完全下载之前无法搜索,则必须修复位于视频末尾的 MOOV atom(它包含搜索信息)。使用这个小应用程序来解析您的视频并添加必要的提示点 - http://renaun.com/blog/2010/06/qtindexswapper-2/

此外,通过 HandBrake - http://handbrake.fr/进行编码也可以解决此问题,因此不需要上述工具。您可以使用 HandBrake 进行编码,并启用“网络优化”,这与索引交换工具相同。HandBrake 也有命令行编码选项。

于 2013-03-21T16:00:43.077 回答