Doesn't work out of the box on OS X: <a href="https://github.com/sidorares/vnc-over-gif/issues/1" rel="nofollow">https://github.com/sidorares/vnc-over-gif/issues/1</a>
This is genius! I was just this week trying to think of some way to abuse slow-loading of images by generating the image as data comes in.<p>This is perfect.
I am also currently working on a web-based remote desktop app as a side project. I am using socket.io (python port) and pngs, using transparency to only update the part of the image that changed between frames.<p>However, I also thought about using long-loading animated gifs, because:<p>1. Run-length encoding seems to be ideal for screenshots.<p>2. You can use transparency to only update pixels that changed between frames without need for an alpha layer.<p>3. Palette-based does not seem to be a big issue for screenshots, which typically have few colors.<p>4. You use an additional frames to update colors that are off [1]. That way you get the best of both worlds: low latency and high quality images.<p>Do you have any issues using gifs? Memory usage, closing connections, etc...?<p>[1] <a href="http://phil.ipal.org/tc.html#" rel="nofollow">http://phil.ipal.org/tc.html#</a>
Is this supposed to install on Windows? I get a whole bunch of errors when I run "npm install -g vnc-over-gif", most of which seem to be related to node-gif.<p>Edit: Apparently they're related to unistd.h, which doesn't exist on Windows platforms. Too bad.
Interesting that npm is being used to deploy a regular old CLI application that has essentially nothing to do with javascript development. Are we seeing the future of package management with these distribution-agnostic tools?
A few years ago I leveraged some reverse engineering to stream individual windows as GIF images.<p>More info if you're interested: <a href="http://zachcimafonte.com/GIF-Window-Server" rel="nofollow">http://zachcimafonte.com/GIF-Window-Server</a>
Very interesting. I have a tool that I use for supporting our iOS apps that streams screenshots of the users session to a browser window. Right now I just have that browser window refreshing every 2 - 3 seconds but this could be a much more interesting way to stream those screenshots. Non-technical users + no screen sharing on iOS is absolutely awful for supporting SaaS applications.
This nicely solves a problem I've been asked about: how to share a screen securely (read-only). VNC protocol and implementations are too complex/sloppy so I don't trust them. An endless GIF, on the other hand...