[patch] VNC Output Module

I’ve started writing a VNC output module for SDL that uses libvncserver.
This is available as a patch[1] to SDL 1.2.14. It requires that you use
–enable-video-vnc in ./configure manually, and select the video driver
manually with SDL_VIDEODRIVER=“vnc”.

I’m not finished writing the code yet, and there’s still more stuff I
want to get done. This is a beta just to get the ball rolling so if I
do happen to loose interest in the project or get distracted by other
work, someone can pick it up, because I believe the code is still
useful!

What works:
* 16, 24 and 32-bit true-colour displays.
* Mouse events.
* Keyboard events.

What?s left to do:
* Fix mouse cursors so they display correctly.
* 8-bit (paletted) displays.
* Handle surface locking properly.
* Reduce/eliminate tearing on frequent screen updates.
* Run the libvncserver event loop inside SDL?s event loop system.
* Implement a password on the VNC server and some sort of simple
access control.
* Implement a view-only mode.
* Allow setting the display number manually.
* pygame applications.
* Fix screen resolution change colour issues.

What will never work:
* OpenGL surfaces.
* CDROMs, Joysticks and Sound over VNC.
* YUV video output.

Links:
[1]: http://micolous.id.au/static/projects/sdlvnc/SDL-video-vnc-v1.diff.bz2

Hey, pretty cool!On Mon, Feb 15, 2010 at 1:26 PM, Michael Farrell <micolous+sdl at gmail.com> wrote:

I’ve started writing a VNC output module for SDL that uses libvncserver.
This is available as a patch[1] to SDL 1.2.14. ?It requires that you use
–enable-video-vnc in ./configure manually, and select the video driver
manually with SDL_VIDEODRIVER=“vnc”.

I’m not finished writing the code yet, and there’s still more stuff I
want to get done. ?This is a beta just to get the ball rolling so if I
do happen to loose interest in the project or get distracted by other
work, someone can pick it up, because I believe the code is still
useful!

What works:
? ? ?* 16, 24 and 32-bit true-colour displays.
? ? ?* Mouse events.
? ? ?* Keyboard events.

What?s left to do:
? ? ?* Fix mouse cursors so they display correctly.
? ? ?* 8-bit (paletted) displays.
? ? ?* Handle surface locking properly.
? ? ?* Reduce/eliminate tearing on frequent screen updates.
? ? ?* Run the libvncserver event loop inside SDL?s event loop system.
? ? ?* Implement a password on the VNC server and some sort of simple
? ? ? ?access control.
? ? ?* Implement a view-only mode.
? ? ?* Allow setting the display number manually.
? ? ?* pygame applications.
? ? ?* Fix screen resolution change colour issues.

What will never work:
? ? ?* OpenGL surfaces.
? ? ?* CDROMs, Joysticks and Sound over VNC.
? ? ?* YUV video output.

Links:
[1]: http://micolous.id.au/static/projects/sdlvnc/SDL-video-vnc-v1.diff.bz2


SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org


http://codebad.com/