Hi,
I've been battling with this for a few days. Essentially we are building a gstreamer application that captures frames from a camera, does some overlays on them, encodes to H264 and then saves to a file. Got the pipeline working using appsrc and appsink gstreamer elements. Fundamentally, my pipeline is like this:
Read NV12 frames from file (replaces the camera for now) -> IMXVideoConvert -- (RGBA) --> appsink ---- frame overlays ----> IMXVideoConvert --- NV12 ---> V4L2H264Encoder --> File
The problem is with caps negotiations on the second IMXVideConvert, seems like it's impossible to get it to output the NV12 format which is required by the HW H264 encoder. It cannot output NV12 format despite it being listed in the element's SRC capabilities. Any attempt to convert to NV12 fails with 'transform could not transform... in anything we support'. However, NV12 works as an input format, and conversion to other formats (BGRx, UYVY passthrough) works correctly.
Basic pipeline to test with:
gst-launch-1.0 videotestsrc num-buffers=5 ! \ video/x-raw,format=UYVY,width=320,height=240 ! \ imxvideoconvert_g2d ! \ video/x-raw,format=NV12 ! \ fakesink
OS info:
root@apalis-imx8-06959030:~/tests# cat /etc/os-release
ID=tdx-xwayland
NAME="TDX Wayland with XWayland"
VERSION="6.8.3-devel-20250930110137+build.0 (kirkstone)"
VERSION_ID=6.8.3-devel-20250930110137-build.0
PRETTY_NAME="TDX Wayland with XWayland 6.8.3-devel-20250930110137+build.0 (kirkstone)"
DISTRO_CODENAME="kirkstone"
Let me know if there's any more data I can help with. This is stopping our PoC from being completed at this point I'm afraid.
Hi @AlexxS,
In your debug log I can see the warnings that the imxvideoconvert is throwing, but I'm wondering if there are lower level logs that could help fix the issue. Could you run your pipeline with this environment variable and then share the resulting debug log?
GST_DEBUG=*imxvideoconvert*:DEBUG
Regards,
Francis Guindon
Embedded SW Engineer at RidgeRun
Contact us: support@ridgerun.com
Developers wiki: https://developer.ridgerun.com/
Website: http://www.ridgerun.com/
(y)