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. Issue to build release with GStreamer GLVideoItem
Forum Updated to NodeBB v4.3 + New Features

Issue to build release with GStreamer GLVideoItem

Scheduled Pinned Locked Moved Unsolved General and Desktop
13 Posts 7 Posters 3.5k Views 2 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.
  • M Offline
    M Offline
    mipr
    wrote on last edited by
    #1

    Hello,

    I am working on an application for Windows which displays a video stream thanks to GStreamer and it uses the GStreamer QML item GLVideoItem, however it doesn't work in release mode.

    To import GLVideoItem I need to clone the GStreamer branch (gst-plugins-good), to build it in release and to copy/paste gstqmlgl.dll, gstqmlgl.lib and gstqmlgl.pdb into my GStreamer installation folder.
    After, I add this QML item inside my QML file :

    ...
    import org.freedesktop.gstreamer.GLVideoItem 1.0
    
    Item  {
        GstGLVideoItem {
            anchors.fill: parent
            objectName: "gstVideoDisplay"
        }
    }
    

    I have an issue with the import : QML module not found (org.freedesktop.gstreamer.GLVideoItem). but I can build and launch the application without issue in build mode and the video stream is displayed.

    When I try to build in release mode I have no issue, but when I launch the app I have the following issue : module "org.freedesktop.gstreamer.GLVideoItem" is not installed and the app is stuck with a white screen.

    I have the feeling that gstqmlgl files are not linked to the executable file during the compilation and doesn't create dll files for gstqmlgl. I don't understand why it works in debug and not in release. Do you have some ideas or did you come across this problem ?
    Thanks in advance !

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

      Hi and welcome to devnet,

      Maybe a silly question but did you build everything both for debug and release ?

      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
      • M Offline
        M Offline
        mipr
        wrote on last edited by
        #3

        Hi @SGaist, thanks for your answer !

        There is no silly question, what do you mean by "build everything both for debug and release"? Did I build my project in debug, tried it and did the same in release? If it was the question then yes. And the error only occurs in release when I launch the app, not during the build.
        If I comment the GstGLVideoItem and the importation of GLVideoItem, I can build and launch the app in release (this confirms the displayed error).

        I have found a similar question but I don't understand the solution, it's too vague so I have contacted the author but I have no answer for now.
        I don't know if it is necessary to modify GstGLVideoItem element to use it, it seems strange to me to have created a "generic" component that we must modify to implement it.

        Pablo J. RoginaP 1 Reply Last reply
        0
        • M mipr

          Hi @SGaist, thanks for your answer !

          There is no silly question, what do you mean by "build everything both for debug and release"? Did I build my project in debug, tried it and did the same in release? If it was the question then yes. And the error only occurs in release when I launch the app, not during the build.
          If I comment the GstGLVideoItem and the importation of GLVideoItem, I can build and launch the app in release (this confirms the displayed error).

          I have found a similar question but I don't understand the solution, it's too vague so I have contacted the author but I have no answer for now.
          I don't know if it is necessary to modify GstGLVideoItem element to use it, it seems strange to me to have created a "generic" component that we must modify to implement it.

          Pablo J. RoginaP Offline
          Pablo J. RoginaP Offline
          Pablo J. Rogina
          wrote on last edited by
          #4

          @mipr said in Issue to build release with GStreamer GLVideoItem:

          And the error only occurs in release when I launch the app, not during the build.

          Could you explain this better please?
          When you say "when I launch the app.." does it mean when you run the application standalone? Not launching it from Qt Creator?

          Upvote the answer(s) that helped you solve the issue
          Use "Topic Tools" button to mark your post as Solved
          Add screenshots via postimage.org
          Don't ask support requests via chat/PM. Please use the forum so others can benefit from the solution in the future

          M 1 Reply Last reply
          0
          • Pablo J. RoginaP Pablo J. Rogina

            @mipr said in Issue to build release with GStreamer GLVideoItem:

            And the error only occurs in release when I launch the app, not during the build.

            Could you explain this better please?
            When you say "when I launch the app.." does it mean when you run the application standalone? Not launching it from Qt Creator?

            M Offline
            M Offline
            mipr
            wrote on last edited by mipr
            #5

            Hi @Pablo-J-Rogina,

            Yes sorry. It occurs when I run the application from Qt Creator in release, I also tried to run the app standalone but as I suspected, it doesn't work too.

            Edit: I've found that the GstGLVideoItem object is created when the gstreamer pipeline make qmlglsink : gst_element_factory_make ("qmlglsink", NULL) because in my gstreamer logs I see the pipeline steps initiating successfully but just after, I have the previous error.

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

              I meant the build of the dependencies.

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

              M 1 Reply Last reply
              0
              • SGaistS SGaist

                I meant the build of the dependencies.

                M Offline
                M Offline
                mipr
                wrote on last edited by
                #7

                @SGaist I don't think so, I begin with Qt and I have trouble understanding how to manage dependencies and how to build them. I saw "Specifying Dependencies" in documentation but I don't know if it is relevant to my problem (I tried to build with the qtplugin of gstreamer in dependency but it doesn't solve my issue).

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

                  I meant the GStreamer plugin package.

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

                  JoeCFDJ 1 Reply Last reply
                  0
                  • S Offline
                    S Offline
                    ShahShaj
                    wrote on last edited by
                    #9
                    This post is deleted!
                    1 Reply Last reply
                    0
                    • M mipr

                      @SGaist I don't think so, I begin with Qt and I have trouble understanding how to manage dependencies and how to build them. I saw "Specifying Dependencies" in documentation but I don't know if it is relevant to my problem (I tried to build with the qtplugin of gstreamer in dependency but it doesn't solve my issue).

                      C Offline
                      C Offline
                      cscat
                      wrote on last edited by
                      #10

                      @mipr hi,by the way, how to compile gstqmlgl.dll, gstqmlgl.lib in windows, use MSVC?

                      F 1 Reply Last reply
                      0
                      • SGaistS SGaist

                        I meant the GStreamer plugin package.

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

                        @SGaist leave a solution here. Just in case.
                        on Linux
                        sudo apt-get install gstreamer1.0-qt5

                        1 Reply Last reply
                        0
                        • C cscat

                          @mipr hi,by the way, how to compile gstqmlgl.dll, gstqmlgl.lib in windows, use MSVC?

                          F Offline
                          F Offline
                          FlyingBoar
                          wrote on last edited by
                          #12

                          @cscat it seems to be the eternal question. Did you succeed?.. I can do builds both via Meson and Qt Creator. As topic starter said, release build does not work.

                          1 Reply Last reply
                          0
                          • M mipr

                            Hello,

                            I am working on an application for Windows which displays a video stream thanks to GStreamer and it uses the GStreamer QML item GLVideoItem, however it doesn't work in release mode.

                            To import GLVideoItem I need to clone the GStreamer branch (gst-plugins-good), to build it in release and to copy/paste gstqmlgl.dll, gstqmlgl.lib and gstqmlgl.pdb into my GStreamer installation folder.
                            After, I add this QML item inside my QML file :

                            ...
                            import org.freedesktop.gstreamer.GLVideoItem 1.0
                            
                            Item  {
                                GstGLVideoItem {
                                    anchors.fill: parent
                                    objectName: "gstVideoDisplay"
                                }
                            }
                            

                            I have an issue with the import : QML module not found (org.freedesktop.gstreamer.GLVideoItem). but I can build and launch the application without issue in build mode and the video stream is displayed.

                            When I try to build in release mode I have no issue, but when I launch the app I have the following issue : module "org.freedesktop.gstreamer.GLVideoItem" is not installed and the app is stuck with a white screen.

                            I have the feeling that gstqmlgl files are not linked to the executable file during the compilation and doesn't create dll files for gstqmlgl. I don't understand why it works in debug and not in release. Do you have some ideas or did you come across this problem ?
                            Thanks in advance !

                            F Offline
                            F Offline
                            FlyingBoar
                            wrote on last edited by
                            #13

                            @mipr did you find solution? Release build does not work, development is OK.

                            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