1

Pre-requisites:

  • Gstreamer 1.16.1
  • Qt 5.15.2
  • Target Device: imx8 with Yocto

I'm trying to visualize a camera stream inside an item on one of our pages. For this purpose, we transmit the camera stream over UDP to the target device. I'm able to launch and see the stream on the target if I open it using gst-launch-1.0 command. Also am I able to launch the stream using qt-multimedia from within the app. But it is working using the autovideosink only. Using qtvideosink I don't get an error, but a grey area. Autovideosink makes the stream full screen overlapping the whole app. Apparently it is like a separate process - nothing "embedded". But, I want it to be embedded on a dedicated spot within a QML item.

I saw two ways how to do this over the www:

  1. Using Qt Multimedia and MediaPlayer/VideoOutput the qtvideosink
  2. Using the Qt Plugin from Gstreamer (https://github.com/GStreamer/gst-plugins-good/tree/1.16.1/tests/examples/qt/qmlsink, main.cpp:54 assertion error at runtime)

Which one is the way to choose? What is the difference of them? For both ways I have questions:

  1. For the Qt-Multimedia way:

    • How can I check if the qtvideosink is even available? How can I test it to be working.
    • Is there a mvp for this/ An easy test example?
  2. For the Gstreamer Plugin way:

    • Found so many different versions of this (e.g. github page and gitlab mirror do not really look the same). Which one to chose for Qt 5.15.2?
    • What binaries need to be installed? Can I check whether they are installed or not?

I feel like it is not working because binaries/ plugins are missing on my target device. However, I don't have the knowledge to prove this.

asked Aug 14, 2023 at 11:51
3
  • You can use gst-inspect to determine which gstreamer plugins are installed. Commented Aug 14, 2023 at 15:46
  • @JarMan would that list "qtvideosink" or is the binary somewhere in the dungeon of the Qt System? Commented Aug 15, 2023 at 11:40
  • Yes, I believe it should show the qtvideosink. And qmlglsink. Commented Aug 15, 2023 at 13:43

0

Know someone who can answer? Share a link to this question via email, Twitter, or Facebook.

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.