On 11/23/11 3:49 PM, Eric Appleman wrote:
> Also, is there any way to apply the Turbo optimizations to x11vnc or
> x0vncserver?
To answer your first question, there isn't a way to attach TurboVNC to a
running X server. The TurboVNC Unix Server (Xvnc) is a fully virtual X
server, so each instance creates its own virtual framebuffer. It
requires a lot more than just drivers or redirecting the protocol to
attach to a real X server. RealVNC and its children (including
TigerVNC) generally accomplish this by plugging directly into the X
server as a module, but that requires separately supporting every single
X server code base out there and making distribution-specific builds
that utilize a specific version of X.org. x11vnc takes a different
approach, which is to intelligently read back pixels from the server
periodically, compare them for changes, and send the results. x11vnc is
the best at what it does, but it's still going to have a lot more
overhead than Xvnc, because it's using the CPU to actively poll the X
server for changes. Xvnc, on the other hand, is fully integrated, so it
knows whenever applications have drawn something, and it can use this
knowledge to determine when to send changes to connected clients.
All of that aside, there is a TurboVNC extension for x11vnc:
http://sourceforge.net/tracker/?func=detail&aid=3394218&group_id=32584&atid=405860
It hasn't been accepted into the upstream codebase yet, nor have the
developers even bothered to comment on it, but it should work. Give it
a try.
|