[winswitch] Xpra / C++ bindings

Antoine Martin antoine at nagafix.co.uk
Thu Aug 22 16:55:13 BST 2019

On 22/08/2019 22:37, Suhail Doshi via shifter-users wrote:
> Hi there,
> Are there C/C++ bindings or is there sample C/C++ code to use Xpra?
No. Some of Xpra's code is already in C though.

> If not, what might my options be?
Do you really need to use C/C++?

> My goal is to capture a window composite, encode it, and send the encoded data over the network--I'd like to do frame/window capture and encoding without touching system memory.
The X11 composite extension captures the pixels from X11 windows in
system memory, so you will need to upload it to the GPU to use NVENC.
Xpra does that for seamless servers. ("xpra start")

> It needs to happen all on the GPU and noticed Xpra seems like it could
do that with NVENC.
Xpra does zero-copy of screen pixels directly to NVENC with the shadow
server ("xpra shadow") when NVFBC is used.
In that case, the pixels of an existing X11 server are captured on the
GPU and then transferred to NVENC without using any system memory.
The downside is that this captures the whole X11 display and not
individual windows.


> Thank you!
> Suhail

More information about the shifter-users mailing list