[Spice-devel] Translating the Spice protocol using spice-client-glib
alevy at redhat.com
Tue Dec 11 04:02:17 PST 2012
> I am looking to use spice-client-glib (which seems to be the only
> low-level client library available) to implement a plugin for guacd
> which translates between the Spice protocol and the Guacamole
> protocol, thus adding Spice support to Guacamole (an HTML5 remote
> desktop gateway).
Have you ruled out using spice protocol all the way to the client and integrating the wip spice-html5 client?
http://cgit.freedesktop.org/spice/spice-html5 & demo: http://spice-space.org/spice-html5/spice.html
> At the surface, implementation using spice-client-glib seems
> straightforward, but I'm worried about information lost in the
> reduction from graphical updates supported by Spice (including cached
> updates) to a simple rect passed to a client implementation via the
> "display-invalidate" signal from the display channel. I've gone over
> the public API of spice-client-glib, as well as the code that drives
> it, and while I can find code that handles cached updates, I don't
> any way this is exposed to a client implementation driven by
> Information regarding whether a graphical change is the result of a
> cached drawing operation, as well as information regarding what image
> data was cached, is necessary for a client implementation to take
> advantage of similar caching capabilities of the destination device
> protocol, in this case the Guacamole protocol. Lacking this, my
> choices seem to be limited to modifying spice-client-glib to add the
> necessary meta-information to the "display-invalidate" signal, or
> writing my own client implementation from scratch.
> Any advice? Am I missing something?
I guess your use case was not anticipated, i.e. using spice-glib to translate to another protocol for an ultimate client.
> - Mike Jumper
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
More information about the Spice-devel