Safari 忽略 html5 视频静音属性

Posted

技术标签:

【中文标题】Safari 忽略 html5 视频静音属性【英文标题】:Safari ignoring html5 video muted attribute 【发布时间】:2014-08-22 19:04:13 【问题描述】:

不确定我做错了什么,但我无法让 Safari 将我的视频静音,即使它已定义。它适用于其他浏览器,但不适用于 safari。支持这个属性吗??我宁愿不使用 javascript/jquery 修复,但如果我必须,那么我猜。提前致谢。

这是代码

    <video autoplay loop muted>
    <source src="/media/installation.mp4" type="video/mp4">
    <source src="/media/installation.ogv" type="video/ogg">
    <source src="/media/installation.webm" type="video/wbm">
    </video>

【问题讨论】:

这仍然是 ios 9 中的问题吗? iOS 是否启用了 IE(故意是因为他们希望更多人使用应用程序,......也许)?注意:我知道这会因为在技术上没有帮助而被删除,但我很高兴说出我们许多人的想法:) AFAICT,iOS10 还是个问题。 【参考方案1】:

Safari 似乎不支持此属性。它未在 Apple 的 documentation 支持的属性中列出。它被排除在 MDN 上的 browser compatibility 表之外。测试表明,在 DOM 对象上设置 muted 属性不会添加该属性。为了比较,将controls 设置为true 确实设置了controls 属性。

恐怕您需要为此使用 Javascript。

值得注意的是,iOS 上的 Mobile Safari 会同时忽略 volumemuted,即使您使用 Javascript。在这种情况下,控制视频音量的唯一方法是使用硬件音量控制。

【讨论】:

谢谢,我有一些视频,我想前进的最好方法是在没有声音的情况下重新渲染我的视频,这样我就不必担心额外的代码。我可以发誓它曾经在旧版本的 safari 中运行。谢谢! 不客气。这是可能的。这不是 Safari 第一次删除功能。 您可以非常轻松快速地删除音频,而无需重新压缩视频轨道。 ffmpeg -i input.webm -vcodec copy -an output.webm ffmpeg?我用米罗。它没有那个选项。你推荐那个程序吗?我输出了没有音频的原始视频,并使用后效对其进行了更多压缩。 ffmpeg 是一个命令行程序。我相信 Miro 是建立在它之上的。它适用于像这样的快速内容和/或支持奇怪的格式。【参考方案2】:

我写下了我的发现,以使自动播放静音视频在所有 ios 10+ safari 浏览器中都能正常工作。这是所有黑客的混合物,可以让它发挥作用。

如果此链接在您麻烦的 ios10+ Safari 中有效 -> https://ney5u.csb.app/

然后按照这个帖子回答 https://medium.com/@BoltAssaults/autoplay-muted-html5-video-safari-ios-10-in-react-673ae50ba1f5

【讨论】:

以上是关于Safari 忽略 html5 视频静音属性的主要内容,如果未能解决你的问题,请参考以下文章

iPad Safari 忽略 html5 视频上方的 div onclick

Safari 和 Chrome 中的 HTML5 视频海报属性

静音的自动播放视频在 Safari 11.0 中停止播放

强制取消静音 HTML5 视频自动播放

iPad Safari mobile 似乎忽略了 html5 视频元素的 z-indexing 位置

切换 HTML5 音频的“静音”属性