我正在使用 Adobe Media Encoder CS5 将 FLV 文件编码为 H.264 以通过 HTML5 在 Web 上呈现,并且视频文件在 OS X 的 Safari 中(以及在编码为 OGG 的 Firefox 中)但在任何 iOS 设备上都可以正常播放( iPad,iPhone)我得到了带有斜线的播放图标。
以前有没有人遇到过这种情况,如果有,有什么想法吗?
谢谢。
我们遇到了这个问题,发现按照 iPhone 的 webview 标准对文件进行编码会创建可以正常播放的文件。
iPhone(或 Chrome)并不支持所有 H.264 编码的 Mp4 文件,编码过程中的细微差别可能会产生无法播放的视频。即使使用完全相同的编码设置,H.264 也是一种可变比特率编码器,因此不同的视频可能会超过比特率限制,导致一些工作正常而另一些不工作。
对我们来说成功的编码设置是:
这是我们用来达到这些设置的参考。
我知道这有一个明显的答案,但我们遇到了完全相同的问题。
问题最终成为我们内部网络上的一个设置。
在 iPad 上打开 safari 控制台后,我们看到在尝试加载视频时,我们收到了“byte_range_error_message”的记录。移动设备请求此内容的方式似乎与桌面设备不同,一次请求某些字节。我们设法发现当手机使用 3G 网络时视频播放良好,但当他们通过内部 wifi 加载视频时却没有。后来经过大量研究,我们看到了这篇 MSDN 文章:http: //support.microsoft.com/kb/922330
其中解释了如何在我们的防火墙中找到设置以允许设备正确请求视频。我们还在我们的一个 D-Link 路由器上发现了一个类似的设置,用于一个也有问题的单独 wifi 网络。