xpra icon
Bug tracker and wiki

This bug tracker and wiki are being discontinued
please use https://github.com/Xpra-org/xpra instead.

Version 2 (modified by Antoine Martin, 9 years ago) (diff)


Client Rendering

The choice of drawing backend has an influence on the performance, the encodings the client can support, etc.

Python / GTK Client

The main supported client is written in Python + gtk, and supports three rendering modes:

  • PixmapBacking - a standard pixmap based backing, gtk2 only.
  • CairoBacking - uses cairo surfaces for backing, required for gtk3 support.
  • GLPixmapBacking - uses OpenGL for backing, allows us to speedup rendering by using OpenGL for the colourspace conversion step needed with x264 and vpx encodings.

The GL backend should be used for non-transient windows when the encoding is set to x264 or vpx.

Java Client

The (unsupported) Java client has backends for:

  • AWT
  • Swing
  • GTK-Java

In all cases, only "jpeg" and "png" encodings are supported.

Android Client

The (unsupported) Android client has the same limitations as the Java client with which it shares most of the code.

OpenGL Notes

Some drivers are blacklisted for OpenGL support, for example nouveau on Linux. To test/diagnose your system support for OpenGL, run:

  • on Posix:
    python ./xpra/gl/gl_check.py
  • on MS Windows:

The output will show the driver, vendor and the status of various required extensions. Related tickets:

  • #147 - original feature ticket
  • #150 - OpenGL usage bugs
  • #226 - OSX specific issues (unresolved)
  • #227 - MS Windows specific issues
  • #229 - bug: hard crash