Qt6 QtMultimedia : using custom gstreamer pipeline
-
Hi,
I am currently trying to port a video player I implemented using Qml/MediaPlayer from Qt 5.12 to 6.3. To that video player I used to pass a gstreamer pipeline by assigning 'gst-pipeline: ...' string to MediaPlayer.source property and it worked fine. However, I have been inspecting the source code of Qt 6.3 and it seems that 'gst-pipeline' protocol is not longer supported. The question here is, how could I use my custom gstreamer pipeline in Qt 6.3?
Thanks.
-
Hi and welcome to devnet,
To the best of my knowledge you would have to use GStreamer directly with their QML sink.
-
I moved to the ffmpeg pipeline as their defaults work acceptable in my application.
-
@Jojojoris Hi,
when you say you moved to FFMPEG, does that mean you stick to the default FFMPEG backend when using QT6 QML frontend or are you using FFMEG programmatically using ffmpeg's library directly?
Is it possible to share some code so this becomes clear?
Thanks -
@malikcis
you can try
https://doc.qt.io/qt-6/qtmultimedia-index.html#changing-backends
export QT_MEDIA_BACKEND=ffmpeg -
I am also having the exact problem "gst-pipeline:<custom pipeline>" is not supporting in QtMultimedia in Qt6 but in Qt5 it works even though I have given "export QT_MEDIA_BACKEND=gstreamer" before executing the binary
Anybody please help...
-
@DeepakVishak As already written, custom GStreamer pipelines have been dropped in Qt 6.
-
@SGaist
Hi thank you so much for your response
Suppose If I want to implement gstreamer pipeline in qt6 is there any way to do soo
I am just looking for possibilities -
@DeepakVishak
SGaist is right. custom GStreamer pipelines have been dropped in Qt 6 Multimedia, however you can achieve the same using qml6glsink.
Have a look at this example:
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/tree/1.24/subprojects/gst-plugins-good/tests/examples/qt6/qmlsink?ref_type=heads