HTML5 视频,视频内无缝循环

2023-12-22

我正在编写一个交互式视频(一种游戏),用户在侧面板上进行操作,并且操作发生在视频中。

对于一部分来说,视频正在等待用户在面板上执行操作,因此它必须循环播放,直到用户启动该操作。

所以在 15 秒时,只要用户没有做出动作,我就会回到 11 秒,视频被设计为完美循环。

我的循环正在工作,但问题是它不是无缝的。在 15 秒处,它停止了大约一秒钟,然后在 11 秒处重新开始。有没有办法让它无缝运行?

我正在使用VideoJS。这是我的代码:

var video_decor = _V_("video_decor");
video_decor.addEvent("timeupdate", function(){
    var whereYouAt = video_decor.currentTime();
    console.log(whereYouAt);
    if(whereYouAt > 15){
        video_decor.currentTime(11);
    }
});

实现无缝循环的最简单方法是使用完整长度的视频并等待“结束”事件返回到开头。这往往非常顺利,所以如果你能以某种方式实现这一点那就最好了。

获取视频的一个子部分并循环它很困难,因为浏览器不会每毫秒触发“timeupdate”事件,而且这样做效率非常低。相反,它们每 15 (Chrome/Safari) 或 250 (Firefox) 毫秒触发一次 timeupdate,所以这就是您的误差范围。您可以创建自己的定时器(setInterval)以较小的间隔并手动检查时间,但这可能会给浏览器带来沉重的负担。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HTML5 视频,视频内无缝循环 的相关文章

随机推荐

  • 如何从 style.xml 创建 AttributeSet?

    这是我的故事 我想从使用预定义样式的代码创建一个自定义 ViewGroup 到目前为止 我的方法是从 style xml 元素创建 AttributeSet 对象 如下所示 警告 请注意前面的复制粘贴代码 XmlPullParser par
  • 在 Android 上擦除数据:设备管理员与配置文件所有者

    Android 5 0 引入了配置文件所有者的新概念 据我了解 Profile Owner 是 Device Admin 的高级版本 自 2 2 起就存在于 Android 中 设备管理员和配置文件所有者都可以通过以下方式擦除数据Devic
  • 在Python中使用多个正则表达式提取特定文本?

    我在 python 3 中使用正则表达式时遇到问题 所以如果有人可以帮助我 我会很高兴 我有一个如下所示的文本文件 Header A text text text text Header B text text text text Head
  • 具有多个可执行文件的 Makefile

    我正在尝试编写一个 makefile 它使用宏一次从多个文件创建多个可执行文件 我尝试搜索以前回答过的问题 但是 因为我对 C 编程以及使用 gcc 相当陌生 所以我无法找到我的问题的答案 这是我到目前为止所拥有的 CC gcc CFLAG
  • Firefox 相当于 moz-media-controls

    我正在从事一个涉及视频播放器的项目 我在 HTML 上使用本机标记 我想要以全屏模式显示图像 我可以使用以下 CSS 选择器来执行此操作 但它仅适用于 Chrome webkit media controls display none im
  • 如何在Keras中分别优化多个损失函数?

    我目前正在尝试在 Keras 中构建具有三种不同损失函数的深度学习模型 第一个损失函数是典型的均方误差损失 另外两个损失函数是我自己构建的 它发现输入图像和输出图像的计算之间的差异 此代码是我正在做的事情的简化版本 def p autoen
  • 当 docker 容器关闭/未启动时,如何编辑其中的文件

    用例 我启动了一些不错的 docker 映像 我的容器需要一些操作 配置文件更改以供研究 我编辑一个文件 使用 sed 或 vim 然后停止容器并尝试启动它 现在我在配置中犯了一个错误 当我这样做时 docker容器没有出现 docker
  • 如何使用 jQuery 按名称获取所选元素,然后从下拉列表中获取所选值?

    我可以按名称找到我的选择元素 但无法找到与其关联的选定值 下面是我的代码
  • Android 尝试验证主机,尽管 android:autoVerify="false"

    在我的应用程序中 我有 3 个活动 MainActivity Secondary Activity 和 Tertiary Activity 我希望 Second Activity 成为 Android 6 上特定域的默认应用程序链接处理程序
  • OpenCV Python:如何将一个图像叠加到另一个图像的中心

    如何将较小的图像粘贴到另一图像的中心 两个图像具有相同的高度 但较小的图像的宽度始终较小 生成的图像应该是较小的图像 周围有黑条 因此它是正方形的 resizedImg cv2 resize img newW 40 blankImg np
  • 如何将 QML 工具栏和菜单栏嵌入到 QMainWindow 中

    我在用QWT绘制数据的库 貌似不能嵌入QWidget into QML Quick 2 所以 我决定创建QMainWindow作为我的主窗口并使用创建其工具栏和菜单栏Quick Controls 我应该如何将该 qml 工具栏和菜单栏嵌入到
  • x86_64 汇编 Linux 系统调用混乱

    我目前正在 Linux 上学习汇编语言 我一直在使用 Programming From the Ground Up 一书 所有示例都是 32 位的 我的操作系统是 64 位 并且我一直尝试在 64 位中完成所有示例 但是我遇到了麻烦 sec
  • 加快 Xcode Swift 构建时间

    随着我的项目在过去一年中不断增长 其构建时间也不断增长 在过去的几个月里 它从 4 分钟缩短到了 7 分钟左右 时间包括 GitHub 拉取 单元测试等 我调查过 Xfrontend debug time function bodies找到
  • 过期时间为“会话结束时”的 cookie 何时过期?

    有一个带有过期时间的会话 cookie 其内容为 会话结束时 它到底什么时候过期还是会永远存在 饼干 会话结束时过期 从用户的角度来看 过期是不可预测的 在带有 Safari 的 iOS 上 只要您切换应用程序 它们就会过期 在带有 Chr
  • Mingw 和 Eclipse 无法找到库

    我遇到的问题与描述的类似here https stackoverflow com questions 9127623 mingw eclipse ld exe does not find libraries 我创建了一个新项目 在 Ecli
  • 单击“通知”后打开应用程序

    我的应用程序中有一条通知 代码如下 Notification Start notificationManager NotificationManager getSystemService Context NOTIFICATION SERVI
  • 如何使用 highchart 使两个图表使用 div 并排显示在同一行中

    我想使用 div 在同一行显示两个图表 你能帮忙吗 这是我正在尝试的 但它显示为两行 div div style width 200px height 200px div div style width 200px height 200px
  • Perl - 使用编码方法读取文件?

    我在编码方面不太好 我想弄清楚如何以与开始时相同的编码返回数据 我有一个文件 其中包含一些字符 例如 当我编辑并插入数据库时 它们已经变成了 decode entities 什么都不做 encode entities 再次对字符进行编码 因
  • Symfony2 Monolog 到电子邮件错误为什么 swiftmailer.transport.real 服务不存在

    更新 symfony 后2 3 to 2 4 i got ServiceNotFoundException Fatal error Uncaught exception Symfony Component DependencyInjecti
  • HTML5 视频,视频内无缝循环

    我正在编写一个交互式视频 一种游戏 用户在侧面板上进行操作 并且操作发生在视频中 对于一部分来说 视频正在等待用户在面板上执行操作 因此它必须循环播放 直到用户启动该操作 所以在 15 秒时 只要用户没有做出动作 我就会回到 11 秒 视频