2011-11-16 4 views
0

J'ai créé un programme C# qui capture l'écran en tant qu'image Jpeg et l'enregistre dans un fichier. Puis, en utilisant Canvas de HTML5, j'utilise ce code pour extraire l'image et l'afficher, en la mettant à jour toutes les 8 millisecondes pour qu'elle ressemble à une vidéo.Possibilité de diffuser des images (vidéo) à partir de C# en utilisant JavaScript?

<html> 
    <head> 
     <script type="application/javascript"> 
      function draw() { 
       var c=document.getElementById("myCanvas"); 
       var cxt=c.getContext("2d"); 
       var img=new Image(); 
       img.src="C://wamp/www/test.jpg?" + new Date().getTime(); 

       img.onload = function() { 
        cxt.drawImage(img, 0, 0); 
       }; 
      } 

      function start() { 
       setInterval("draw()",15); 
      } 
     </script> 
    </head> 
    <body onLoad="start()"> 
     <canvas id="myCanvas" width="1024" height="720"></canvas> 
    </body> 
</html> 

Faire cela donne localement une bonne image (un peu saccadée, mais bon), mais le faire sur Internet est inutile. Est-il possible de diffuser l'image directement à partir du programme C# au lieu d'utiliser un fichier? Est-ce que cela mettrait à jour assez rapidement pour une bonne image? Ou dois-je compresser l'image dans le programme C#? Je cherche juste des indications sur la façon de faire ce travail. Merci pour l'aide! :)

Répondre

1

Si vous parvenez à coder la méthode de livraison, il ne devrait pas être pire que la fixation d'un élément de html5-vidéo sur un point de terminaison dans votre application :)

Mais il pourrait impliquer transcoder JPEG- images à h264 à la volée;)

+0

http://en.wikipedia.org/wiki/MJPEG#M-JPEG_over_HTTP –

+0

Merci Christian! En regardant ça, je ne pense pas que M-JPEG fonctionnerait parce que je veux capturer aussi l'entrée de l'utilisateur. Est-il possible de compresser les images jpg, puis de les décompresser pour les afficher sur la toile? –

+0

Peut-être que "compresser" est le mauvais mot à utiliser, car ils sont déjà compressés, non? Y a-t-il un moyen de les rendre plus petits en kb? –

Questions connexes