RTSP / Qt QML MediaPlayer. No resume after a pause command with v.1.22.0, but works ok with v.1.16.0

Hi everyone,

I am using Qt QML MediaPlayer as a video playback client for live555 RSTP (onDemandRTSPServer) to play a H264 video and pause it, and resume the playback with simple commands from QML, MediaPlayer play() and pause().
This works fine in a Deb9 environment, it fails in a Deb12 environment
The only obvious difference for me is the gstreamer version.
Do you have any hint I could try to explore to spot the issue I have, and maybe find a workaround?
Is it possible to run gstreamer v1.16 inside Debian12, by downgrading the version?
I have some logs corresponding to GST_DEBUG #,4 in both situation, but I am unable to understand what can go wrong. Is it possible to share the logs with you guyz for a quick inspection ?

Thank you,
Regards,
Bill

which Qt version are you using? Qt5 uses gstreamer by default and Qt6 uses FFmpeg as default.

Hey Joe,

Thanks for replying to my message. I use Qt5.15.x, and yes I noticed the usage of ffmpeg for Qt6. Thank you.

Back to my subject, there are so many plugins for gstreamer, it’s a real jungle. I have no idea which package does what, and which are involved when simply playing back on demand an RTSP stream from live555 in a simple Qt QML MediaPlayer application.

Also I noticed that we use mostly v1.16 on Debian9, except for some plugins/packages. Typically I noticed an ‘rtsp’ plugin/package that had version 1.10 I believe. Not sure which version it is on Debian12. There are also Qt plugins in relation with gstreame installed, I don’t know if they are involved or not in my described use case.

What could be the best approach for me to be able to compare what is going on both my deb12 and deb9 environments to understand where the defect relies?

Also does anyone know if it possible to know which are the necessary plugins/packages for my use case, can I get this information anywhere in some traces? On the server side (live555) ? On the client side (the media player)? I am not familiar with gstreamer, I don’t even know if there are front end tools that could be helpful to spot the problem for example?

Let’s imagine I identify a single package playing the main role, and it has a version 1.10 for example in my deb9 environment, could I have it installed on my deb12 to workaround my issue?

Thanks,
Bill

from command line run the following pipeline

gst-launch-1.0 playbin uri=rtsp://<your-rtsp-url>
or
gst-launch-1.0 playbin3 uri=rtsp://<your-rtsp-url>

if you can not run it, some plugins are missing. I guess Qt might use playbin internally as well.

For debug, you can try

GST_DEBUG=*:3 gst-launch-1.0 playbin uri=rtsp://<your-rtsp-url>
or
GST_DEBUG=*:3 gst-launch-1.0 playbin3 uri=rtsp://<your-rtsp-url>

or export GST_DEBUG=3
from here:
https://gstreamer.freedesktop.org/documentation/tutorials/basic/debugging-tools.html?gi-language=c