YouTube iFrame 出现间歇性加载错误

Posted

技术标签:

【中文标题】YouTube iFrame 出现间歇性加载错误【英文标题】:YouTube iFrame has intermittent load errors 【发布时间】:2014-01-15 02:48:09 【问题描述】:

我们的软件允许用户在一个连续的时间线上混合各种媒体,包括 YouTube 视频。我们间歇性地看到在播放器中加载 YouTube 视频时出现错误。我们使用 youtube iframe API。我们首先手动创建 YouTube 嵌入 iframe,然后实例化 YouTube iframe API,传入 iframe。

发生此问题时,其表现如下:YouTube 播放器是带有加载符号的黑屏。它会在该状态停留大约一分钟(有时更长时间)并最终给出错误:“发生错误,请稍后再试”,尽管有时玩家只是无限期地保持黑色。在这一分钟的等待中,我们检查了“Nerds 统计”面板,发现视频似乎开始了加载不同分辨率的循环。您可以在该视频的 1:00 左右开始看到这种情况:

https://www.cubby.com/pl/Instant+meeting+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>

任何关于为什么会发生这种情况的想法或关于如何防止它发生的想法都会非常有帮助。如果您想要任何其他调试信息(例如,我有发生这种情况时网络面板的屏幕截图),请告诉我,我会链接它。

【问题讨论】:

这似乎是一份错误报告,而不是关于使用 YouTube API 进行编程的问题。 +1 - 您需要在以下链接中记录 YouTube API 错误(来自 youtube.com/dev 的链接):code.google.com/p/gdata-issues/issues/… 您可以尝试使用他们的 api developers.google.com/youtube/js_api_reference#Playback_quality 强制视频质量 【参考方案1】:

您的链接无效 -

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

尝试使用这种代码

<iframe   src="http://www.youtube.com/embed/oHg5SJYRHA0?autoplay=1" frameborder="0" allowfullscreen></iframe>

【讨论】:

以上是关于YouTube iFrame 出现间歇性加载错误的主要内容,如果未能解决你的问题,请参考以下文章

iframe 文件未找到错误

Youtube iFrame API setPlaybackQuality 在移动设备上被忽略

javascript 加载iframe(youtube)

jQuery 在页面加载时播放 iframe 嵌入的 YouTube 视频

如何找出加载 youtube 嵌入式 iframe 的时间

Youtube iframe api 未触发 onYouTubeIframeAPIReady