上传视频成功后需要为视频做封面,如何取得?
试试这个:js 实现视频截图
测试结果:
完整代码:
<!doctype html>
<html lang="zh-CN">
<head>
<title>测试页</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no,maximum-scale=1,minimum-scale=1">
</head>
<body>
<video id="video" controls="controls">
<source src="movie.ogg"></source>
<source src="movie.mp4"></source>
您的浏览器不支持html5
</video>
<button id="capture">截屏</button>
<div id="output"></div>
<script src="https://cdn.bootcss.com/jquery/1.12.3/jquery.js"></script>
<script>
$(function(){
var video, $output;
var scale = 0.25;
var initialize = (function() {
$output = $('#output');
video = $('#video').get(0);
$('#capture').on('click', function(){
captureImage();
})
})()
var captureImage = function(){
var canvas = document.createElement("canvas");
canvas.width = video.videoWidth * scale;
canvas.height = video.videoHeight * scale;
canvas.getContext('2d').drawImage(video, 0, 0, canvas.width, canvas.height);
var image = document.createElement('img');
image.src = canvas.toDataURL();
$output.prepend(image);
}
})
</script>
</body>
</html>
注意:视频必须部署在本地,否则会出现截图跨域问题,视频可以从下面的地址下载到本地
http://www.w3school.com.cn/i/...
http://www.w3school.com.cn/i/...
8 回答4.6k 阅读✓ 已解决
6 回答3.4k 阅读✓ 已解决
5 回答2.8k 阅读✓ 已解决
5 回答6.3k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
5 回答1.3k 阅读✓ 已解决
4 回答2.8k 阅读✓ 已解决
啊欧....刚做了一个这样的功能,这是总结的文章,你可以参考一下
https://segmentfault.com/a/11...