Discussion:
qmlglsink plugin installation problem
riteshSTPL
2016-09-16 10:33:52 UTC
Permalink
I am using Gstreamer 1.8.3 on Ubuntu 16.04 with Qt 5.5.1. and qt-gstreamer
1.2.0.
I want to use *qmlglsink* to preview gstreamer video on QML surface.

I follwed below commands to install qmlglsink plugin
git clone https://github.com/GStreamer/gst-plugins-bad
cd gst-plugins-bad
git checkout 1.8.3
./autogen.sh
./configure --prefix=/usr/local/
make
make install

gst-inspect-1.0 gmlglsink
No such element or plugin 'gmlglsink'

But still i am not able to get this plugin.





--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/qmlglsink-plugin-installation-problem-tp4679619.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.
Matthew Waters
2016-09-16 12:30:03 UTC
Permalink
Post by riteshSTPL
I am using Gstreamer 1.8.3 on Ubuntu 16.04 with Qt 5.5.1. and qt-gstreamer
1.2.0.
I want to use *qmlglsink* to preview gstreamer video on QML surface.
I follwed below commands to install qmlglsink plugin
git clone https://github.com/GStreamer/gst-plugins-bad
cd gst-plugins-bad
git checkout 1.8.3
./autogen.sh
./configure --prefix=/usr/local/
make
make install
gst-inspect-1.0 gmlglsink
No such element or plugin 'gmlglsink'
But still i am not able to get this plugin.
1. Did the ./configure output say it was going to build the qt plugin?
2. Do you have GST_PLUGIN_PATH pointing to /usr/local/lib/gstreamer-1.0 ?
3. What happens when you run gst-inspect-1.0 on the plugin file directly?
e.g gst-inspect-1.0 /usr/local/lib/gstreamer-1.0/libgstqmlgl.so
riteshSTPL
2016-09-16 12:35:34 UTC
Permalink
1. Did the ./configure output say it was going to build the qt plugin?
./configure output says qt under this
configure: *** Plug-ins with dependencies that will be built:
bz2
dash
decklink
dtls
dvb
fbdevsink
gl
gtk
hls
qt
shm
smoothstreaming
vcdsrc
wayland

2. Do you have GST_PLUGIN_PATH pointing to /usr/local/lib/gstreamer-1.0 ?
I think no. because "echo $GST_PLUGIN_PATH" output Blank

3. What happens when you run gst-inspect-1.0 on the plugin file directly?
e.g gst-inspect-1.0 /usr/local/lib/gstreamer-1.0/libgstqmlgl.so
gst-inspect-1.0 /usr/local/lib/gstreamer-1.0/libgstqmlgl.so
Plugin Details:
Name qt
Description Qt gl plugin
Filename /usr/local/lib/gstreamer-1.0/libgstqmlgl.so
Version 1.8.3
License LGPL
Source module gst-plugins-bad
Source release date 2016-08-19
Binary package GStreamer Bad Plug-ins source release
Origin URL Unknown package origin

qmlglsink: Qt Video Sink

1 features:
+-- 1 elements

So i think its problem in PATH, Right?
So Whats the default location where gstreamer plugin installed? I think its
not /usr/local, right?
So what should be the .configure command argument?



--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/qmlglsink-plugin-installation-problem-tp4679619p4679622.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.
Ritesh Panchal
2016-09-16 12:38:06 UTC
Permalink
1. Did the ./configure output say it was going to build the qt plugin?
./configure output says qt under this
configure: *** Plug-ins with dependencies that will be built:
bz2
dash
decklink
dtls
dvb
fbdevsink
gl
gtk
hls
qt
shm
smoothstreaming
vcdsrc
wayland

2. Do you have GST_PLUGIN_PATH pointing to /usr/local/lib/gstreamer-1.0 ?
I think no. because "echo $GST_PLUGIN_PATH" output Blank

3. What happens when you run gst-inspect-1.0 on the plugin file directly?
e.g gst-inspect-1.0 /usr/local/lib/gstreamer-1.0/libgstqmlgl.so
gst-inspect-1.0 /usr/local/lib/gstreamer-1.0/libgstqmlgl.so
Plugin Details:
Name qt
Description Qt gl plugin
Filename /usr/local/lib/gstreamer-1.0/libgstqmlgl.so
Version 1.8.3
License LGPL
Source module gst-plugins-bad
Source release date 2016-08-19
Binary package GStreamer Bad Plug-ins source release
Origin URL Unknown package origin

