VNC – Compression – Quality – The Works

X11vnc is the tool of choice!! You have view, and control of the actual desktop that the vnc server is running on. If multiple clients log into the machine a regular vnc server may be more applicable, but if you are running a server, and require direct interaction with the desktop from a remote location X11vnc is the way to go. There are two things to configure. How X11vnc runs, and how the client connects. I use xtightvncviewer for a client. To install X11vnc use:

sudo apt-get install x11vnc

Since I am on a 1280×800 monitor, I want to reduce the size of my vnc windows. This is done when launching X11vnc. Also I want X11vnc to stay alive after I close a connection, so I can reconnect at a later time. Also I want X11vnc to run in the background to avoid a terminal window having to remain open. I also threw in a no shm command to avoid shell process issues, which caused X11vnc not to launch on my machine. Overall my X11vnc startup command is the following: x11vnc -noshm -scale 7/10 -many -background Now onto xtightvncviewer. There are many configuration for the viewer. I have tailored my configuration for optimal resolution, and optimal compression. The net result is a relatively high quality screen, with maximize responsiveness! Here ya go:

xtightvncviewer -compresslevel 9 -quality 9 -x11cursor -nocursorshape -encodings Tight localhost

Notice that I am connecting to the localhost. You can probably guess that I have an ssh tunnel configured :) Also notice that I am operating at a quality of 9, which is nicely compensated for with the Tight encoding. Nocursorshape improves responsiveness ever so slightly, and x11cursor makes the cursor purty.

Leave a Reply