我有一个视频元素,我正在控制全屏并通过专用按钮播放。否则,视频元素将被隐藏。
<video controls>
<source src="/video.mp4" type="video/mp4">
</video>
<button>play</button>
玩得很好。但是,与其他浏览器相比,Safari 13 Catalina上的初始播放需要额外的几秒钟。检查网络选项卡不会显示任何预加载。似乎 Safari 在播放前具有更高的缓冲区阈值。
此行为是否有解决方法?
如果您不关心额外的带宽,在视频标签上设置 preload="auto" 应该会使视频看起来更快。
进一步的优化是尝试提供 HLS 流以及渐进式下载 mp4。 您不需要特殊的服务器来执行此操作,如果正确编码/打包,传统的 Web 服务器可以提供 HLS 实时流。