我有一堆包含autoplay
,playsInline
,preload='metadata'
和muted
属性的视频。每个视频都会从如下所示的Blob中收到src
:
const blob = new Blob([new Uint8Array(data)], {type: `video/${videoUrl.split('.').pop()}`})
const src = window.URL.createObjectURL(blob)
视频全部在几乎所有经过测试的浏览器/设备上自动播放,包括iOS Safari和Edge。但Firefox拒绝了。当我跳过Blob创建过程并简单地将每个视频src
分配到其原始URL(我从https://website.com/video.mp4
创建Blob的那个)时,我们的怪异是什么,自动播放在Firefox中运行良好。
此外,在使用Blob网址时,在视频准备就绪后调用video.play()
似乎适用于Firefox,但在iOS上不一致(即使在检查if (video.paused) {video.play()}
时也是如此,所以我想要如果可能,请避免额外的play
电话。其他人看到这个?