diff options
author | DeepBlueV7.X <nicolas.werner@hotmail.de> | 2024-05-24 21:37:01 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-05-24 21:37:01 +0000 |
commit | d3561d79397083d754769728dd2e1dc26ab79fc3 (patch) | |
tree | ebb50c0eef11646d14ed0755bc14d957ccb222b0 /src | |
parent | Bump mtxclient for better mentions support on older servers (diff) | |
parent | Fix OpenGL video sinkchain crash (diff) | |
download | nheko-d3561d79397083d754769728dd2e1dc26ab79fc3.tar.xz |
Merge pull request #1727 from checkraisefold/test_linux_fix
Fix OpenGL video sinkchain crash
Diffstat (limited to 'src')
-rw-r--r-- | src/voip/WebRTCSession.cpp | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/src/voip/WebRTCSession.cpp b/src/voip/WebRTCSession.cpp index ba1d5424..d55b7c41 100644 --- a/src/voip/WebRTCSession.cpp +++ b/src/voip/WebRTCSession.cpp @@ -339,21 +339,16 @@ newVideoSinkChain(GstElement *pipe) g_object_set(compositor, "background", 1, nullptr); switch (graphicsApi) { case QSGRendererInterface::OpenGL: { - GstElement *glupload = gst_element_factory_make("glupload", nullptr); - GstElement *glcolorconvert = gst_element_factory_make("glcolorconvert", nullptr); - GstElement *qmlglsink = gst_element_factory_make("qml6glsink", nullptr); - GstElement *glsinkbin = gst_element_factory_make("glsinkbin", nullptr); + GstElement *qmlglsink = gst_element_factory_make("qml6glsink", nullptr); + GstElement *glsinkbin = gst_element_factory_make("glsinkbin", nullptr); g_object_set(qmlglsink, "widget", WebRTCSession::instance().getVideoItem(), nullptr); g_object_set(glsinkbin, "sink", qmlglsink, nullptr); - gst_bin_add_many( - GST_BIN(pipe), queue, compositor, glupload, glcolorconvert, glsinkbin, nullptr); - gst_element_link_many(queue, compositor, glupload, glcolorconvert, glsinkbin, nullptr); + gst_bin_add_many(GST_BIN(pipe), queue, compositor, glsinkbin, nullptr); + gst_element_link_many(queue, compositor, glsinkbin, nullptr); gst_element_sync_state_with_parent(queue); gst_element_sync_state_with_parent(compositor); - gst_element_sync_state_with_parent(glupload); - gst_element_sync_state_with_parent(glcolorconvert); gst_element_sync_state_with_parent(glsinkbin); // to propagate context (hopefully) |