微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – HTML5视频,如何在没有音轨时检测?

我正在制作一个Chrome应用程序,我想为视频播放提供自定义控件,但我在使用静音按钮时遇到了一些困难.将在应用程序中播放的大多数视频都是静音的,因此我希望能够在没有音频轨道的情况下禁用按钮,就像Chrome使用认控件一样.

尝试使用音量值,但即使没有音轨,它也会返回“1”.检查视频是否静音也不起作用.

这是一个snippet.

有什么建议?

解决方法

在某些时候,浏览器可能会开始实现 audioTracks property.现在,您可以将webkitAudioDecodedByteCount用于webkit,将mozHasAudio用于firefox.
document.getElementById("video").addEventListener("loadeddata",function() {
  if (typeof this.webkitAudioDecodedByteCount !== "undefined") {
    // non-zero if video has audio track
    if (this.webkitAudioDecodedByteCount > 0)
      console.log("video has audio");
    else
      console.log("video doesn't have audio");
  }
  else if (typeof this.mozHasAudio !== "undefined") {
    // true if video has audio track
    if (this.mozHasAudio)
      console.log("video has audio");
    else
      console.log("video doesn't have audio");
  }
  else
    console.log("can't tell if video has audio");
});

原文地址:https://www.jb51.cc/js/152872.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