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 with QT6
QtWS25 Last Chance

GStreamer with QT6

Scheduled Pinned Locked Moved Unsolved General and Desktop
gstreamergstreamer1.0gst
24 Posts 4 Posters 3.4k 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.
  • J Offline
    J Offline
    Joe von Habsburg
    wrote on last edited by
    #1

    I want to add gstreamer to my qt6 cmake project. How can I add it? I could not.

    1 Reply Last reply
    0
    • JoeCFDJ Offline
      JoeCFDJ Offline
      JoeCFD
      wrote on last edited by
      #2

      Linux or Windows?

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

        Hi,

        Beside the platform as requested by @JoeCFD, do you mean you want to use the QtMultimedia backend or use GStreamer explicitly in your code ?

        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
        • JoeCFDJ JoeCFD

          Linux or Windows?

          J Offline
          J Offline
          Joe von Habsburg
          wrote on last edited by
          #4

          @JoeCFD said in GStreamer with QT6:

          Linux or Windows?

          for windows.

          @SGaist said in GStreamer with QT6:

          QtMultimedia backend or use GStreamer explicitly in your code ?

          when I use QtMultimedia rtsp stream is lagging or freezing. but If I use gstream there is a no problem. How can I implement my code or how can I watch stream like gstream quality ?

          1 Reply Last reply
          0
          • JoeCFDJ Offline
            JoeCFDJ Offline
            JoeCFD
            wrote on last edited by JoeCFD
            #5

            I think pkg can be applied in Windows as well. Try the following example

            find_package( PkgConfig REQUIRED )
            pkg_search_module( GSTREAMER REQUIRED IMPORTED_TARGET gstreamer-1.0 >= 1.22 )
            pkg_search_module( GSTREAMER-VIDEO REQUIRED IMPORTED_TARGET gstreamer-video-1.0 >= 1.22 )
            target_link_libraries( ${PROJECT_NAME} PkgConfig::GSTREAMER
            PkgConfig::GSTREAMER-VIDEO )

            The path in the pkg files of gstreamer might not be right. However, it can be changed in all pkg files. I guess relative path is good enough and works for me on Linux. You need to figure out how to set pkg path on Windows.

            J 1 Reply Last reply
            0
            • JoeCFDJ JoeCFD

              I think pkg can be applied in Windows as well. Try the following example

              find_package( PkgConfig REQUIRED )
              pkg_search_module( GSTREAMER REQUIRED IMPORTED_TARGET gstreamer-1.0 >= 1.22 )
              pkg_search_module( GSTREAMER-VIDEO REQUIRED IMPORTED_TARGET gstreamer-video-1.0 >= 1.22 )
              target_link_libraries( ${PROJECT_NAME} PkgConfig::GSTREAMER
              PkgConfig::GSTREAMER-VIDEO )

              The path in the pkg files of gstreamer might not be right. However, it can be changed in all pkg files. I guess relative path is good enough and works for me on Linux. You need to figure out how to set pkg path on Windows.

              J Offline
              J Offline
              Joe von Habsburg
              wrote on last edited by Joe von Habsburg
              #6

              @JoeCFD said in GStreamer with QT6:

              pkg_search_module(

              C:\Users\X\Desktop\XX\XXX\CMakeLists.txt:13: error: A required package was not found

              Call stack:
              C:\Users\X\Desktop\XX\XXX\CMakeLists.txt:13 (pkg_check_modules)
              C:/Qt/Tools/CMake_64/share/cmake-3.27/Modules/FindPkgConfig.cmake:829 (_pkg_check_modules_internal)
              C:/Qt/Tools/CMake_64/share/cmake-3.27/Modules/FindPkgConfig.cmake:607 (message)

              2b49ad4e-ac71-40f5-b1be-35fa9d3b91a1-image.png

              7a38fc86-8c58-4454-bd92-f6e2fa88e774-image.png

              1 Reply Last reply
              0
              • J Offline
                J Offline
                Joe von Habsburg
                wrote on last edited by
                #7

                Call stack:
                C:\Users\X\Desktop\XX\XXX\CMakeLists.txt:13: error: None of the required 'gstreamer-1.0' found

                C:\Users\X\Desktop\XX\XXX\CMakeLists.txt:14: error: None of the required 'gstreamer-video-1.0' found

                JoeCFDJ 1 Reply Last reply
                0
                • J Joe von Habsburg

                  Call stack:
                  C:\Users\X\Desktop\XX\XXX\CMakeLists.txt:13: error: None of the required 'gstreamer-1.0' found

                  C:\Users\X\Desktop\XX\XXX\CMakeLists.txt:14: error: None of the required 'gstreamer-video-1.0' found

                  JoeCFDJ Offline
                  JoeCFDJ Offline
                  JoeCFD
                  wrote on last edited by JoeCFD
                  #8

                  @Joe-von-Habsburg I edited my post. You need to figure out how to set pkg path on Windows.

                  On linux:
                  export PKG_CONFIG_PATH=/opt/thirdParties/gstreamer/lib/pkgconfig:$PKG_CONFIG_PATH

                  it is easier to use pkg config to add packages into a project because all dependencies are taken care of. But you can add all libs manually as well.

                  J 2 Replies Last reply
                  0
                  • JoeCFDJ JoeCFD

                    @Joe-von-Habsburg I edited my post. You need to figure out how to set pkg path on Windows.

                    On linux:
                    export PKG_CONFIG_PATH=/opt/thirdParties/gstreamer/lib/pkgconfig:$PKG_CONFIG_PATH

                    it is easier to use pkg config to add packages into a project because all dependencies are taken care of. But you can add all libs manually as well.

                    J Offline
                    J Offline
                    Joe von Habsburg
                    wrote on last edited by
                    #9

                    @JoeCFD said in GStreamer with QT6:

                    I edited my post.

                    2ea2964c-f599-4cd6-ba4e-632e5eab64dc-image.png

                    316c8b1b-abc1-453b-b453-0a006b4c86bc-image.png

                    8514d4bc-e555-48a2-9888-53078ce4ff62-image.png

                    JoeCFDJ 1 Reply Last reply
                    0
                    • J Joe von Habsburg

                      @JoeCFD said in GStreamer with QT6:

                      I edited my post.

                      2ea2964c-f599-4cd6-ba4e-632e5eab64dc-image.png

                      316c8b1b-abc1-453b-b453-0a006b4c86bc-image.png

                      8514d4bc-e555-48a2-9888-53078ce4ff62-image.png

                      JoeCFDJ Offline
                      JoeCFDJ Offline
                      JoeCFD
                      wrote on last edited by
                      #10

                      @Joe-von-Habsburg I think you did not set pkg configure path. If you do not know how to set it, find the pkg files in gstreamer installation and add all the libs inside to your project.

                      J 1 Reply Last reply
                      0
                      • JoeCFDJ JoeCFD

                        @Joe-von-Habsburg I think you did not set pkg configure path. If you do not know how to set it, find the pkg files in gstreamer installation and add all the libs inside to your project.

                        J Offline
                        J Offline
                        Joe von Habsburg
                        wrote on last edited by
                        #11

                        @JoeCFD said in GStreamer with QT6:

                        I think you did not set pkg configure path. If you do not know how to set it, find the pkg files in gstreamer installation and add all the libs inside to your project.

                        PKG_CONFIG_PATH=C:/gstreamer/1.0/msvc_x86_64/bin/pkgconfig:$PKG_CONFIG_PATH

                        aa513e32-c20d-4c29-852b-5f524bb2f231-image.png

                        JoeCFDJ 1 Reply Last reply
                        0
                        • J Joe von Habsburg

                          @JoeCFD said in GStreamer with QT6:

                          I think you did not set pkg configure path. If you do not know how to set it, find the pkg files in gstreamer installation and add all the libs inside to your project.

                          PKG_CONFIG_PATH=C:/gstreamer/1.0/msvc_x86_64/bin/pkgconfig:$PKG_CONFIG_PATH

                          aa513e32-c20d-4c29-852b-5f524bb2f231-image.png

                          JoeCFDJ Offline
                          JoeCFDJ Offline
                          JoeCFD
                          wrote on last edited by JoeCFD
                          #12

                          @Joe-von-Habsburg pkg config path is under gstreamer lib dir.
                          For example in Linux
                          /opt/thirdParties/gstreamer/lib/pkgconfig
                          Maybe it is different in Windows
                          and pkg-config.exe has to be in system path of Windows.

                          J 1 Reply Last reply
                          0
                          • JoeCFDJ JoeCFD

                            @Joe-von-Habsburg pkg config path is under gstreamer lib dir.
                            For example in Linux
                            /opt/thirdParties/gstreamer/lib/pkgconfig
                            Maybe it is different in Windows
                            and pkg-config.exe has to be in system path of Windows.

                            J Offline
                            J Offline
                            Joe von Habsburg
                            wrote on last edited by
                            #13

                            @JoeCFD said in GStreamer with QT6:

                            @Joe-von-Habsburg pkg config path is under gstreamer lib dir.
                            For example in Linux
                            /opt/thirdParties/gstreamer/lib/pkgconfig
                            Maybe it is different in Windows

                            There is only C:/gstreamer/1.0/msvc_x86_64/bin/pkg-config.exe

                            f54da375-fd5f-45e0-9293-b867c00310aa-image.png

                            1 Reply Last reply
                            0
                            • JoeCFDJ Offline
                              JoeCFDJ Offline
                              JoeCFD
                              wrote on last edited by JoeCFD
                              #14

                              add C:/gstreamer/1.0/msvc_x86_64/bin to PATH on Windows. This enables you to run pkg-config.exe and use pkg-config. Nice that gstreamer includes it for you.
                              go to C:/gstreamer/1.0/msvc_x86_64/lib to find dir pkgconfig. Add C:/gstreamer/1.0/msvc_x86_64/lib/pkgconfig to PKG_CONFIG_PATH

                              Do not forget to add gstreamer plugin path as well in your env. Otherwise, you can not run your gstreamer app.

                              J 1 Reply Last reply
                              0
                              • JoeCFDJ JoeCFD

                                add C:/gstreamer/1.0/msvc_x86_64/bin to PATH on Windows. This enables you to run pkg-config.exe and use pkg-config. Nice that gstreamer includes it for you.
                                go to C:/gstreamer/1.0/msvc_x86_64/lib to find dir pkgconfig. Add C:/gstreamer/1.0/msvc_x86_64/lib/pkgconfig to PKG_CONFIG_PATH

                                Do not forget to add gstreamer plugin path as well in your env. Otherwise, you can not run your gstreamer app.

                                J Offline
                                J Offline
                                Joe von Habsburg
                                wrote on last edited by
                                #15

                                @JoeCFD said in GStreamer with QT6:

                                C:/gstreamer/1.0/msvc_x86_64/bin to PATH on Window

                                it already exists

                                d4060ddb-aee4-4ad8-befe-b0a0b3335a59-image.png

                                @JoeCFD said in GStreamer with QT6:

                                C:/gstreamer/1.0/msvc_x86_64/lib to find dir pkgconfig

                                there is no pkg lib

                                a99c75f6-6b8e-4674-aebb-25deac87ad1f-image.png

                                6ee8b5b1-7fe4-4a6d-8b25-ca79eb592edf-image.png

                                83ef1969-2dc6-46e9-9ce2-35e4c3e96535-image.png

                                2b124ea5-9f96-4f71-8218-4342a5cfa93f-image.png

                                @JoeCFD said in GStreamer with QT6:

                                C:/gstreamer/1.0/msvc_x86_64/lib/pkgconfig

                                its not here.

                                I have only pkg-config exe in C:/gstreamer/1.0/msvc_x86_64/bin/pkg-config.exe

                                1 Reply Last reply
                                0
                                • JoeCFDJ Offline
                                  JoeCFDJ Offline
                                  JoeCFD
                                  wrote on last edited by
                                  #16

                                  If it does not exist, you are unable to use it. I can check it out later for you in my home Windows.

                                  J 1 Reply Last reply
                                  0
                                  • JoeCFDJ JoeCFD

                                    If it does not exist, you are unable to use it. I can check it out later for you in my home Windows.

                                    J Offline
                                    J Offline
                                    Joe von Habsburg
                                    wrote on last edited by
                                    #17

                                    @JoeCFD thank you so much, I will wait and research new solutions

                                    JoeCFDJ 1 Reply Last reply
                                    0
                                    • J Joe von Habsburg

                                      @JoeCFD thank you so much, I will wait and research new solutions

                                      JoeCFDJ Offline
                                      JoeCFDJ Offline
                                      JoeCFD
                                      wrote on last edited by JoeCFD
                                      #18

                                      @Joe-von-Habsburg
                                      https://stackoverflow.com/questions/63026758/cannot-compile-gstreamer-on-windows-because-it-is-missing-glib-2-0

                                      it can be there. Try to reinstall it in different ways.

                                      1 Reply Last reply
                                      0
                                      • JoeCFDJ JoeCFD

                                        @Joe-von-Habsburg I edited my post. You need to figure out how to set pkg path on Windows.

                                        On linux:
                                        export PKG_CONFIG_PATH=/opt/thirdParties/gstreamer/lib/pkgconfig:$PKG_CONFIG_PATH

                                        it is easier to use pkg config to add packages into a project because all dependencies are taken care of. But you can add all libs manually as well.

                                        J Offline
                                        J Offline
                                        Joe von Habsburg
                                        wrote on last edited by Joe von Habsburg
                                        #19

                                        I download files with msys :

                                        pacman -S mingw-w64-x86_64-gstreamer mingw-w64-x86_64-gst-plugins-base \
                                              mingw-w64-x86_64-gst-plugins-good mingw-w64-x86_64-gst-plugins-bad \
                                              mingw-w64-x86_64-gst-plugins-ugly mingw-w64-x86_64-gst-libav \
                                              mingw-w64-x86_64-gst-rtsp-server
                                        

                                        and I copy the pkgconfig to lib like that

                                        image.png

                                        and gsreamer-1.0.pc and gsteamer-video-1.0.pc exist

                                        image.png

                                        cmake like that :

                                        PKG_CONFIG_PATH=C:/gstreamer/1.0/msvc_x86_64/lib/pkgconfig:$PKG_CONFIG_PATH
                                        find_package( PkgConfig REQUIRED )
                                        pkg_search_module( GSTREAMER REQUIRED IMPORTED_TARGET gstreamer-1.0)
                                        pkg_search_module( GSTREAMER-VIDEO REQUIRED IMPORTED_TARGET gstreamer-video-1.0)
                                        

                                        but its not work

                                        aee5e95a-84a0-49ce-9c13-fc96965b9d94-image.png

                                        JoeCFDJ 1 Reply Last reply
                                        0
                                        • J Joe von Habsburg

                                          I download files with msys :

                                          pacman -S mingw-w64-x86_64-gstreamer mingw-w64-x86_64-gst-plugins-base \
                                                mingw-w64-x86_64-gst-plugins-good mingw-w64-x86_64-gst-plugins-bad \
                                                mingw-w64-x86_64-gst-plugins-ugly mingw-w64-x86_64-gst-libav \
                                                mingw-w64-x86_64-gst-rtsp-server
                                          

                                          and I copy the pkgconfig to lib like that

                                          image.png

                                          and gsreamer-1.0.pc and gsteamer-video-1.0.pc exist

                                          image.png

                                          cmake like that :

                                          PKG_CONFIG_PATH=C:/gstreamer/1.0/msvc_x86_64/lib/pkgconfig:$PKG_CONFIG_PATH
                                          find_package( PkgConfig REQUIRED )
                                          pkg_search_module( GSTREAMER REQUIRED IMPORTED_TARGET gstreamer-1.0)
                                          pkg_search_module( GSTREAMER-VIDEO REQUIRED IMPORTED_TARGET gstreamer-video-1.0)
                                          

                                          but its not work

                                          aee5e95a-84a0-49ce-9c13-fc96965b9d94-image.png

                                          JoeCFDJ Offline
                                          JoeCFDJ Offline
                                          JoeCFD
                                          wrote on last edited by JoeCFD
                                          #20

                                          @Joe-von-Habsburg said in GStreamer with QT6:

                                          PKG_CONFIG_PATH=C:/gstreamer/1.0/msvc_x86_64/lib/pkgconfig:$PKG_CONFIG_PATH

                                          ":" is missing in the picture.
                                          PKG_CONFIG_PATH=C:/gstreamer/1.0/msvc_x86_64/lib/pkgconfig:$PKG_CONFIG_PATH

                                          J 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