Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Mobile and Embedded
  4. EGLFS frame jitter issue in panel with unusual aspect ratio.
Forum Updated to NodeBB v4.3 + New Features

EGLFS frame jitter issue in panel with unusual aspect ratio.

Scheduled Pinned Locked Moved Unsolved Mobile and Embedded
eglfsaspect ratioframebufferembedded qtstm32
1 Posts 1 Posters 415 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • R Offline
    R Offline
    reliq-bot
    wrote on last edited by reliq-bot
    #1

    Hi there,

    Last couple of weeks I am trying to debug a rendering issue between eglfs and an unusual aspect ratio. I have a 1920x515@59.6Hz panel. My linux image has Qt5, EGLFS and EGL support. Trying with a 2d painter example I get the following result (video): To my understanding it looks like frame jitter/scrumbling.
    All QtQuick examples have the same behaviour but openGL examples (like the hellogl2) will work with no issues.

    I attempted to debug the issue in the following ways:

    • For start I tried the same linux image with a different display (480x800@60Hz) and no issues there
    • Then I tried the same panel into a linux image with weston-wayland support and again all good.
    • I tried to set all related environment variable with no success: QT_QPA_FORCEVSYNC, QT_QPA_FORCE888, QT_QPA_ALWAYS_SET_MODE, custom KMS configs etc.
    • I also attempted to change the panel timings to a second available mode (48.08Hz) this made the issue less visible but still quite apparent.
    • Observing the eglfs debug log I could not see any issues (log below)
    QML debugging is enabled. Only use this in a safe environment.
    Failed to move cursor on screen DSI1: -14
    Failed to move cursor on screen DSI1: -14
    Shmem has been moved to thread
    shmemThread has started
    Created context for format QSurfaceFormat(version 2.0, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize -1, stencilBufferSize 8, samples -1, swapBehavior QSurfaceFormat::DoubleBuffer, swapInterval 1, colorSpace QSurfaceFormat::DefaultColorSpace, profile  QSurfaceFormat::NoProfile) with config:
    	EGL_BUFFER_SIZE: 24
    	EGL_ALPHA_SIZE: 0
    	EGL_BLUE_SIZE: 8
    	EGL_GREEN_SIZE: 8
    	EGL_RED_SIZE: 8
    	EGL_DEPTH_SIZE: 24
    	EGL_STENCIL_SIZE: 8
    	EGL_CONFIG_CAVEAT: 12344
    	EGL_CONFIG_ID: 15
    	EGL_LEVEL: 0
    	EGL_MAX_PBUFFER_HEIGHT: 8064
    	EGL_MAX_PBUFFER_PIXELS: 65028096
    	EGL_MAX_PBUFFER_WIDTH: 8064
    	EGL_NATIVE_RENDERABLE: 1
    	EGL_NATIVE_VISUAL_ID: 875713112
    	EGL_NATIVE_VISUAL_TYPE: 32
    	EGL_SAMPLES: 0
    	EGL_SAMPLE_BUFFERS: 0
    	EGL_SURFACE_TYPE: 1287
    	EGL_TRANSPARENT_TYPE: 12344
    	EGL_TRANSPARENT_BLUE_VALUE: -1
    	EGL_TRANSPARENT_GREEN_VALUE: -1
    	EGL_TRANSPARENT_RED_VALUE: -1
    	EGL_BIND_TO_TEXTURE_RGB: 1
    	EGL_BIND_TO_TEXTURE_RGBA: 1
    	EGL_MIN_SWAP_INTERVAL: 1
    	EGL_MAX_SWAP_INTERVAL: 60
    

    Double checking the panel mode I could also see no obvious issues besides the unusual aspect ratio and framerate

    4      33      connected       DSI-1           309x83          1       33
      modes:
            index name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot
      #0 1920x515 48.08 1920 1980 2000 2080 515 525 560 565 56500 flags: nhsync, nvsync; type: preferred, driver
      props:
            1 EDID:
                    flags: immutable blob
                    blobs:
    
                    value:
            2 DPMS:
                    flags: enum
                    enums: On=0 Standby=1 Suspend=2 Off=3
                    value: 0
            5 link-status:
                    flags: enum
                    enums: Good=0 Bad=1
                    value: 0
            6 non-desktop:
                    flags: immutable range
                    values: 0 1
                    value: 0
            4 TILE:
                    flags: immutable blob
                    blobs:
    

    At this point I could not find any other pointers to investigate the issue.

    Any ideas will be highly appreciated!

    All the best,
    Kyr.

    1 Reply Last reply
    0

    • Login

    • Login or register to search.
    • First post
      Last post
    0
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Get Qt Extensions
    • Unsolved