我创建了一个C#程序,它将屏幕捕获为Jpeg图像并将其保存到文件中。然后使用HTML5的Canvas,我使用此代码来拉入图像并显示它,每8毫秒更新一次,使其看起来像一个视频。
<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>
在本地执行此操作可以获得良好的画面(有点不稳定,但仍然很好),但通过互联网进行此操作是没用的。有没有办法直接从C#程序流式传输图像而不是使用文件?这会更快地更新它以获得良好的画面吗?或者我应该在C#程序中压缩图像?只是寻找如何使这项工作的任何指针。谢谢您的帮助! :)
答案 0 :(得分:1)
如果您可以设法对交付方法进行编码,那么将html5-video元素附加到应用中的端点应该不会更糟糕:)
但它可能涉及动态地将jpeg-images转码为h264;)