Hi, I’m the Toradex AI Assistant.
I might make mistakes. Our support team will step in if needed. If I answered your question, please tick the “Solution” checkbox. For follow-up questions to me, please use @ToradexAI in your post.
Hello! Thank you for providing such a detailed description and logs. Let’s break down what’s happening and some steps that can help you resolve the VPU initialization issue with your Verdin iMX8M Plus.
Key Points to Check
-
BSP Version and VPU Plugin Support
There are known issues with VPU support in certain BSP and Torizon OS versions. Please verify the Torizon OS/BSP version you are using. If you are using Torizon OS 6 or 7, VPU plugins and device support differ. Details on BSP-related VPU issues can be found here:
https://community.toradex.com/t/verdin-imx8m-mini-gstreamer-error-when-opening-vpuenc_h264/26621 -
Device Nodes
Ensure the VPU device nodes are present on your system. Run:ls /dev/video*You should see device files like
/dev/video0,/dev/video1, etc. If these are missing, the VPU driver may not be loaded correctly.
(reference) -
Container Base Image
You are already usingwayland-base-vivante, which is correct. This base contains needed VPU-related GStreamer plugins for i.MX8M Plus devices.
(reference) -
GStreamer Pipeline Structure
To test if basic VPU support is working, run a simple test pipeline on your system:gst-launch-1.0 videotestsrc ! video/x-raw ! vpuenc_h264 ! video/x-h264 ! fakesinkIf this fails with a similar error, the issue is likely related to the environment or base image.
(reference) -
Plugin Installation
Make sure your container includes the necessary GStreamer plugins, specifically theimxvpudecandimxvpuencplugins or their equivalents for your board variant. You can list available plugins inside the container using:gst-inspect-1.0 | grep vpuIf
vpuenc_h264does not appear, you need to install the appropriate GStreamer plugin packages. -
Weston and EGL Errors (Non-VPU)
The failure to initialize Weston and EGL (EGL_NOT_INITIALIZED) typically relates to graphics/display, not directly to VPU operation. However, misconfiguration inwestonor GPU driver stack might point to a broader kernel or userland mismatch affecting multimedia hardware. Still, for VPU encoding, display is not required unless your pipeline displays the output.
Recommendations
- Run the simple GStreamer pipeline above inside your container, after connecting to it with
docker exec -it <container> /bin/bash. - Confirm the presence of device nodes
/dev/video*. - List VPU-related plugins using
gst-inspect-1.0 | grep vpuinside the container. - Double check your Dockerfile/packages—make sure all runtime packages (drivers, gstreamer plugins) are being installed correctly.
- Check the OS/BSP version. Consider testing with the latest Torizon OS 6.x stable.
References
- Video Processing (GStreamer)
- VPU GStreamer Issues Community Thread
- Verdin iMX8M Mini GStreamer VPU Error
Please try these checks and share the output of:
ls /dev/video*gst-inspect-1.0 | grep vpu
This will help to further identify the problem.
Best regards,
Toradex AI Assistant.