您现在的位置是:网站首页> 编程资料编程资料
前端H5 Video常见使用场景简介解决html5中的video标签ios系统中无法播放使用的问题HTML5 video循环播放多个视频的方法步骤html5 video全屏播放/自动播放的实现示例HTML5 video进入全屏和退出全屏的实现方法html5用video标签流式加载的实现video.js支持m3u8格式直播的实现示例详解Html5中video标签那些属性和方法
2021-08-30
1084人已围观
简介 这篇文章主要介绍了前端H5 Video常见的使用场景,帮助大家更好的进行前端开发,感兴趣的朋友可以了解下
1.原生H5 video标签
2.第三方插件video.js
_this.player = videojs( _this.videoNode, { autoplay: true, bigPlayButton : false, controls: true, preload: 'auto', poster: poster, notSupportedMessage: '视频加载失败,请刷新再试试', sources: [ { src: videoUrl, type: 'video/mp4', }, ], }, function onPlayerReady() { this.play(); } ) 2.1 支持原生H5 video标签的所有配置参数,并且更加丰富的配置。
2.2 多环境兼容性
3.业务开发中的场景
目前基本表现良好
3.1 自动播放实现
3.1.1 非微信端
目前主要方法是在videojs 的onPlayerReady回调中调用play方法,以及特殊环境下需要用户手动触发
3.1.2 微信端
微信端(特别是ios)为了能够实现自动播放功能,目前主要通过增加微信WeixinJSBridgeReady事件回调的方式来触发
document.addEventListener("WeixinJSBridgeReady", function () { this.player.play(); }, false);4.播放过程

一次播放三次请求
请求头信息

响应信息

range: bytes=0- 首部信息,该信息用于检测服务端是否支持 Range 请求
Accept-Ranges 首部(并且它的值不为 “none”),那么表示该服务器支持范围请求
Content-Length 也是有效信息,因为它提供了要下载的视频的完整大小
Content-Range 响应首部则表示这一部分内容在整个资源中所处的位置
range - 可以分片段请求,此时的Content-Range则返回的对应请求区间的大小
5.其他场景
5.1 如何实现视频本地预览
视频本地预览的功能主要利用 URL.createObjectURL() 方法来实现。URL.createObjectURL() 静态方法会创建一个 DOMString,其中包含一个表示参数中给出的对象的 URL。这个 URL 的生命周期和创建它的窗口中的 document 绑定。这个新的 URL 对象表示指定的 File 对象或 Blob 对象。
视频本地预览示例
5.2 如何实现播放器截图
播放器截图功能主要利用 CanvasRenderingContext2D.drawImage() API 来实现。Canvas 2D API 中的 CanvasRenderingContext2D.drawImage() 方法提供了多种方式在 Canvas 上绘制图像。
drawImage API 的语法如下:
void ctx.drawImage(image, dx, dy); void ctx.drawImage(image, dx, dy, dWidth, dHeight); void ctx.drawImage(image, sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight);
播放器截图示例
5.3 如何实现 Canvas 播放视频
使用 Canvas 播放视频主要是利用 ctx.drawImage(video, x, y, width, height) 来对视频当前帧的图像进行绘制,其中 video 参数就是页面中的 video 对象。所以如果我们按照特定的频率不断获取 video 当前画面,并渲染到 Canvas 画布上,就可以实现使用 Canvas 播放视频的功能。
使用 Canvas 播放视频
以上就是前端H5 Video常见使用场景简介的详细内容,更多关于前端H5 Video常见场景的资料请关注其它相关文章!
相关内容
- 前后端结合实现amazeUI分页效果amazeui 验证按钮扩展的实现AmazeUI 加载进度条的实现示例AmazeUI折叠式卡片布局,整合内容列表、表格组件实现amaze ui 的使用详细教程AmazeUI中模态框的实现Amaze UI 文件选择域的示例代码
- AmazeUI 加载进度条的实现示例amazeui 验证按钮扩展的实现前后端结合实现amazeUI分页效果AmazeUI折叠式卡片布局,整合内容列表、表格组件实现amaze ui 的使用详细教程AmazeUI中模态框的实现Amaze UI 文件选择域的示例代码
- AmazeUI图片轮播效果的示例代码html5实现点击弹出图片功能html5 录制mp3音频支持采样率和比特率设置html5表单的required属性使用html5调用摄像头实例代码HTML5页面音频自动播放的实现方式Html5大屏数据可视化开发的实现html实现弹窗的实例HTML5来实现本地文件读取和写入的实现方法HTML 罗盘式时钟的实现HTML5简单实现添加背景音乐的几种方法
- AmazeUI折叠式卡片布局,整合内容列表、表格组件实现amazeui 验证按钮扩展的实现前后端结合实现amazeUI分页效果AmazeUI 加载进度条的实现示例amaze ui 的使用详细教程AmazeUI中模态框的实现Amaze UI 文件选择域的示例代码
- AmazeUI 平滑滚动效果的示例代码AmazeUI中模态框的实现AmazeUI的下载配置与Helloworld的实现amazeui模态框弹出后立马消失并刷新页面AmazeUI 手机版页面的顶部导航条Header与侧边导航栏offCanvas的示例代AmazeUI中各种的导航式菜单与解决方法
- AmazeUI在模态框中嵌入表单形成模态输入框AmazeUI中模态框的实现amazeui模态框弹出后立马消失并刷新页面AmazeUI 模态窗口的实现代码
- amaze ui 的使用详细教程amazeui 验证按钮扩展的实现前后端结合实现amazeUI分页效果AmazeUI 加载进度条的实现示例AmazeUI折叠式卡片布局,整合内容列表、表格组件实现AmazeUI中模态框的实现Amaze UI 文件选择域的示例代码
- AmazeUI中模态框的实现amazeui 验证按钮扩展的实现前后端结合实现amazeUI分页效果AmazeUI 加载进度条的实现示例AmazeUI折叠式卡片布局,整合内容列表、表格组件实现amaze ui 的使用详细教程Amaze UI 文件选择域的示例代码
- Ratchet 模态框的实现html5实现点击弹出图片功能html5 录制mp3音频支持采样率和比特率设置html5表单的required属性使用html5调用摄像头实例代码HTML5页面音频自动播放的实现方式Html5大屏数据可视化开发的实现html实现弹窗的实例HTML5来实现本地文件读取和写入的实现方法HTML 罗盘式时钟的实现HTML5简单实现添加背景音乐的几种方法
- AmazeUI的下载配置与Helloworld的实现AmazeUI中模态框的实现amazeui模态框弹出后立马消失并刷新页面AmazeUI 手机版页面的顶部导航条Header与侧边导航栏offCanvas的示例代AmazeUI中各种的导航式菜单与解决方法AmazeUI 平滑滚动效果的示例代码
