[maemo-developers] HildonRemoteTexture "tearing"/"flicker"

From: Kimmo Hämäläinen kimmo.hamalainen at nokia.com
Date: Tue Jan 12 16:30:31 EET 2010
On Tue, 2010-01-12 at 14:47 +0100, ext Javier S. Pedro wrote:
> Hi all,
> 
> I am doing some experiments on using HildonRemoteTexture from a bare
> X11/SDL app -- basically to get sgx accelerated scaling in apps that
> wouldn't otherwise use the sgx for anything else. It works, but there
> seems to be some race condition where the compositor is reading the
> shared memory area _before_ I send the damage client event to the
> remote texture X window. This of course cause visible tearing or even
> flicker if the texture is drawn while (for example) the SNES emulator
> is just in the middle of rendering any of the background layers, which
> tends to happen often depending on CPU load / framerate.

Hmm, I see that the remote texture should update on its own damage
ClientMessage, but I don't see where the normal damage handling (for
XDamage) ignores remote textures. Maybe we are handling the normal X
damage events for your window also -- that would explain if it gets
updated before you have sent the magic ClientMessage.

> Note I'm using HildonRemoteTexture instead of AnimationActor because I
> need no rotation nor any of the actor features and using H-R-T is
> slightly simpler -- no need to use any of the MIT-SHM functions. But I
> have to wonder, seeing how the H-R-T API is falling behind if it is
> going to be deprecated in the future.

It's going to be valid in Fremantle but most probably not in Harmattan,
because applications are more OpenGL-oriented there.

> Feel free to comment on whether this is a good approach or not, too.
> 
> Eero wrote:
> > hildon-desktop automatically switches to composited mode when needed.
> 
> Hopefully this includes "having a child animation actor / remote texture" :)

Please use the git HEAD of hildon-desktop, libmatchbox2 and clutter0.8
to make sure... :)

-Kimmo

> 
> Javier.
> _______________________________________________
> maemo-developers mailing list
> maemo-developers at maemo.org
> https://lists.maemo.org/mailman/listinfo/maemo-developers

More information about the maemo-developers mailing list