Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. GStreamer configuration
Forum Update on Monday, May 27th 2025

GStreamer configuration

Scheduled Pinned Locked Moved Unsolved General and Desktop
gstreamerqt multimedia
4 Posts 2 Posters 2.3k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • mrFicveM Offline
    mrFicveM Offline
    mrFicve
    wrote on last edited by
    #1

    Hi everyone.

    I'm working on a QML/C++ app that is deployed to Linux. I'm using a Video QML component to play streaming video which uses GStreamer v. 1.x as the backend.

    I want to be able to configure the GStreamer backend, specifically by setting properties on the playbin gstelement that is created in QGstreamerPlayerSession in QT Multimedia. The way I achieve this now is by patching qgstreamerplayersession.cpp, enabling me to set the properties in the constructor of QGstreamerPlayerSession.

    Do you have any ideas of a better/cleaner way to do this without patching Qt Multimedia?

    1 Reply Last reply
    0
    • SGaistS Offline
      SGaistS Offline
      SGaist
      Lifetime Qt Champion
      wrote on last edited by
      #2

      Hi and welcome to devnet,

      AFAIK, no you can't without patching QtMultimedia. What properties do you need to modify ? Must it be done a construction time ?

      If you need to manipulate the GStreamer pipeline the QtGstreamer module might be an interesting alternative.

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      1 Reply Last reply
      0
      • mrFicveM Offline
        mrFicveM Offline
        mrFicve
        wrote on last edited by
        #3

        Thank you.

        I've added the following lines to the QGstreamerPlayerSession constructor:

        flags |= GST_PLAY_FLAG_BUFFERING;
        g_object_set(G_OBJECT(m_playbin), "buffer-size", 5000000, NULL);
        

        I'm not sure that it has to be done at construction but maybe just before actually playing something. But I don't see a way for me to get access to the m_playbin instance from outside code.

        QtGStreamer looks like a nice alternative, but I would have to integrate it with QML by myself? I also prefer to be working with vanilla Qt.

        1 Reply Last reply
        0
        • SGaistS Offline
          SGaistS Offline
          SGaist
          Lifetime Qt Champion
          wrote on last edited by
          #4

          Indeed, you can't do it without modifying Qt even if you add a control to the plugin to modify that parameter.

          QtGstreamer provides a QML sink so you don't have to implement it.

          Interested in AI ? www.idiap.ch
          Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

          1 Reply Last reply
          0

          • Login

          • Login or register to search.
          • First post
            Last post
          0
          • Categories
          • Recent
          • Tags
          • Popular
          • Users
          • Groups
          • Search
          • Get Qt Extensions
          • Unsolved