[Spice-devel] spice-gtk on MAC OSX

Marc-André Lureau mlureau at redhat.com
Mon Oct 7 14:53:45 CEST 2013



----- Original Message -----
> Marc,
> 
> thank you for your message.
> 
> Cairo-SDL can be realized in two ways:
> 
> // Integrate SDL into cairo
> http://www.cairographics.org/SDL/

I wonder why that would make it faster than a cairo quartz surface / backend.
 
> // Use the integration (even if this is not up to date - this may help
> me to understand)
> http://cgit.freedesktop.org/~joonas/cairosdl/tree/README
> 
> Regarding the canvas I did not find any up-to-date implementation of
> Quarz in C. We will need to use some wrappers in Obj-C exporting the
> relevant funtions. I would try to make such an implementation, once I
> understood how this works. But I did not understand why there are so
> many more funtions implemented in sw_canvas.c compared to gdi_canvas.c.
> Is there not the need to implement them all at present? If I want to
> start with a kind of "quarz_canvas.c" - what would be the minumum set of
> functions?

Disclaimer, I have little experience with canvas code.

The higher level functions are those listed in first half of SpiceCanvasOps struct. If you implement the same as the GDI canvas, you should be good.

The rest of the functions are needed in acase base case: if you don't override all higher-level functions, you can use the common code in canvas_base.c and implement the simpler functions called from there.

> Kind reagards,
> Mario
> 
> 
> Am 07.10.2013 13:12, schrieb Marc-André Lureau:
> > Hi
> > 
> > ----- Original Message -----
> >> Hi,
> >> 
> >> I just compiled the spice-gtk client (spicy) on OSX
> >> (http://www.spice-space.org/page/OSX_Client/Build).
> >> 
> >> I am able to connect to the spice server using this client but it is
> >> more slow than any VNC client I know.
> >> 
> >> 
> >> I looked into the code and found two different places where this
> >> client
> >> seems to be different than the x11 or GDI versions:
> >> 
> >> 1.) It uses sw_canvas.c
> >> 2.) It uses spice-widget-cairo.c
> >> 
> >> Is it possible that the slow rendering results in the execution time
> >> one
> >> of those two files? Which investigation would make more sense: Would
> >> it
> >> be better to provide a SDL cairo version or should it accelerate the
> > 
> > What is "a SDL cairo version"?
> > 
> >> client when there is a canvas option optimized for OSX (quarz I
> >> guess)?
> > 
> > Gtk+ uses Cairo for drawing. If it's slow on OSX, it can probably be
> > optimized by using the right drawing API.
> > 
> >> Is it possible to test the gl canvas on OSX? I didn´t found anything
> >> about the gl implementation in the configure script.
> > 
> > Spice-gtk doesn't support GL canvas yet. The GL canvas is more limited
> > that the SW canvas, and it is generally much slower for today
> > computers.
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel
> 


More information about the Spice-devel mailing list