Problem when using imxcompositor_g2d with i.MX8QM apalis

Hi all,
I’m running an application with the i.MX8QM apalis and Ixora Board and have used gstreamer pipline for display CSI Camera that using the imxcompositor_g2d


root@apalis-imx8-06506314:~# cat /etc/os-release 
ID=tdx-xwayland
NAME="TDX Wayland with XWayland"
VERSION="5.7.0-devel-20220905134958+build.0 (dunfell)"
VERSION_ID=5.7.0-devel-20220905134958-build.0
PRETTY_NAME="TDX Wayland with XWayland 5.7.0-devel-20220905134958+build.0 (dunfell)"
DISTRO_CODENAME="dunfell"

I want to use a pipeline using imxcompositor_g2d and multifilesrc png file but faced an error (multifilesrc and imxcompositor_g2d)
bellow is comparing the following two pipelines Pipe#1 have run without error:

Pipe#1

root@apalis-imx8:~#gst-launch-1.0 multifilesrc location=“/home/root/feeds-st.png” caps=“image/png,framerate=1/1” ! pngdec ! imagefreeze ! videoconvert ! waylandsink -v

output

Pipe#2


root@apalis-imx8:~# gst-launch-1.0 imxcompositor_g2d name=comp sink_0::width=460 sink_0::height=288 ! waylandsink multifilesrc location="/hroot@apalis-imx8-06506314:~# gst-launch-1.0 imxcompositor_g2d name=comp sink_0::width=460 sink_0::height=288 sink_0::xpos=160 sink_0::ypos=120  ! waylandsink multifilesrc location="/home/root/feeds-st.png"  caps="image/png,framerate=1/1"  ! pngdec ! imagefreeze  ! videoconvert  ! comp.sink_0 -v
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
/GstPipeline:pipeline0/GstMultiFileSrc:multifilesrc0.GstPad:src: caps = image/png, width=(int)64, height=(int)64, framerate=(fraction)1/1
/GstPipeline:pipeline0/GstPngDec:pngdec0.GstPad:sink: caps = image/png, width=(int)64, height=(int)64, framerate=(fraction)1/1
/GstPipeline:pipeline0/GstPngDec:pngdec0.GstPad:src: caps = video/x-raw, format=(string)RGBA, width=(int)25, height=(int)25, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1, colorimetry=(string)sRGB, framerate=(fraction)1/1
ERROR: from element /GstPipeline:pipeline0/GstMultiFileSrc:multifilesrc0: Internal data stream error.
Additional debug info:
../git/libs/gst/base/gstbasesrc.c(3072): gst_base_src_loop (): /GstPipeline:pipeline0/GstMultiFileSrc:multifilesrc0:
streaming stopped, reason not-negotiated (-4)
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...

feeds-st.png is a 25x25 pix image.
Maybe there is conflict configuration between tow pipeline!! What should I do?Can anyone guide Me?!
Sure, I will wait for your feedback.
Best regards,

Hello @hhami ,
I have tried to reproduce your issue with one of the default images that the Reference Multimedia image has, and I didn’t experience any problem:

root@apalis-imx8-06452597:~# gst-launch-1.0 imxcompositor_g2d name=comp sink_0::width=460 sink_0::height=288 sink_0::xpos=160 sink_0::ypos=120  ! waylandsink multifilesrc location="/home/root/pictures/blue.png"  caps="image/png,framerate=1/1"  ! pngdec ! imagefreeze  ! videoconvert  ! comp.sink_0 -v
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
/GstPipeline:pipeline0/GstMultiFileSrc:multifilesrc0.GstPad:src: caps = image/png, width=(int)64, height=(int)64, framerate=(fraction)1/1
/GstPipeline:pipeline0/GstPngDec:pngdec0.GstPad:sink: caps = image/png, width=(int)64, height=(int)64, framerate=(fraction)1/1
/GstPipeline:pipeline0/GstPngDec:pngdec0.GstPad:src: caps = video/x-raw, format=(string)RGB, width=(int)1123, height=(int)794, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1, colorimetry=(string)sRGB, framerate=(fraction)1/1
/GstPipeline:pipeline0/GstImageFreeze:imagefreeze0.GstPad:src: caps = video/x-raw, format=(string)RGB, width=(int)1123, height=(int)794, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1, colorimetry=(string)sRGB, framerate=(fraction)25/1
/GstPipeline:pipeline0/GstVideoConvert:videoconvert0.GstPad:src: caps = video/x-raw, width=(int)1123, height=(int)794, framerate=(fraction)25/1, format=(string)RGBx, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1
/GstPipeline:pipeline0/imxcompositor_g2d:comp.GstImxCompositorPad:sink_0: caps = video/x-raw, width=(int)1123, height=(int)794, framerate=(fraction)25/1, format=(string)RGBx, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1
/GstPipeline:pipeline0/GstVideoConvert:videoconvert0.GstPad:sink: caps = video/x-raw, format=(string)RGB, width=(int)1123, height=(int)794, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1, colorimetry=(string)sRGB, framerate=(fraction)25/1
/GstPipeline:pipeline0/GstImageFreeze:imagefreeze0.GstPad:sink: caps = video/x-raw, format=(string)RGB, width=(int)1123, height=(int)794, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1, colorimetry=(string)sRGB, framerate=(fraction)1/1
/GstPipeline:pipeline0/imxcompositor_g2d:comp.GstAggregatorPad:src: caps = video/x-raw, format=(string)BGRx, width=(int)620, height=(int)408, interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1, colorimetry=(string)sRGB, framerate=(fraction)25/1
/GstPipeline:pipeline0/GstWaylandSink:waylandsink0.GstPad:sink: caps = video/x-raw, format=(string)BGRx, width=(int)620, height=(int)408, interlace-mode=(string)progressive, pixel-aspect-ratio=(fraction)1/1, colorimetry=(string)sRGB, framerate=(fraction)25/1
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock

That’s the result I get:

Could you try and check if you get the same result?

Best regards,
Josep

Hello @hhami ,
Do you have any updates on this topic?

Best regards,
Josep