高效的屏幕捕获程序

时间:2010-11-04 14:22:13

标签: c# screen-capture data-serialization

我希望创建一种远程桌面软件,我需要通过互联网将用户屏幕传输给观众。

我的目标是创建一个优化的捕获,这样我就不必每秒传输整个屏幕10次..

我的想法是在本地计算机上截取屏幕截图,然后仅确定上一屏幕截图中的CHANGED像素。所以基本上如果他们做了什么,只有在屏幕上发生变化的东西才能在另一边发送和重建,所以我可以节省带宽并加快速度,以减慢互联网连接。

我的问题:

  1. 如何将新屏幕截图与旧屏幕截图进行比较并确定更改内容。
  2. 如何通过标准TCP流发送步骤1中发现的信息。
  3. 如何重建该数据以便在另一侧成功显示屏幕更新。

1 个答案:

答案 0 :(得分:0)

VNC是一款开源远程桌面软件。我建议您下载源代码并查看其工作原理。但是我确信它不是用C#编写的。

以下是TightVNC源代码的链接: http://www.tightvnc.com/download.php

FogCreek最近将VNC源用于其CoPilot产品。你也可以从这里下载它的来源: https://www.copilot.com/faq/#t28

希望有所帮助