javascript Vimeo iframe embed not autoplaying in Safari

eqqqjvef  于 2023-06-20  发布在  Java
关注(0)|答案(1)|浏览(108)

我在一个Angular网站上工作,它是一个SPA,为不同的项目页面提供路由。每个项目页面都有一个设置为自动播放的Vimeo视频iframe嵌入。这在Chrome中可以正常工作,但在Safari上,似乎视频加载并尝试播放,但随后停止,并显示黑色帧。
这里有一个链接到该网站:https://corpuscallosum.github.io/egs-site/#work
下面是其中一个项目页面的示例:https://corpuscallosum.github.io/egs-site/projects/curtain_of_light
下面是项目页面的HTML代码,显示了Vimeo嵌入代码:

<div style="padding:56.25% 0 0 0;position:relative;">
  <iframe src="https://player.vimeo.com/video/309779980? 
    autoplay=1&loop=1&title=0&byline=0&portrait=0"
    style="position:absolute;top:0;left:0;width:100%;height:100%;"
    frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen allow="autoplay">
  </iframe>
</div>
<script src="https://player.vimeo.com/api/player.js"></script>

我知道如果没有用户操作,带音频的视频不能自动播放,但由于这些页面处于不同的路径,链接到项目页面的用户操作似乎已经足够了,并且它在Chrome中的工作原理与预期相同。为什么在Safari中不起作用?有什么变通的办法吗?(至少我想在Safari上显示视频海报,如果视频不自动播放,而不是只有一个黑色的框架,这使得网站似乎破碎...)
谢谢!

qvsjd97n

qvsjd97n1#

请检查https://developer.apple.com/documentation/webkit/delivering_video_content_for_safari/我想用户交互意味着用户需要点击播放。
在Vimeo网站上,你也描述了自动播放限制https://help.vimeo.com/hc/en-us/articles/12426486963857-Autoplay-and-loop-embedded-videos,并描述了可能的解决方法(基本上在Mac上自动播放视频,你需要静音)。
关于如何使海报图像为vimeo免费您可以搜索其他stackoverflow答案。

相关问题