仿微软Video Indexer——视频断点播放与智能解析时间线的前端可视化实现

html5 video断点续播,vue-video-player 断点续播的实现 最近的项目中需要实现视频断点续播的功能,一听到这个功能。内心方张了..但却又有点小窃喜,小懵乱。抱着求学态度去挑战一下。1.安装插件npm install vue-video-player --save2.Main.js 引入组件import VideoPlayer from 'vue-video-player'require('video.js/dist/video-js.css')requir... 阅读详情

先放一个实现效果
videoIndexer

其中关键词这一部分的功能可以参考之前的博文视频时间点在时间轴上的动态可视化

最核心的就是视频的定点播放和可视化,其他的样式和tab栏都蛮简单的所以这里就不写了。

对于视频的定点播放,用到HTML5中video标签的currentTime这个属性,即在用户点击每个时间点的时候,需要根据函数传入时间参数来改变视频播放时间。

//点击改变视频播放时间
        changeVideoTime (time) {
            var timeSecond = time.split(":");
            var videoTotalTime = 3600*parseInt(timeSecond[0]) + 60*parseInt(timeSecond[1]) + parseInt(timeSecond[2]);
            var thisVideo = document.getElementById("video");
            thisVideo.currentTime = videoTotalTime ;
        },

对于可视化,如果只是单一的鼠标悬浮显示时间,使用父级元素hover即可改变样式。这一部分也比较简单~

主要的核心代码部分和算法数据结构都在视频时间点在时间轴上的动态可视化这一篇博文里。如果有什么建议可以留言评论交流~

基于 React video 视频打点 它将VUE的各个知识点进行了总结,整理成了《Vue 开发必须知道的36个技巧》。内容比较详实,对各个知识点的讲解也十分到位。 阅读详情

相关推荐

react项目中使用阿里播放器播放视频,包括切换视频,播放定时跳转(兼容ios和andro),播放完成

react项目中使用阿里播放器播放视频,包括切换视频,播放定时跳转(兼容ios和andro),播放完成 1.index.html引入阿里播放器的cdn <link rel="stylesheet" href="https://g.alicdn.com/de/prismplayer/2.8.2/skins/default/aliplayer-min.css" /> 2.创建播放器组件 需要播放器其他方法的可以参考阿里播放器SDK 阿里播放器SDK import React from 'react

qq519133962的博客 2183

微软影片索引器更新!找影片更简单

微软的影片索引器服务(Video Indexer)以多模态主题推理(Multi-modal Topic Inferencing),为使用者提供更直觉的影片分类方法,还能优化其内容探索功能。微软提到,由于影片索引器可以理解媒体中的内部关系,因此比手动标记影片内容更加高效且低成本。大型媒体服务常会面临媒体内容管理的问题,而且要对媒体进行内容探索,也会因规模的关系变得更加困难,虽然将影片按主题分类是一个...

weixin_33754065的博客 299

videotimeline.js:用于控制多个 HTML5 视频对象的基于画布的时间线

视频时间线.js 用于控制多个 HTML5 视频对象的基于画布的时间线。 它是由 Marcin Ignac 创建的动画时间线上的一个分支,经过修改以用于 HTML5 视频。 全局播放/暂停/停止控件和所有连接视频沿时间轴滑动。 旨在跟踪多摄像机设置(生产、安全、体育等)的回放。 用法 已在 DOM 中的视频 只需添加尽可能多 var timeline = new Timeline(); timeline.addVideoFromDOM("camera1", "vid1"); timeline.addVideoFromDOM("camera2", "vid2"); timeline.addVideoLink("camera3", "url-to-camera.ogv", true); 时间线将自动出现在页面底部。 单击轨道名称切换到该视频,然后拖放滑块跳过 查看一个简单的演示 不在

【亲测免费】 探索创新:VideoTimeLine - 视频时间线编辑神器

探索创新:VideoTimeLine - 视频时间线编辑神器 是一个开源的视频编辑工具,专为对视频剪辑有独特创意和需求的用户而设计。它提供了直观的时间线界面,使用户能够轻松地处理、合并和调整视频片段,进而创作出专业级别的视频作品。 技术解析 1. 基于 Electron 的跨平台应用 VideoTimeLine 使用 Electron 框架构建,这使得它能够在 Windows, macOS 和 L...

gitblog_00064的博客 1006

react-hover-video-player:当用户将鼠标悬停在视频上时,React组件将呈现正在播放的视频

React悬停视频播放器 这是什么 一个React组件,使设置视频变得非常容易,当用户将鼠标悬停在该视频上时,该视频将播放。 这对于设置缩略图将在悬停时播放视频预览特别有用。 特征 开箱即用的鼠标和触摸屏交互支持 轻松添加自定义缩略图和加载状态 干净,无错误的异步视频播放处理 轻巧快速 没有依赖关系 这个怎么运作 此组件将呈现一个视频元素,当在上onFocus onMouseEnter , onTouchStart或onFocus事件时,该视频元素将开始播放;当在上onFocus onMouseLeave或onBlur事件,或者在外部触发onTouchStart事件时,该视频元素将暂停onMouseLeave目标。 可以根据需要此默认行为。 编写所有内容时都要格外小心,以便在异步加载和播放视频元素时清晰地处理它的状态。 开始使用 安装 npm install react-hover-vi

