1. canvas实现截图

<canvas id="myCanvas" width="343" height="200" hidden></canvas>
cutPicture(){let self=this;var v = document.querySelector("video");if(null == v) {this.$Message.error("请先上传视频再截图");return;}let canvas = document.getElementById('myCanvas')var ctx = canvas.getContext('2d');ctx.drawImage(v, 0, 0, 343, 200);var oGrayImg = canvas.toDataURL('image/jpeg');
}

错误:Error: Failed to execute 'toDataURL' on 'HTMLCanvasElement': Tainted canvases may not be exported

参考Tainted canvases may not be exported,视频帧截图跨域 - 掘金, video加上crossorigin="anonymous"就OK了,代码如下所示:

<video v-if="formValidate.video.length != 0" :src="formValidate.video" controls="controls" width="350" height="180" crossorigin="anonymous"></video>

2.截图图片通过post请求上传服务器

2.1先讲图片base64转为文件

// 将base64转换成file对象
function dataURLtoFile(dataurl, filename = 'file') {let arr = dataurl.split(',')let mime = arr[0].match(/:(.*?);/)[1]let suffix = mime.split('/')[1]let bstr = atob(arr[1])let n = bstr.lengthlet u8arr = new Uint8Array(n)while (n--) {u8arr[n] = bstr.charCodeAt(n)}return new File([u8arr], `${filename}.${suffix}`, { type: mime })
}

2.2 https请求设置Content-type="multipart/form-data";

2.3 组装formdata

var formData = new FormData();
formData.apend("file", dataURLtoFile(oGrayImg));
formData.apend("file_name", "test.jpeg");

然后通过https.post即可上传服务端

js实现视频截图,并通过post请求发送图片相关推荐

  1. ESP32开发-HTTP POST请求发送图片

    HTTP POST请求发送图片 ESP32中有HTTP相关的请求demo,但是demo中只是简单的HTTP header加上body.如果服务器对POST请求有要求,比如数据以key-value的形式 ...

  2. java 图片请求_java中使用scoket模拟http post请求发送图片或文件

    最近遇到个问题,两个系统共用用户的头像,用户的头像在一个系统中保存,这就涉及到将图片通过scoket发送给另一个系统存储的问题,最初的思路是将图片读成byte[]数组,然后发送,但又发现,发送图片的同 ...

  3. js截屏 video_canvas与html5实现视频截图功能

    这段时间一直在研究canvas,突发奇想想做一个可以截屏视频的功能,然后把图片拉去做表情包,哈哈哈哈哈哈~~ 制作方法: 1.在页面中加载视频 在使用canvas制作这个截图功能时,首先必须保证页面上 ...

  4. video.js 视频截图、录制、自定义全屏,hls、flv、mp4视频播放

    功能 video.js内嵌 截图.录制功能 (图片.视频会下载到本地) 自定义全屏 播放hls.flv.mp4 功能集合成Vue组件 参考 video.js components RecordRTC ...

  5. js使用canvas实现视频截图

    使用工具 视频播放器API:西瓜播放器 截图:canvas 实现步骤 1. 创建 canvas 元素,创建 canvas 上下文对象 const canvas = document.createEle ...

  6. js截屏 video_jQuery+html5实现视频截图方法

    Capture js部分: (function() { "use strict"; var video, $output; var scale = 0.25; var initia ...

  7. js截屏 video_用原生JS和html5进行视频截图并保存到本地

    Video视频截图 body, h1, h2, p { margin:0; padding:0; } html { font-family:"微软雅黑"; background-c ...

  8. ffmpeg 截图 java_Java Web 中使用ffmpeg实现视频转码、视频截图

    视频网站中提供的在线视频播放功能,播放的都是FLV格式的文件,它是Flash动画文件,可通过Flash制作的播放器来播放该文件.项目中用制作的player.swf播放器. 多媒体视频处理工具FFmpe ...

  9. vue前端video视频截图与录影功能的简单实现

    目录 截图:截取图片后可以进行涂鸦编辑,并能清除,撤销. 录影:点击按钮后录制10s左右的视频文件. 文件上传服务器示例 最近项目开发中,需要实现在video 视频上截图,录影后将文件上传到阿里云服务 ...

  10. 使用ngnix实现跨域视频截图

    通过使用html5 canvas的drawImage()方法可以轻松获取视频当前播放的帧.参考 但是只能对当前项目下的视频截图.很多情况下,视频文件是单独存放的,即要对跨域视频截图 在尝试了很多方法之 ...

最新文章

  1. 如何利用 C# 实现神经网络的感知器模型?
  2. 没有找到borlandmm.dll 报错的解决方法
  3. 如何使用python爬取百度图片_python实现爬取百度图片的方法示例
  4. jsp页面模块的来源
  5. 9.IDA-重新设置函数类型、创建数组结构
  6. python UI/API 环境配置
  7. 汇编实验一 查看CPU和内存,用机器指令和汇编语言指令编程
  8. SATI下载-安装-使用 一看便懂+spss聚类(附安装包)
  9. Web应用程序开发课程总结
  10. 计算机以弧计算和以度计算公式,角度换算公式(角度计算公式图解)
  11. 计算机审计中级题库,中级审计师用什么题库练习呢
  12. 项目管理计划怎么写?这9大步骤要知道
  13. foobar2000使用cue文件播放时出现Unable to open item for playback (Object not found):的问题解决
  14. 盘点好用的 Markdown 编辑器
  15. 绿色版mysql8.0.25的卸载安装与基础使用
  16. 关于pc浏览器浏览外网出现ERR_EMPTY_RESPONSE的问题
  17. [国家集训队]阿狸和桃子的游戏(贪心)
  18. 截部分陈宏对用线段树解矩形并的轮廓(picture 问题的深入讨论)
  19. php writeup,writeup---你真的会PHP吗?
  20. [附源码]Java计算机毕业设计SSM房屋出租管理系统

热门文章

  1. 苹果手机屏幕镜像怎么连接电视_创维电视怎么连接手机?图解创维电视连接手机步骤...
  2. paypal android sdk,Android Paypal SDK错误:商家不接受此类付款
  3. 第十届国家级大学生创新训练项目——3D打印技术在建筑构部件生产中的应用
  4. 操作系统实验Lab 2:system calls(MIT 6.S081 FALL 2020)
  5. Java代理的几种方式
  6. 高通平台Camera Dtsi解析
  7. matlab积分器,MATLAB_SIMULINK__积分器相关操作
  8. win10家庭版添加“本地安全策略”
  9. matlab根号二,matlab根号二怎么打_常见问题解析,matlab,根号二,根号
  10. PID参数自整定库之一:继电反馈整定算法