webrtc and qmlglsink

DejanCotra dejancotra at gmail.com
Thu Jul 9 13:33:13 UTC 2020


Hi all,

Im using QT version 5.14.2 and working in parallel with Gstremer 1.14.5 and
Gstremer 1.16.2.

I adopted samples from https://github.com/centricular/gstwebrtc-demos to
work inside QT application.

with Gstremer 1.14.5 incoming video I handle with following pipeline:
*queue ! videoconvert ! glupload ! qmlglsink
and
g_object_set(qmlsink, "widget", videoItem, NULL);*

it was working perfectly.

with Gstremer 1.16.2, first I get error which I solved by adding
glcolorconvert to pipeline. When I added glcolorconvert I get just
blackscreen.
Than I change pipeline to:
*queue ! videoconvert ! glupload ! glcolorconvert ! glsinkbin name=sinkBin
g_object_set (sinkBin, "sink", qmlsink, nullptr);
g_object_set(qmlsink, "widget", videoItem, NULL);*

situation got little bit better for split second I could see my incoming
stream and than I get Greenscreen.

In addition I try with Gstremer 1.16.2:
*qmlsink = gst_element_factory_make ("qmlglsink", NULL);
filesrc location=~/test.mp4 ! qtdemux name=mux ! video/x-h264 ! avdec_h264 !
glupload ! glcolorconvert ! glsinkbin name=qml
GstElement * sinkBin = gst_bin_get_by_name (GST_BIN (pipe1), "qml");
g_object_set (sinkBin, "sink", qmlsink, nullptr);*
which is working perfectly.

so what do I miss with Gstremer 1.16.2?



--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/


More information about the gstreamer-devel mailing list