【问题标题】:How to check if a video source has audio in ReactJS?如何在 ReactJS 中检查视频源是否有音频?
【发布时间】:2021-06-28 01:36:47
【问题描述】:

我有一个视频播放器,其中包含从 URL 加载的视频源。如果它没有任何音频,我需要将它设置为一直静音,以便用户知道视频没有任何音频。

我该怎么做?

【问题讨论】:

标签: reactjs video html5-video


【解决方案1】:

视频标签有一个名为mute 的道具,可以使视频静音。

【讨论】:

  • 是的,我可以静音,但我需要检查视频是否真的没有任何音频 1st。如何进行检查?
  • 你可能想看看this
  • 我也看到了那个。看起来这是我能找到的最合适的解决方案。谢谢
【解决方案2】:

已经有一段时间了,但我想用我的回答来结束它。 我在这里引用了解决方案: HTML5 video, how to detect when there is no audio track?

function hasAudio (video) {
    return video.mozHasAudio ||
    Boolean(video.webkitAudioDecodedByteCount) ||
    Boolean(video.audioTracks && video.audioTracks.length);
}

【讨论】:

  • 我建议先测试audioTracks 属性,因为它应该是标准的;然后检查供应商前缀(mozHasAudiowebkitAudioDecodedByteCount)。
  • @TassoEvangelista 感谢您的建议。 Iirc,webkitAudioDecodedByte 为我工作。 mozHasAudio 不适合,因为我也必须让它在 Chrome + 其他浏览器上运行。我认为 audioTracks 也有效,但不能确定,因为这是很久以前的事了。
猜你喜欢
  • 1970-01-01
  • 2012-07-27
  • 2021-01-22
  • 1970-01-01
  • 2020-04-17
  • 2018-12-28
  • 1970-01-01
  • 2021-01-31
  • 1970-01-01
相关资源
最近更新 更多