Upgrade gstreamer to 1.18

Hello,
I need to upgrade the gstreamer to 1.18 for my apalis imx8 module.
when listing the " opkg list" packages it showed the gstreamer packages for 1.16 only.
is there any way to install 1.18?
please note my multimedia-reference image OS version is:

ID=tdx-xwayland-rt
NAME=“TDX Wayland with XWayland RT”
VERSION=“5.4.0-devel-20211114122346+build.0 (dunfell)”
VERSION_ID=5.4.0-devel-20211114122346-build.0
PRETTY_NAME=“TDX Wayland with XWayland RT 5.4.0-devel-20211114122346+build.0 (dunfell)”

and I am using Ixora carrier board.

Dear @rama.aloufee, how are you?

To update the gstreamer version, you’d need to compile a custom image with Yocto (Build a Reference Image with Yocto Project/OpenEmbedded | Toradex Developer Center).

We just checked it on our side and it seems that there are updated recipes for having gstreamer 1.18 in Yocto Dunfell (the one used for BSP 5) OpenEmbedded Layer Index - meta-gstreamer10. Therefore, what I’d suggest you is to update the gstreamer recipes on your Yocto build according to the packages available on OpenEmbedded.

Could you please test it? We can help you update your recipes if you need this support :smiley:

Best regards,

I was facing an issue where I thought that I need to update the gstreamer version.
Now my issue is resolved with a work a round solution.
yet, In case I need to upgrade the gstreamer in the future i will compile an image with Yocto as you mentioned there.

Thank you.

Hi @rama.aloufee,

Thanks for the update. Would you mind sharing the workaround so that other people could benefit from it?

Best regards,

Well, for changing the url stream for gstreamer pipeline, you only need to NULL the pipeline state, then change the url.

No need to un-reference nor remove that pipeline, that would cause a segmentation fault.
also, do that in a separated function not in the bus sync handler function.
for the bus sync handler function you only need to determine the reason of the error MSG and set a flag to update the video stream. this flag you will use in you update_video_function

Hello @rama.aloufee ,

Thanks for sharing the solution with us. Feel free to open another tread if you have further questions.

Best regards,
Josep