Xpra: Ticket #304: opengl rendering needs all updates to go via the textures

The current codepath for painting with rgb24/png paints directly onto the GL surface's window, but despite the draws all arriving in the right order (thanks to synchronization via the UI thread and idle_add), the GL updates overwrite the small regions rgb paints that come after it if they happen very quickly (could well be gl double buffer swap happening after our plain rgb paint).


The solution is to tell the server to send those regions as zlibbed YUV and make them go through the same code (updating the texture to paint). This requires:



Fri, 22 Mar 2013 09:37:45 GMT - Antoine Martin: attachment set

attempts to implement rgb2yuv for small regions


Fri, 22 Mar 2013 09:38:37 GMT - Antoine Martin:

The first stumbling block with the patch above is this line:

*outsize = ysize + usize + vsize + 1024;

It should be instead:

*outsize = ysize + usize + vsize;

But that crashes and I do not understand why.


Thu, 28 Mar 2013 20:11:14 GMT - Antoine Martin: status changed; resolution set

much better solution implemented in r3044


Sat, 23 Jan 2021 04:51:10 GMT - migration script:

this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/304