qmlglsink: Qt Video Sink

1 features:
+-- 1 elements

So i think its problem in PATH, Right?
So Whats the default location where gstreamer plugin installed? I think its not /usr/local, right?
So what should be the .configure command argument?
Post by Matthew Waters
Post by riteshSTPL
I am using Gstreamer 1.8.3 on Ubuntu 16.04 with Qt 5.5.1. and qt-gstreamer
1.2.0.
I want to use *qmlglsink* to preview gstreamer video on QML surface.
I follwed below commands to install qmlglsink plugin
git clone https://github.com/GStreamer/gst-plugins-bad
cd gst-plugins-bad
git checkout 1.8.3
./autogen.sh
./configure --prefix=/usr/local/
make
make install
gst-inspect-1.0 gmlglsink
No such element or plugin 'gmlglsink'
But still i am not able to get this plugin.
1. Did the ./configure output say it was going to build the qt plugin?
2. Do you have GST_PLUGIN_PATH pointing to /usr/local/lib/gstreamer-1.0 ?
3. What happens when you run gst-inspect-1.0 on the plugin file directly?
e.g gst-inspect-1.0 /usr/local/lib/gstreamer-1.0/libgstqmlgl.so
--
__________________________________________________________________
Thanks & Regards,
Ritesh Panchal | Embedded Software Engineer
Syntrons Technologies Pvt. Ltd.
M: +91-8460467323
Matthew Waters
2016-09-16 13:00:59 UTC
Permalink
Post by Matthew Waters
1. Did the ./configure output say it was going to build the qt plugin?
./configure output says qt under this
bz2
dash
decklink
dtls
dvb
fbdevsink
gl
gtk
hls
qt
shm
smoothstreaming
vcdsrc
wayland
Good.
Post by Matthew Waters
2. Do you have GST_PLUGIN_PATH pointing to /usr/local/lib/gstreamer-1.0 ?
I think no. because "echo $GST_PLUGIN_PATH" output Blank
Right, so this is your issue. By default only system plugins are loaded
which are in /usr, not /usr/local. You need to add
/usr/local/lib/gstreamer-1.0 to GST_PLUGIN_PATH for GStreamer to
automatically find the qt plugin.
Post by Matthew Waters
3. What happens when you run gst-inspect-1.0 on the plugin file directly?
e.g gst-inspect-1.0 /usr/local/lib/gstreamer-1.0/libgstqmlgl.so
gst-inspect-1.0 /usr/local/lib/gstreamer-1.0/libgstqmlgl.so
Name qt
Description Qt gl plugin
Filename /usr/local/lib/gstreamer-1.0/libgstqmlgl.so
Version 1.8.3
License LGPL
Source module gst-plugins-bad
Source release date 2016-08-19
Binary package GStreamer Bad Plug-ins source release
Origin URL Unknown package origin
qmlglsink: Qt Video Sink
+-- 1 elements
Looks good.
Post by Matthew Waters
So i think its problem in PATH, Right?
So Whats the default location where gstreamer plugin installed? I
think its not /usr/local, right?
So what should be the .configure command argument?
It's not a configure argument but rather an environment setup. When
building your own GStreamer packages you also need to setup the
necessary environment for GStreamer to find them correctly. If you're
building the same version as you already have installed and only
attempting to complement the installed packages, you can usually get
away with just adding paths to GST_PLUGIN_PATH. Anything more
complicated/involved requires setting up a full prefix/uninstalled
environment. e.g.
https://arunraghavan.net/2014/07/quick-start-guide-to-gst-uninstalled-1-x/
is a quick guide for setting up an uninstalled setup in your home
directory (or anywhere else) that can also be used for stable branches
(1.6, 1.8) with some slight modifications.

