首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Video.js下载块而不是整个视频

Video.js下载块而不是整个视频
EN

Stack Overflow用户
提问于 2019-09-22 08:33:35
回答 1查看 3.8K关注 0票数 0

我正在使用录影带播放各种视频。有些人比其他人大。下面是一个简单的场景。一个视频开始播放,总长度为100 10,持续时间为10分钟。如果用户跳到第2分钟,那么将向后端发出一个呼叫,以服务器整个剩余的视频。

这并不是很好,因为用户体验goes.The下载时间可能相当大,播放器将被困在加载,直到它完成。

理想情况下,我希望它能在5-10秒的时间内下载。

老实说,javascript不是我的强项,所以我真的不知道该如何做。

后端接受字节范围。我也有清漆。

此外,我不反对使用另一个视频播放器,如果我目前使用的是不好的,或由于某种原因,不支持我正在寻找的。

任何指向正确方向的,我们都会非常感激。

对于任何遇到这个问题并有同样问题的人来说:

https://info.varnish-software.com/blog/caching-partial-objects-varnish

还要确保清漆将范围标头向前移动。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-22 09:07:48

这很可能是文件或服务器配置中的一个问题,而不一定是VideoJS。当您希望用户能够在当前缓冲区之外查找时,通常是在谈论psueudo流

为此,您的服务器必须:

  • 支持字节范围请求(您表示后端支持此功能)
  • 返回正确的content-type

由于您说您的服务器确实支持字节范围请求,所以我会再次检查content-type头。

此外,如果使用H.264 MP4文件,则可能需要通过将元数据(MOOV原子)移动到文件的开头来优化这些文件的流。一些视频编码器也将此称为“快速启动”。可以对已经编码的MP4s执行此操作的独立应用程序是快启动

否则,VideoJS应该支持自动搜索。您可以在JSFiddle上找到一些它们的示例。

您还可以尝试以编程方式查找,以查看这是否有任何不同的行为:

代码语言:javascript
复制
let player = VideoJS.setup("video");
player.play();
player.currentTime(340);  // time to seek to
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58047449

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档