Efficient screen capture program [closed]
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 1 year ago.
Improve t开发者_JAVA百科his questionIm looking to create a sort of remote desktop software, and it is required that i transfer the users screen over the internet to the viewer.
My goal is to create an optimized capture so that i dont have to transfer the whole screen 10 times a second..
The idea i had was take the screenshots on the local computer and then determine only the CHANGED pixels from the last screenshot. So basically if they did something, only what changed on the screen would be sent and reconstructed on the other side, so i can save bandwidth and speed it up for slower internet connections.
My questions:
- How can i compare a new screenshot to an old one and determine what has changed.
- How would i send the information discovered in step 1 over a standard TCP stream.
- How would i reconstruct that data to display the screen updates successfully once on the other side.
VNC is an open source remote desktop software. I recommend you download the source and take a look at how it works. However I am sure its not written in C#.
Here is a link to TightVNC's source code: http://www.tightvnc.com/download.php
FogCreek recently used the VNC source for its CoPilot product. You can download it's source from here as well: https://www.copilot.com/faq/#t28
Hope that helps
精彩评论