我们的软件允许用户将各种媒体(包括YouTube视频)按顺序时间线混合在一起。我们不时看到在播放器中加载YouTube视频时出现错误。我们使用youtube iframe API。我们首先手动创建YouTube嵌入iframe,然后实例化YouTube iframe API,传入iframe。
当这个问题发生时,它表现如下:YouTube播放器是一个带有加载符号的黑屏。它在这种状态下停留大约一分钟(有时更长),并最终给出错误:"发生错误,请稍后再试",尽管有时玩家只是无限期地保持黑色。在这一分钟的等待过程中,我们检查了"Nerds的统计数据"面板,发现视频似乎开始了加载不同分辨率的循环。你可以看到这种情况发生在这个视频的1:00左右:
https://www.cubby.com/pl/Instant+会议+2013-12-31.webm/_8cbafbaed7c64d828b260b41cd9db8dc
我们看到它通过以下分辨率循环:
426 x 240
256 x 144
854 x 480
1280 x 720
当这种情况发生时,几乎总是在刷新页面并重试后,视频播放良好。我们已经看到它发生在坚实的高速连接和低速连接上。
以下是错误发生时从DOM中截取的iframe代码:
<iframe id="youtube_iframe" type="text/html" width="100%" height="375" src="https://www.youtube.com/embed/FCuq3IedO9k?allowScriptAccess=always&controls=0&disablekb=1&enablejsapi=1&playsinline=1&iv_load_policy=3&modestbranding=1&start=151&rel=0&vq=large&showinfo=0&wmode=opaque&origin=http%3A%2F%2Fwww.meograph.com" frameborder="0"></iframe>
任何关于为什么会发生这种情况或如何防止这种情况发生的想法都将非常有帮助。如果你想要任何额外的调试信息(例如,我有一张发生这种情况时网络面板的屏幕截图),请告诉我,我会链接它。
您的链接不工作-
https://www.youtube.com/embed/FCuq3IedO9k?allowScriptAccess=always&controls=0&disablekb=1&enablejsapi=1&playsinline=1&iv_load_policy=3&modestbranding=1&start=151&rel=0&vq=大&showinfo=0&wmode=不透明&origin=http%3A%2F%2Fwww.meograph.com
尝试使用这种代码
<iframe width="420" height="345" src="http://www.youtube.com/embed/oHg5SJYRHA0?autoplay=1" frameborder="0" allowfullscreen></iframe>