html,js实现时间轴,可播放视频,点击放大图片

用html,js实现时间轴,页面可以随鼠标滚动,可播放视频,点击放大图片

web端实现视频播放,视频地址切换,清晰度切换,断点续播

原理:基于原生video标签进行扩展,使用的前端框架为vue2.x。 方法一(直接使用video): html部分: <video id="videoPlayer" ref="videoPlayer" controls preload="load" autoplay :src="currentSrc" class="video-js" ></video> 绑定的current

weixin_45332196的博客 6127

Video-Timeline-Tags-ViTT:带有时间轴注释的视频集合,其中每个视频都分为多个部分,并且每个部分都标有简短的自由文本描述

视频时间轴标签(ViTT) 此仓库提供了在( || )中引入的视频时间轴标签(ViTT)数据集。 如果您发现对自己的工作有用的数据或文件,请考虑引用以下内容: @inproceedings{huang2020multimodal, title={Multimodal Pretraining for Dense Video Captioning}, author={Huang, Gabriel and Pang, Bo and Zhu, Zhenhai and Rivera, Clara and Soricut, Radu}, booktitle={AACL-IJCNLP 2020}, year={2020} } 数据集说明 可以通过以下链接下载该数据集的数据文件: ViTT数据集由人工制作的针对8169个视频的片段级注释组成。其中,有5840个视频被注释了一次,其余视

html大文件上传下载

一、概述 所谓断点续传,其实只是指下载,也就是要从文件已经下载的地方开始继续下载。在以前版本的HTTP协议是不支持断点的,HTTP/1.1开始就支持了。一般断点下载时才用到Range和Content-Range实体头。HTTP协议本身不支持断点上传,需要自己实现。 二、Range 用于请求头中,指定第一个字节的位置和最后一个字节的位置,一般格式: R...

weixin_45525177的博客 1025

变焦跟踪理论基础(如何在变焦过程中保持清晰)

如何在整个变焦过程中一直保持图像的清晰度或焦点是变焦跟踪的主要挑战。 当用户在缩放跟踪的情况下改变缩放时,设备保持对焦。 然而,在没有变焦跟踪的情况下,图像变得失焦,图像在变焦跟踪后由于自动对焦(AF)算法才最终对焦。...................................................

ChenYX的博客 20万+

LTspice仿真三线制PT100高精度测温系统设计

本文详细介绍了如何使用LTspice仿真设计三线制PT100高精度测温系统。文章从三线制原理出发,逐步讲解了在LTspice中建模PT100、构建惠斯通电桥进行信号转换、设计差分放大与滤波电路、选型ADC以及进行系统联调与误差分析的全过程,旨在帮助工程师实现0.5°C分辨率的工业测温方案设计。

pz89012345的博客 98

js、html实现断点播放视频,视频资源在localStorage中

一个小demo,帮助你开发~

是光の谢宣骞博客 713

OpenSceneGraph编译、安装、开发环境

详细描述WIndows 10下使用Visual Studio 2019编译OpenSceneGraph 3.6.5的操作流程

国产CAx(CAD/CAE/CAM)软件研发 8772

大型视频网站的文件上传和断点续传是如何实现的

当前的视频应用异常火爆,大大小小的视频网站已经有数百家之多。在他们的运营过程中都会面临同样一个问题,那就是高并发的用户上传、大视频上传、断点续传,这些都是硬性需求。解决这些问题,无疑需要靠我们这些程序猿来实现。下面我把自己的一些工作经验和大家分享。由于互联网上行链路并不具有100%的稳定性,比如在上传过程中会经常出现网络堵塞,网络中断或者客户端宕机的情况发生,当你有4GB的视频文件上传到50%或者...

qq_1185116788的博客 2179

SigmaStudio进阶技巧:如何用ADAU1701实现60段EQ与防啸叫算法

本文深入探讨了如何在ADAU1701 DSP芯片上实现专业级音频处理系统。通过精密的资源规划与架构设计,详细讲解了构建高达60段参数均衡器(EQ)的有效方法,并集成了移频与自适应陷波双策略的智能防啸叫算法。内容涵盖从SigmaStudio工程优化、算法模块组合到系统联调实战的全流程,旨在帮助中高级开发者充分利用ADAU1701性能,打造稳定、高效的音频处理解决方案。

weixin_28256233的博客 385

(四) OpenClaw-Skill技能全面了解和自定义技能

OpenClaw Skills是提升AI代理功能性的关键模块。本文系统介绍了Skills的核心概念、获取渠道和创建方法。Skills作为标准化指令集合,能让OpenClaw从单纯理解升级为实际执行任务,相比传统System Prompt具有模块化、可复用等优势。用户可通过Clawhub官方商店、GitHub社区等渠道获取5700+现成技能,或按需开发自定义Skill。文章详细演示了创建"Hello World"示例技能的完整流程,包括编写Python脚本、配置SKILL.md文件、部署。

