Migration BSP5 to BSP7 Broke build for imx-gst1.0-plugin with COMPATIBLE_MACHINE Issue

Hello

We have been using BSP5 with Colibri-imx7d-emmc for a long while now and in order to support newer HW (wifi ecc) I needed to test the newer yocto release. However I had problem with
“imx-gst1.0-plugin”

repo init -u git://git.toradex.com/toradex-manifest.git -b scarthgap-7.x.y -m tdxref/default.xml

MACHINE ?= "colibri-imx7-emmc"

IMAGE_INSTALL:append = " imx-gst1.0-plugin"

bitbake tdx-reference-multimedia-image

ERROR: Nothing RPROVIDES 'imx-gst1.0-plugin' (but /media/data/yocto-imx7d-scarthgap/build/../layers/meta-toradex-demos/recipes-images/images/tdx-reference-multimedia-image.bb RDEPENDS on or otherwise requires it)
imx-gst1.0-plugin was skipped: incompatible with machine colibri-imx7-emmc (not in COMPATIBLE_MACHINE)
NOTE: Runtime target 'imx-gst1.0-plugin' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['imx-gst1.0-plugin']
ERROR: Required build target 'tdx-reference-multimedia-image' has no buildable providers.
Missing or unbuildable dependency chain was: ['tdx-reference-multimedia-image', 'imx-gst1.0-plugin']

This was building fine with

repo init -u git://git.toradex.com/toradex-manifest.git -b dunfell-5.x.y -m tdxref/default.xml

When I add “mx7” as COMPATIBLE_MACHINE with a “imx-gst1.0-plugin_%.bbappend” file this time it gets blocked by COMPATIBLE_HOST

ERROR: Nothing RPROVIDES 'imx-gst1.0-plugin' (but /media/data/yocto-imx7d-scarthgap/build/../layers/meta-toradex-demos/recipes-images/images/tdx-reference-multimedia-image.bb RDEPENDS on or otherwise requires it)
imx-gst1.0-plugin was skipped: incompatible with host arm-tdx-linux-gnueabi (not in COMPATIBLE_HOST)
NOTE: Runtime target 'imx-gst1.0-plugin' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['imx-gst1.0-plugin']
ERROR: Required build target 'tdx-reference-multimedia-image' has no buildable providers.
Missing or unbuildable dependency chain was: ['tdx-reference-multimedia-image', 'imx-gst1.0-plugin']

We need this package to visualize and record videos with a USB Camera

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.

Did you like my answer? :+1: :-1:


Hello,

Thank you for providing detailed information about your BSP migration and the errors you’re encountering.

Summary of the Issue
You’re building for Colibri iMX7D eMMC on BSP 7.x.y (Yocto Scarthgap) and observing that the imx-gst1.0-plugin is not available for your machine, resulting in build failures. This problem did not occur on BSP 5.x.y (Yocto Dunfell).

Explanation
The i.MX7 SoC, including the Colibri iMX7D, does not feature dedicated hardware acceleration for multimedia (video decode/encode). On BSP 5 and earlier, it was sometimes possible to select the imx-gst1.0-plugin, but it didn’t provide significant advantages or hardware support for this module.

In BSP 7.x.y, the BSP and meta-multimedia have been refactored so that i.MX7 and similar modules do not include or require imx-gst1.0-plugin. This is why you see the error regarding COMPATIBLE_MACHINE and COMPATIBLE_HOST. Even if you manually adjust compatibility, the actual plugin does not provide any extra support on i.MX7 and is meant for i.MX6/8/8M, where hardware acceleration is present.

How to Use Video (e.g., USB Camera) on iMX7 with BSP 7.x.y
You can visualize and record videos using a USB UVC camera with standard GStreamer plugins included by default in the BSP multimedia images, even without imx-gst1.0-plugin. The required software stack is already present:

  1. The GStreamer core and “good” plugins (e.g., v4l2src, videoconvert, autovideosink).
  2. V4L2 (Video4Linux2) kernel drivers.

Typical GStreamer Pipeline Examples:

To view video from a UVC USB camera:

gst-launch-1.0 v4l2src device=/dev/video0 ! videoconvert ! autovideosink

To record video:

gst-launch-1.0 v4l2src device=/dev/video0 ! videoconvert ! x264enc ! mp4mux ! filesink location=video.mp4

Next Steps:

  • Remove imx-gst1.0-plugin from your image configuration for Colibri iMX7.
  • If you want to ensure a full multimedia experience, use the Reference Multimedia Image (tdx-reference-multimedia-image), which includes all commonly used GStreamer plugins.

For more details, see:

Summary:

  • The imx-gst1.0-plugin is intentionally not available for Colibri iMX7 on BSP 7.x.y.
  • Standard GStreamer and V4L2 support USB cameras fully on iMX7.
  • Use these pipelines to work with video streams.

Let me know if you need example pipelines for your specific use-case!

Best regards,
Toradex AI Assistant

1 Like