在可搜索时寻找HTML5视频的方法.长度= 0

Way to seek HTML5 video when seekable.length = 0?

本文关键字:方法 长度 视频 HTML5 搜索 寻找      更新时间:2023-09-26

当一个HTML5视频/音频元素来自一个不支持字节范围请求的源时,目前(至少在最新版本的Chrome和Firefox中)与标签相关的媒体元素似乎有一个空的可搜索的TimeRanges对象。

这有点令人困惑,因为它没有空的缓冲TimeRanges对象:有缓冲的数据,但它是不可搜索的。尝试将currentTime设置为缓冲范围内的值会静默失败:currentTime不会改变,也不会抛出错误。

这与我读过的大多数资料相反,这些资料表明缓冲的时间范围总是包含在可搜索的时间范围中。这就是我想象的工作方式,因为如果数据是本地缓冲的,那么没有理由不能够在其中查找。

我根本找不到在这样的视频中寻找的方法,甚至将当前播放时间重置为0。是我错过了什么,还是这个功能目前已经坏了?这取决于视频类型的某些方面吗?

需要预加载器

await new Promise((resolve, reject) => {
  video.src = url;
  video.onloadeddata = resolve;
  video.onerror = reject;
});