Issue to build release with GStreamer GLVideoItem
-
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 ! -
Hi and welcome to devnet,
Maybe a silly question but did you build everything both for debug and release ?
-
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. -
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.@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? -
@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?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. -
I meant the build of the dependencies.
-
@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).
-
I meant the GStreamer plugin package.
-
@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).
-
@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.
-
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 !@mipr did you find solution? Release build does not work, development is OK.