SwipeView animation sluggish on Odroid EGLFS platform
Unsolved
QtonPi
-
SwipeView animation is sluggish on Odroid EGLFS compared to running on X11. I cannot use X11 since there is significant visual tearing on this platform and I haven't found a way to fix that. (In EGLFS there is no tearing). Also in EGLFS, on every swipe, the following messages get printed when logging is enabled:
qt.scenegraph.general: Using sg animation driver qt.scenegraph.general: animation driver switched to vsync mode qt.scenegraph.general: animation driver switched to timer mode ...
Why is the driver switching modes? Shouldn't it stay tied to vsync? I have tried the following:
- If I set
QT_QPA_EGLFS_FORCEVSYNC
, animation becomes even more sluggish and appears jerky (as if the display were updating at 20 fps or so). The log message printed is justanimation driver switched to timer mode
printed once. It doesn't toggle betn vsync and timer, and is not emitted on every swipe. QT_QPA_EGLFS_SWAPINTERVAL
does not do anythingQML_BAD_GUI_RENDER_LOOP
does not do anything either
This post seemed relevant: https://forum.qt.io/topic/24416/qml-scenegraph-rendering-performance-on-eglfs but the solution there is what I have already tried (
FORCEVSYNC
) and it doesn't work. Is there a way to fix this? - If I set