Cheers
-Matt
Post by Matthew Waters
Post by Matthew Waters
Post by riteshSTPL
I am using Gstreamer 1.8.3 on Ubuntu 16.04 with Qt 5.5.1. and qt-gstreamer
1.2.0.
I want to use *qmlglsink* to preview gstreamer video on QML surface.
I follwed below commands to install qmlglsink plugin
git clone https://github.com/GStreamer/gst-plugins-bad
cd gst-plugins-bad
git checkout 1.8.3
./autogen.sh
./configure --prefix=/usr/local/
make
make install
gst-inspect-1.0 gmlglsink
No such element or plugin 'gmlglsink'
But still i am not able to get this plugin.
1. Did the ./configure output say it was going to build the qt plugin?
2. Do you have GST_PLUGIN_PATH pointing to
/usr/local/lib/gstreamer-1.0 ?
3. What happens when you run gst-inspect-1.0 on the plugin file directly?
e.g gst-inspect-1.0 /usr/local/lib/gstreamer-1.0/libgstqmlgl.so
riteshSTPL
2016-09-17 05:50:44 UTC
Permalink
Hello Matthew,

Thanks for the Reply.

I can able to get qmlglsink plugins by following steps
git clone https://github.com/GStreamer/gst-plugins-bad
cd gst-plugins-bad
git checkout 1.8.3
export GST_PLUGIN_PATH=/usr/lib/gstreamer-1.0/
./autogen.sh
make
make install


gst-inspect-1.0 qmlglsink
Factory Details:
Rank none (0)
Long-name Qt Video Sink
Klass Sink/Video
Description A video sink the renders to a QQuickItem
Author Matthew Waters <***@centricular.com>

Plugin Details:
Name qt
Description Qt gl plugin
Filename /usr/lib/gstreamer-1.0/libgstqmlgl.so
Version 1.8.3
License LGPL
Source module gst-plugins-bad
Source release date 2016-08-19
Binary package GStreamer Bad Plug-ins source release
Origin URL Unknown package origin

GObject
+----GInitiallyUnowned
+----GstObject
+----GstElement
+----GstBaseSink
+----GstVideoSink
+----GstQtSink


But if i try to build "gst-plugins-bad/tests/examples/qt/qml" project. The
build got successful. But Running the application gives me following error.
ERROR:../qml/main.cpp:52:int main(int, char**): assertion failed: (src &&
glupload && sink)


If i comment out
g_assert (src && glupload && sink);
, And try to run app i got following error.
QQmlApplicationEngine failed to load component
qrc:/main.qml:7 module "org.freedesktop.gstreamer.GLVideoItem" is not
installed

ASSERT: "!isEmpty()" in file
/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h, line 316
The program has unexpectedly finished.


So how to solve this error?



--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/qmlglsink-plugin-installation-problem-tp4679619p4679638.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.
Matthew Waters
2016-09-17 13:15:26 UTC
Permalink
Post by riteshSTPL
Hello Matthew,
Thanks for the Reply.
I can able to get qmlglsink plugins by following steps
git clone https://github.com/GStreamer/gst-plugins-bad
cd gst-plugins-bad
git checkout 1.8.3
export GST_PLUGIN_PATH=/usr/lib/gstreamer-1.0/
GST_PLUGIN_PATH needs to be set while *running* the program to the place
where the plugins are, not while building the plugins. It's not used
while building.
Post by riteshSTPL
./autogen.sh
make
make install
gst-inspect-1.0 qmlglsink
Rank none (0)
Long-name Qt Video Sink
Klass Sink/Video
Description A video sink the renders to a QQuickItem
Name qt
Description Qt gl plugin
Filename /usr/lib/gstreamer-1.0/libgstqmlgl.so
Version 1.8.3
License LGPL
Source module gst-plugins-bad
Source release date 2016-08-19
Binary package GStreamer Bad Plug-ins source release
Origin URL Unknown package origin
GObject
+----GInitiallyUnowned
+----GstObject
+----GstElement
+----GstBaseSink
+----GstVideoSink
+----GstQtSink
But if i try to build "gst-plugins-bad/tests/examples/qt/qml" project. The
build got successful. But Running the application gives me following error.
ERROR:../qml/main.cpp:52:int main(int, char**): assertion failed: (src &&
glupload && sink)
If i comment out
g_assert (src && glupload && sink);
, And try to run app i got following error.
QQmlApplicationEngine failed to load component
qrc:/main.qml:7 module "org.freedesktop.gstreamer.GLVideoItem" is not
installed
ASSERT: "!isEmpty()" in file
/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h, line 316
The program has unexpectedly finished.
So how to solve this error?
--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/qmlglsink-plugin-installation-problem-tp4679619p4679638.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.
Loading...