如何使用JavaScript录制视频

发布于 2025-02-08 23:55:18 字数 1222 浏览 0 评论 0原文

我在Google中找到了一个可以启用网络摄像头的代码,但是我想编写一个录制视频并在停止时自动保存在我的目录服务器中的功能。 我的代码:

index.html

<head>
    <title>CAM</title>
    <script src="script.js"></script>
    <link href="style.css" rel="stylesheet">
</head>
<body onload="main()">
    <canvas id="myCanvas"></canvas>    
    <button id ="record">Record</button>
    <button id ="stop">Stop</button>
</body>

脚本

let VIDEO = null;
let CONTEXT = null;

function main(){
    CANVAS = document.getElementById("myCanvas");
    CONTEXT = CANVAS.getContext("2d");
    CANVAS.width = window.innerWidth;
    CANVAS.height = window.innerHeight;


    let promise = navigator.mediaDevices.getUserMedia({video:true});
    promise.then(function(signal){
        VIDEO = document.createElement("video");
        VIDEO.srcObject = signal;
        VIDEO.play();

        VIDEO.onloadeddata = function(){
            updateCanvas();
        }
    }).catch(function(err){
        alert("Camera error: "+err);
    })
}

function updateCanvas(){
    CONTEXT.drawImage(VIDEO, 0, 0);
    window.requestAnimationFrame(updateCanvas);
}

I found a code in the google that I can enable my webcam, but I would like to write a function that record the video and save in my directory server automatically when I stop it.
My code:

index.html

<head>
    <title>CAM</title>
    <script src="script.js"></script>
    <link href="style.css" rel="stylesheet">
</head>
<body onload="main()">
    <canvas id="myCanvas"></canvas>    
    <button id ="record">Record</button>
    <button id ="stop">Stop</button>
</body>

Script.js

let VIDEO = null;
let CONTEXT = null;

function main(){
    CANVAS = document.getElementById("myCanvas");
    CONTEXT = CANVAS.getContext("2d");
    CANVAS.width = window.innerWidth;
    CANVAS.height = window.innerHeight;


    let promise = navigator.mediaDevices.getUserMedia({video:true});
    promise.then(function(signal){
        VIDEO = document.createElement("video");
        VIDEO.srcObject = signal;
        VIDEO.play();

        VIDEO.onloadeddata = function(){
            updateCanvas();
        }
    }).catch(function(err){
        alert("Camera error: "+err);
    })
}

function updateCanvas(){
    CONTEXT.drawImage(VIDEO, 0, 0);
    window.requestAnimationFrame(updateCanvas);
}

Someone can help me?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文