【js】视频截图

复制代码
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <video id="player_html5_api" autoplay controls="controls">
        <source src="images/视频.mp4" crossOrigin="anonymous"/>
    </video>
    <button onclick="cut()">截图</button>
    <div id="imgOut"></div>
    <script>
       var cut = function (){
            var scale = 0.25;
            var video = document.getElementById("player_html5_api");
            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);
            canvas.setAttribute("id", "canvas");
            document.getElementById("imgOut").append(canvas)
            console.log(canvas.toDataURL());
        }

    </script>
</body>

</html>
复制代码

注:

① canvas.toDataURL()会报错

②实际项目中,需要上传图片接口,获取图片的url

 

相关资料:

posted on   smile轉角  阅读(81)  评论(0编辑  收藏  举报

编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通

导航

统计

点击右上角即可分享
微信分享提示