直到世界的尽头 8295

阿里云实践 - HTML5断点播放m3u8视频(videojs)

场景:HTML5页面需要通过<video>标签播放一段200M的服务器视频,默认会需要先下载完视频后才播放,有较长的等待时间; 解决方案:前端通过videojs-contrib-hlsjs.min.js来控制<video>标签进行播放m3u8视频流播放。 步骤: 1:服务端视频video.mp4生成video.ts视频数据包,执行如下命令: ffmpeg -y -i /deploys/html/statics/video/video.mp4 -vcodec ...

WJL_MGQS的专栏 4583

【DaVinci Configurator专题】-5-通过Data Mapping自动创建CAN信号关联的Port并添加到APP SWC

目录 1 导入CAN Matrix变更后的Arxml文件 2 自动创建CAN信号关联的APP Port 3 CAN信号与App SWC的接口映射/连接 4 结尾 <--返回「实战篇」博文-总目录--> <--返回「Autosar从入门到精通-实战篇」专栏主页--> 关键词: DaVinci Developer DaVinci Configurator Pro ARXML AUTOSAR System Description Network Explorer 1

「汽车电子助手」的博客 5130

【亲测免费】 Azure Video Indexer 示例项目教程

Azure Video Indexer 示例项目教程 1. 项目介绍 Azure Video Indexer 是一个基于 Azure 媒体服务的视频分析工具,能够通过 AI 技术从视频中提取音频、视觉、文字、人脸和说话者等信息,使视频内容更易于搜索和理解。本项目提供了 Azure Video Indexer 的代码示例和项目案例,帮助开发者快速上手并集成到自己的产品中。 2. 项目快速启动 2.1...

gitblog_01090的博客 1020

YOLOv8 智能交通流量监测完整解决方案

YOLOv8智能交通流量监测系统基于先进的目标检测技术,提供实时车辆识别与统计分析功能。该系统通过虚拟检测线实现多方向车流量统计,支持多种车辆类型分类,并具备数据可视化、异常事件预警等核心功能。完整解决方案包含模型训练、实时检测、批量处理、结果分析等模块,并提供Flask API和Docker两种部署方案。系统采用YOLOv8算法实现高效检测,支持GPU加速,可通过量化、剪枝等技术进一步优化性能,为智能交通管理提供可靠的数据支持和技术保障。

u010117029的博客 118

用 SQL Trace 透视 SAP HANA 执行链路:从会话层到内部语句,一次把性能问题抓个现行

摘要:SAP HANA 的 SQL Trace 是性能分析和故障定位的关键工具,它记录会话层所有执行的 SQL 语句。文章解释了 SQL Trace 的工作原理、使用场景和配置方法,包括图形界面和 SQL 命令两种启用方式。重点讨论了存储过程内部语句的捕获问题,指出需要通过设置 internal 参数才能获取过程体中的详细 SQL 语句。文章还提供了实用的排查建议,强调要精准控制 Trace 范围,避免生成过大文件。最后通过真实案例展示了如何利用 SQL Trace 快速定位性能问题。(149字)

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1043

react搭配h5原生video标签手写网页播放器

react搭配h5原生video标签手写网页播放器。本次开发,主要是用node做项目的依赖管理,同时使用webpack进行打包。请确保运行项目前已安装这两样利器。项目结构深坑整个项目过程还算流畅,唯独在处理全屏状态下监听esc和f11按键的时候多花了点时间

u011070165的专栏 5874

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

React之运用组件获取鼠标实时位置信息

核心思路: 通过鼠标移动事件,获取实时鼠标位置信息,再将位置信息更新在页面上 鼠标位置 实现思路: 要设置 state,用来保存鼠标的 横纵坐标 要注册mousemove事件,实时获取鼠标当前的位置,并保存到state中 mousemove事件要注册给window (在 componentDidMount 方法中进行注册) 将 state 的值设置 页面要显示鼠标位置的地方 import React from 'react'; import ReactDOM from 'react-dom'; cl

PILIpilipala的博客 2434

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

【JavaScript】列表拖拽升级,支持双击添加和时间轴左右拖动

实现双击文件列表的项添加到时间揍的最后一条。计算拖动距离给项设置左边距实现。时间轴里可以左右拖动位置。

飘逸者打瞌睡 924

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

前端网站连接MySQL数据库

前端(Vue.js)连接MySQL数据库 实现本地web服务器与MySQL数据库连接删改,查找。 文章目录前端(Vue.js)连接MySQL数据库实现本地web服务器与MySQL数据库连接删改,查找。目录结构整体逻辑监听后端服务器连接数据库配置与数据库表连接入口sql语句入口启动在`/server`目录下在项目根目录下 要实现本地web服务器与MySQL的连接,即实现在页面中对数据库的访问。整体逻...

wantingtr的博客 9万+
上一篇: JS的数据类型与事件类
下一篇: JavaScript的执行机制——同步与异步、事件循环、微任务与宏任务
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值