2

我正在页面上加载一些带有 iframe 的视频。这些视频具有我们在 youtube 上上传的自定义高质量缩略图。我们的播放器宽度为 1280 像素,并且在大多数情况下它不会加载最大分辨率的缩略图,但它适用于低质量的缩略图。

到目前为止,我一直无法理解 youtube 如何决定加载哪个缩略图。在过去的几天里,它在 Firefox 和 IE 中加载了高质量的缩略图,但它在 chrome 中采用了低分辨率。今天它在所有浏览器中都是一样的 -> 它加载低质量的图像。

如果您想亲自查看,请访问以下网站: http ://wingtsun-akademie-heidelberg.de/new/

我尝试使用 js iframe api 强制高清质量:

  player = new YT.Player(el, {
    height: 1080,
    width: 1920,
    hd: 1,
    events: {
      'onStateChange': onPlayerStateChange
    }
   });

但是好像没什么效果?您是否知道我是否可以通过将自定义缩略图提供给播放器对象来加载它?

现在看来,youtube 大部分时间都在加载:http: //i3.ytimg.com/vi/WqK2IlP-JSE/hqdefault.jpg 而不是:http: //i3.ytimg.com/vi/WqK2IlP-JSE/ maxresdefault.jpg

在此先感谢您的任何建议。

4

2 回答 2

1

这是 youtube API 声明的最大分辨率缩略图:

maxres – 缩略图的最高分辨率版本。此图像大小适用于某些视频和引用视频的其他资源,例如播放列表项或搜索结果。此图像宽 1280 像素,高 720 像素。

重要的是引用“可用于某些视频”。因此,根本不是每个 youtube 视频都向第三方提供 maxres 缩略图。

其原因尚不清楚。似乎 maxres 缩略图的可用性是随机出现的。我已经手动检查了数千个 youtube ID 的 maxres 缩略图,但找不到模式。有些人有 maxres 和 round-a-bout 至少检查了所有视频的三分之一,但无论视频的分辨率如何,都不提供 maxres。因此,人们不得不假设 Youtube 出于某种原因而心甘情愿地惹恼第三方。您可能会推测自己为什么“他们”会这样做......人们可能会认为始终为每个视频生成 maxres pic 是最简单的事情之一。但是......他们不让他们的系统生成它们。

于 2018-09-05T10:38:25.060 回答
0

您的网站现在似乎使用了正确的缩略图...我想您的问题已解决?

YouTube 最近更改了检索缩略图 ID 的方式。它现在使用的是键值映射而不是列表,这意味着您现在可以不再依赖第一个具有这种大小的映射等......所以如果您将 API 级别从 2 切换到3.

于 2013-06-17T13:38:28.297 回答