Qt World Summit: Register Today!

QtMultimedia and gstreamer backend

  • I'm trying to use QtMultimedia in my Buildroot system.
    The documentation says:

    The minimum required version of GStreamer is 0.10.24. The 1.x series is also supported.
    To build Qt Multimedia, you need the GStreamer library, base plugins, and development files for your system. To run applications that use Qt Multimedia, you might also need to install the following GStreamer plugins: 'good', 'ugly', 'bad', ffmpeg (0.10), and libav (1.x). These additional plugins contain various codecs for audio and video decoding, as well as the necessary components for using the camera APIs. The package names for GStreamer vary between Linux distributions; try searching for gstreamer or libgstreamer in your distribution's package repository to find suitable packages.

    Some questions:

    • I need ALL base, good, ugly and bad plugins? They are a lot!
    • which are the "development" files? Just the headers?

    I installed gstreamer 1.0 and some of the plugins but I still receive the error:

    defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer"


    I checked the configure log for Qt5Multimedia and the gstreamer tests were successfull. And under /usr/lib/qt/plugins/mediaservice/ on target I find:


  • Lifetime Qt Champion


    What do you mean by some of the plugins ? And what are you trying to open with your media player ?

  • @SGaist I mean the base plugins are about 24. good and bad ones over 50 each... I selected the most common, i.e. from base:

    • audioconvert
    • audiotestsrc
    • playback
    • audioresample
    • tcp
    • typefind
    • videotestsrc
    • videoscale
    • volume
    • alsa

    It's an embedded system and I would like to install only the plugins I need. But if I DO need to install them all to have QtMultimedia working ok, I could live with that.

    I'm trying to play a standard PCM wave file.

  • Lifetime Qt Champion

    Since it's PCM and unless I'm mistaken, you could just use QAudioOuput and write the file data in there.

  • @SGaist Yes, but it's a workaround, because QAudioOutput is quite different than QMediaPlayer :) . Anyway I found the problem: libQt5OpenGL was missing: I can't find this requirement for QtMultimedia in the official documentation.

  • Lifetime Qt Champion

    Depending on your needs, QAudioOutput is rather a lightweight alternative but QMediaPlayer is indeed easier to setup and run.

    Glad you found out and thanks for sharing !