Nominate our 2022 Qt Champions!

Qt 5 XCB tearing

  • I am running Qt 5.4.3 on a Tegra 3 with a Yocto compiled Angstrom image. Unfortunately the Tegra only has proprietary drivers and they are forcing me to use X11 for hardware acceleration. I therefore had to build Qt with XCB instead of EGLFS.

    My problem is that I am seeing tearing on some QML 2 animations on the device that are not visible on my PC. I am wondering if there is anything I can do to try and get rid of this tearing? I have read that QT_QPA_EGLFS_FORCEVSYNC might help but unfortunately I can't use EGLFS and doubt if it will be of any use.

    I have noticed that "QSGContext::initialize: stencil buffer support missing, expect rendering errors" as well as "Qt Warning: Could not find a location of the system's Compose files. Consider setting the QTCOMPOSE environment variable." come up when the application is started. Could they be related to the problem?

  • I had the same problem when using X11. I was only able to rid myself of the tearing after switching to eglfs and double buffering. AFAIK, there is no option in X11 to enable vsync or double buffer.

  • @justin1122 Thanks, but for some reason it seems like the QtCinematicExperience does not have that problem.

Log in to reply