OpenGL ES engine in X11 OS
Hello,
I am using toradex imx6q apalis board, and I was able to install angstrom-lxde-image which is based on X11 backend. So, also I could use fbdev engine to run our UI program in the OS, but the problem is that its frame rate is about ~5 fps (TOO SLOW!).
With the yocto project, I was able to install console-tdx-image with eglinfo-fb without eglinfo-x11. So, in this case, I was using openGLES engine to run. And it showed a good frame rate.
So, my question is that 1) is there a way to use fbdev with faster framerate? can we accelerate it more (like with vivante gpu)? 2) Is there a way to use opengGL ES engine in the angstrom-lxde-image which is based on X11 backend?
When I try to run the program in angstrom-lxde-image, it says
ERROR [0.245]:Unable to load a renderer
ERROR [0.245]:Unable to Load Manager Plugins: name=/media/sda1/OIS1D_D1/OIS1D_D1.gapp errno=0
Failed to run engine using file: /media/sda1/OIS1D_D1/OIS1D_D1.gapp
Thank you in advance!
Comments
Hello,
The reason for those errors is because the Storyboard for Yocto Linux runtime is built using the fbdev (Framebuffer) driver backend for OpenGL ES 2.0 and the BSP likely does not have this support and may be using an X11 or Wayland backend. The BSP will need to be rebuilt to remove the other backends and add support for fbdev.
The following is a sample local.conf file used with iMX6 BSPs to provide the needed libs to run the OpenGL ES 2.0 sbengine runtime correctly.
MACHINE ??= '??'
DISTRO ?= 'fsl-imx-fb'
PACKAGE_CLASSES ?= "package_rpm"
EXTRA_IMAGE_FEATURES = "debug-tweaks"
USER_CLASSES ?= "buildstats image-mklibs"
PATCHRESOLVE = "noop"
BB_DISKMON_DIRS = "\
STOPTASKS,${TMPDIR},1G,100K \
STOPTASKS,${DL_DIR},1G,100K \
STOPTASKS,${SSTATE_DIR},1G,100K \
STOPTASKS,/tmp,100M,100K \
ABORT,${TMPDIR},100M,1K \
ABORT,${DL_DIR},100M,1K \
ABORT,${SSTATE_DIR},100M,1K \
ABORT,/tmp,10M,1K"
PACKAGECONFIG_append_pn-qemu-native = " sdl"
PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl"
ASSUME_PROVIDED += "libsdl-native"
CONF_VERSION = "1"
DL_DIR ?= "${BSPDIR}/downloads/"
ACCEPT_FSL_EULA = "1"
CORE_IMAGE_EXTRA_INSTALL = " kernel-module-imx-gpu-viv fsl-gpu-sdk packagegroup-fsl-tools-gpu libinput imx-gpu-viv mtdev tslib dropbear gdb imx-gst1.0-plugin gstreamer gstreamer1.0 gstreamer1.0-meta-base gstreamer1.0-plugins-bad gstreamer1.0-plugins-base gstreamer1.0-plugins-good gst-plugins-base imx-gst1.0-plugin "
Please note that if a particular DISTRO has X11 or Wayland included, it will need to be removed by modifying DISTRO_FEATURES. To rebuild the yocto image with framebuffer driver back-end (not X11 or Wayland), the following line needs to be present in <yocto_build_dir>/conf/local.conf
DISTRO_FEATURES_remove = " x11 wayland "
Thanks,
-Jamie
Please sign in to leave a comment.