canvas加载视频和图片是一样的,使用drawImage,区别就是给一个定时器不停的抓取每帧的画面,放入Canvas画布里面,这个办法有点简单粗暴,原理为:监听了video的play事件,并设置定时器,每20ms调用一次drawImage,当video的ended事件触发时,清除定时器。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Test</title>
</head>
<body><video src="p03501roz02.p702.1.mp4" id="video1" width="270" controls autoplay></video><canvas id="myCanvas" width="270" height="135"></canvas><script>var v = document.getElementById('video1')var c = document.getElementById('myCanvas')var ctx = c.getContext('2d')// 每20ms画一次图v.addEventListener('play', function () {var i = window.setInterval(function () {ctx.drawImage(v, 0, 0, 270, 135);if (v.ended) {clearInterval(i)}}, 20)});</script>
</body>
</html>

简单地利用canvas载入视频相关推荐

  1. js截屏 video_video结合canvas实现视频在线截图功能

    给大家讲解下我前几天看到的一个有趣小demo:视频在线截图.以下是我修改和添加了新功能后的效果图: 是不是很酷,其实挺简单的,下面就给大家讲讲怎么弄哈. 这里主要分为三大块功能,首先是第一个: 利用U ...

  2. web实战:video结合canvas实现视频在线截图

    给大家讲解下我前几天看到的一个有趣小demo:视频在线截图.以下是我修改和添加了新功能后的效果图: 是不是很酷,其实挺简单的,下面就给大家讲讲怎么弄哈. 这里主要分为三大块功能,首先是第一个: 利用U ...

  3. 在html利用canvas蚂蚁,html5 利用canvas实现简单的人物走动

    最近在学习html5,其中涉及到很关键的元素canvas-画布,在网上下载了一些游戏源代码,虽然能看懂,但是想单独地针对某个功能提取出来还是有难处的,于是乎自己又上网查找了一些例子,才将超级玛丽简单的 ...

  4. canvas绘制视频封面

    一.需求:上传视频,同时截取视频某一帧作为视频的封面. 二.实现思路:利用canvas绘制图像的功能,绘制图像某一帧,这里绘制了第一帧,很简单就实现了. 三.代码: <!DOCTYPE html ...

  5. 教你如何利用canvas画布绘制哆啦A梦

    教你如何利用canvas画布绘制哆啦A梦 最近一直在练习使用canvas画布标签,今天教大家如何使用canvas画布绘制哆啦A梦.如图: HTML代码: <canvas id="my_ ...

  6. 视频封面图片修改html代码,canvas绘制视频封面的方法

    一.需求:上传视频,同时截取视频某一帧作为视频的封面. 二.实现思路:利用canvas绘制图像的功能,绘制图像某一帧,这里绘制了第一帧,很简单就实现了. 三.代码: capture screen vi ...

  7. Canvas入门-利用Canvas绘制好玩的电子时钟

    在这之前 你需要了解一下方法的使用: beginPath() closePath() moveTo() lineTo() fill() stroke() fillRect() clearRect() ...

  8. php怎么实现弹幕,HTML如何利用canvas实现弹幕功能

    本篇文章主要介绍HTML如何利用canvas实现弹幕功能,感兴趣的朋友参考下,希望对大家有所帮助. 简介 最近在做大作业的时候需要做一个弹幕播放器.借鉴了一下别人的源码自己重新实现了一个,演示如下 主 ...

  9. html5 自动扣图,html5利用canvas实现颜色容差抠图功能

    利用canvas的getImageData,我们可以获取到一张图片每一个像素的信息,而通过对每一个像素信息的对比,我们就可以找到需要消去的像素点.比如下面这一张图片,如果我们想要扣去白色部分(粉色是b ...

最新文章

  1. 跨平台PHP调试器设计及使用方法——拾遗
  2. Cell综述:动植物界的微生物群和宿主营养
  3. Android之一起玩转下拉刷新控件
  4. 自动调节图像的对比度 和改变图像的大小
  5. LSI系新军搅局,PCIe固态盘混战?
  6. python操作redis集群_python操作redis集群
  7. mysql卸载完环境变量还有_MySql完全卸载
  8. C#LeetCode刷题之#111-二叉树的最小深度​​​​​​​(Minimum Depth of Binary Tree)
  9. Docker镜像常用命令(三)
  10. 移动端---媒体查询
  11. 【Lintcode】541. Zigzag Iterator II
  12. gcc cross compiler 问题
  13. Python PIL Image 4通道透明图片叠加(ARGB)
  14. 九型人格:三、The proformer 实干者 - 我若没有成就,就没有人会爱我。
  15. 【云原生之Docker实战】使用docker部署DokuWiki知识库系统
  16. 基于Spring Security和 JWT的权限系统设计
  17. linux设置开机自启服务,linux设置服务开机自启动的三种方式
  18. 烧得七荤八素了,完了这下,本来现在应该在学校做网站的,然而半小时前还摊在床上哼哼唧唧。
  19. 把成都市所有图书馆标记在地图上需要几步?超简单
  20. 前端H+框架的常规操作

热门文章

  1. Yarn将用TypeScript重写,Flow惨遭亲爹抛弃!
  2. python全栈开发 * 08知识点汇总 * 180608
  3. 一文看懂如何搭建AI应用:10周学会深度学习,还赢下5千美元
  4. Excahnge 2010断开连接的邮箱无法找到
  5. linux5.4+resin4.0.14+jdk1.6+JDBC篇
  6. Kilim实现浅析(一)
  7. PHP 截取中文字符函数
  8. [C# 基础知识系列]专题六:泛型基础篇——为什么引入泛型
  9. Java多线程中使用ReentrantLock、synchronized加锁 简单举例
  10. 使用WeexSDK,网络请求信任证书的问题