Comment puis-je obtenir un aperçu d'une vidéo en nodejs?

Je suis en train d'écrire un serveur nodejs qui va prendre un temps d'entrée (éventuellement une partie du chemin d'accès d'url), et ensuite fournir un encore de l'image vidéo à l'époque de l'index comme une image jpeg.

Je peux le faire facilement dans la plaine du Javascript, mais je ne peux pas voir un moyen de le faire dans nodejs. Je sais que je vais probablement besoin d'utiliser une toile de plugin, comme le node-toile pour faire de la capture.

Toutes les idées de bienvenue.

Voici comment je le fais en Javascript pour le moment:

myjavascript.js

function capture(video, scaleFactor) {
    if(scaleFactor == null){
        scaleFactor = 1;
    }
    var w = video.videoWidth * scaleFactor;
    var h = video.videoHeight * scaleFactor;
    stdout("<br/> w: "+ w+ "<br/> h: "+ h);
    var canvas = document.createElement('canvas');
        canvas.width  = w;
        canvas.height = h;
    var ctx = canvas.getContext('2d');
        ctx.drawImage(video, 0, 0, w, h);
    return canvas;
}

function shoot(){
 var video  = document.getElementById("videoTag");
 var output = document.getElementById("output");
 var canvas = capture(video, 1);
 output.innerHTML = '';
 output.appendChild(canvas);
}

index.html

<html>
<head>
    <title>video snap</title>   
    <script type="text/javascript" src="myjavascript.js"></script>
</head>
<body>

<div id="video_container" >
        <video id="videoTag" width="640" height="360" autobuffer="" controls="true">
            <source src="frozenplanet.mp4" type="video/mp4">
            <source src="frozenplanet.ogv" type="video/ogg">
        </video>
</div>

<div id="output"></div>

</body>
</html>
Node.js n'a pas le traitement vidéo de l'outil et il n'est pas recommandé pour traiter la vidéo par le web-application. Si vous voulez des vidéo sur le côté serveur, vous avez besoin d'un outil approprié pour que les et certains de la file d'attente de la réalisation (peut-être sur le nœud).

OriginalL'auteur MYR | 2012-01-10