如何自定义嵌入式 YouTube 视频播放器?

时间:2021-07-12 13:41:54

标签: iframe youtube

当您使用提供的 <iframe> 代码嵌入 YouTube 视频时:您无法隐藏标题和其他一些“功能”。

可以在一天之内使用参数禁用其中一些功能。截至目前:它们已被弃用。

所以,现在我有一个客户端需要嵌入 YouTube 视频,而没有我们将鼠标悬停在视频上时看到的所有垃圾内容:标题、相关视频、频道徽标等。

1 个答案:

答案 0 :(得分:0)

根据我的研究,不可能禁用标题和其他一些功能:无论是使用 URL 参数还是 CSS+JS。

尽管如此,我还是提出了一个具有很大潜力的解决方案:不仅是为了用户的隐私,也是为了 UX。 此解决方案是:

  1. 找出一种提取 YouTube 视频源 URL 的方法;
  2. <video><iframe> 中使用提取的 URL;
  3. 复制 YouTube 播放器样式。

对于第一部分,我使用了 Invidious API。但我认为您也可以创建一个使用 youtube-dl 提取视频 URL (?) 的 API。

在我的测试中,我什至不需要安装自己的 Invidious 软件:我使用了公共 API 端点:

https://yewtu.be/latest_version?id=dasdsa312&itag=84

地点:

  • id:视频 ID;
  • itag:视频流格式代码。

然后,我将 JavaScript 代码用于:

  • 动态获取所有可用的 Invidious 公共实例;
  • 生成一个视频元素,其中包含许多不同视频质量和可用实例的来源。

这些来源是根据我的网站 URL 中可用的查询参数生成的:

https://riservato-xyz.frama.io/watch/?v=gprAWYQ47uY

考虑到这一点,每当我需要定制的 YouTube 播放器时,我都可以使用自己的网站来嵌入 YouTube 视频。

我知道测试网站(以前的网址)确实很慢。虽然,这是因为我没有使用自己的 Invidious 实例,而是依赖于公共实例。但它有效!

<iframe width="560" 
        height="315" 
        src="https://riservato-xyz.frama.io/watch/?v=W_xIBfrdxQU" frameborder="0"></iframe>