我们在我们的网站上运行冲浪相机流,这些流通过我们页面上的最新版本 (5.4) 的 JWPlayer 播放。
最近我们切换到另一个流媒体服务和 H.264 流,因为我们计划在不久的将来流到 iOS 设备,但是这在客户端引入了一个错误,用户无法接收视觉(他们只能看到通常可以看到视频的黑屏)。
我们发现禁用硬件加速(在 Flash Player 10.1+ 中引入)修复了这个问题,考虑到发生这个问题的环境范围,我敢打赌这与特定的显卡、它们的驱动程序以及如何他们处理视觉解码等。
我们发现的有关禁用硬件加速的文档仅表明可以通过 wmode
来完成此操作。参数,即将其设置为 wmode="opaque"
或 wmode="transparent"
然而,这似乎并非在所有情况下都有效(大多数情况下问题不再存在)但是我们仍然看到 30% 的用户遇到此问题。
我们可以要求用户自己禁用硬件加速,我们已经提供了有关如何执行此操作的详细信息,但是对我来说这只是一个临时修复,我很好奇是否可以添加一些更永久的东西直到 Adobe 解决这个问题?
最佳答案
所以,我找到了这个问题的解决方案——不过它分为两部分。
首先 : 设置 wmode="opaque"
或 wmode="transparent"
将禁用硬件加速 - 不幸的是,我们遇到的问题涉及更多,详情如下。
其次 :我们继续遇到的问题与我们发送的流类型有关。我们的溪流是您从海滩或雪地等(又名雪地摄像机、冲浪摄像机)看到的那种溪流——当然,海滩的声音或在山上吹来的声音很无聊,所以我们不会在提要中发送音频。
事实证明,这是导致问题的原因。 H.264 解码失败,主要是在 Mac 上,但如果没有发送音频数据,则在任何 10.1 播放器上或多或少。对此的解决方案很简单 - 以 0dB(或任何静音)启用音频 channel ,然后让流再次开始运行。
这不是最佳解决方案,因为它为我们的流增加了 16k 开销,我们宁愿将其用于更高质量的视觉。我已经向 Adobe 提出了一张票,FP-6085所以希望这将在 future 的版本中得到解决。或者“HTML5”流将在所有浏览器中成为现实。
关于flash - 在嵌入代码或 AS 中禁用 Adobe Flash Player 硬件加速,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4721169/