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. How to skip compilation of Qt5MultimediaGstTools?
Forum Updated to NodeBB v4.3 + New Features

How to skip compilation of Qt5MultimediaGstTools?

Scheduled Pinned Locked Moved Unsolved General and Desktop
6 Posts 2 Posters 691 Views 1 Watching
  • 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.
  • N Offline
    N Offline
    Nan Feng
    wrote on last edited by
    #1

    Hi, I recently compiled Qt 5.15.5 on Linux. Qt's multimedia on Linux relies on GStreamer. But after installing GStreamer-related dependencies and compiling Qt, libQtMultimediaGstTools.so will be generated. Is there a configuration to not compile this shared library? Because I see warnings in the header files of this library saying that this library is not part of the Qt API, and some people say that this library has some problems and can't be used normally. For whatever reason, is there a way to skip this library when the multimedia functionality is guaranteed to work?

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

      Hi,

      It's a helper library for the GStreamer backend. The warning states that it's not part of the public API and thus can be changed and even removed at any time. This is the same warning that you will see in all the headers from the private API part of Qt and nothing to worry about. It is what allows Qt to provide its API and ABI guaranties while allowing the implementation to be changed and fixed.

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

      N 1 Reply Last reply
      0
      • SGaistS SGaist

        Hi,

        It's a helper library for the GStreamer backend. The warning states that it's not part of the public API and thus can be changed and even removed at any time. This is the same warning that you will see in all the headers from the private API part of Qt and nothing to worry about. It is what allows Qt to provide its API and ABI guaranties while allowing the implementation to be changed and fixed.

        N Offline
        N Offline
        Nan Feng
        wrote on last edited by Nan Feng
        #3

        @SGaist Ah this. . . So this is ah. Thank you for taking the time to answer my doubts. I still have a few small questions.

        1. So it means that you want the multimedia function to be normal [play music and video, etc.] This library cannot be removed, right?

        2. I saw a lot of functions in the header file of this library, such as play, pause and some other APIs similar to the player. So can this library also be used to play music and videos?

        3. I have also compiled this library on Windows platform, can it also play music and video? I didn't see any help documentation about this library API in QDoc Central. . . why is that?

        4. If you use this library on Windows platform, you should rely on GStreamer related binary files, such as: gstreamer-1.0.dll. .

        5. If available, is it available in Qml? Is there an exact type corresponding to Qml?

        Looking forward to your reply!

        1 Reply Last reply
        0
        • SGaistS Offline
          SGaistS Offline
          SGaist
          Lifetime Qt Champion
          wrote on last edited by
          #4
          1. using the GStreamer backend, yes, you need that library (it's gone in Qt 6 though)

          2. The library implements the QtMultimedia API on top of GStreamer

          3. AFAIK, it should provide the same level of support. There is no documentation provided because it's a internal library and shall be considered an implementation detail that can be changed / removed at any time as the warning in the headers says. It is used for the corresponding platform plugin and nothing more.

          4. Yes, the same goes for Linux where you need to have the GStreamer packages installed on your system.

          5. This is one of several backends. Qt provides the Qt Multimedia widgets and Qt Quick items to build your application. Whether it uses the Windows or GStreamer backend has no influence on the widgets or Qt Quick item you use to build your GUI.

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

          N 1 Reply Last reply
          0
          • SGaistS SGaist
            1. using the GStreamer backend, yes, you need that library (it's gone in Qt 6 though)

            2. The library implements the QtMultimedia API on top of GStreamer

            3. AFAIK, it should provide the same level of support. There is no documentation provided because it's a internal library and shall be considered an implementation detail that can be changed / removed at any time as the warning in the headers says. It is used for the corresponding platform plugin and nothing more.

            4. Yes, the same goes for Linux where you need to have the GStreamer packages installed on your system.

            5. This is one of several backends. Qt provides the Qt Multimedia widgets and Qt Quick items to build your application. Whether it uses the Windows or GStreamer backend has no influence on the widgets or Qt Quick item you use to build your GUI.

            N Offline
            N Offline
            Nan Feng
            wrote on last edited by
            #5

            @SGaist Then in Windows Qt implements the Multimedia function by encapsulating the DirectShow interface. This should be the default. So if I use Qt with GStreamer enabled on the Windows platform, how can I make the multimedia functions use GStreamer instead of the default DirectShow?

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

              The simple way is to move the other plugins from your installation into a different folder.

              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