[Bug 754198] New: glimagesink: Xlib / xcb assertion with client-draw signal
GStreamer (GNOME Bugzilla)
bugzilla at gnome.org
Thu Aug 27 13:52:46 PDT 2015
https://bugzilla.gnome.org/show_bug.cgi?id=754198
Bug ID: 754198
Summary: glimagesink: Xlib / xcb assertion with client-draw
signal
Classification: Platform
Product: GStreamer
Version: git master
OS: Linux
Status: NEW
Severity: normal
Priority: Normal
Component: gst-plugins-bad
Assignee: gstreamer-bugs at lists.freedesktop.org
Reporter: vliaskov at gmail.com
QA Contact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
Created attachment 310128
--> https://bugzilla.gnome.org/attachment.cgi?id=310128&action=edit
C testcase
The attached testcase loops through a single video file (creates and deletes
pipeline each time, there is no seek/re-use of pipeline)
The main() function calls XInitThread() right at its beginning.
The app renders in its own GLFW window using libglfw3 (receiving
samples/textures from glimagesink's client-draw callback). The application
context is shared with each pipeline through bus sync-message
(GST_MESSAGE_NEED_CONTEXT)
Often the app aborts with xcb/xlib assertion:
[xcb] Unknown sequence number while processing queue
[xcb] Most likely this is a multi-threaded client and XInitThreads has not been
called
[xcb] Aborting, sorry about that.
info-beamer: ../../src/xcb_io.c:274: poll_for_event: Assertion
`!xcb_xlib_threads_sequence_lost' failed.
The error can happen from :
- gst_gl_context_create_thread / gst_gl_context_glx_create_context /
glXCreateContextAttribsARB
- libglfw.so.3 / XPending
Application's X11 display/context is used to create a GstGLcontext/GstGLDisplay
(done only once in the beginning of main)
Also following (non-aborting) Xlib message is seen sometimes:
Xlib: sequence lost (0x100b7 > 0xba) in reply type 0x0!
Is something obviously wrong in the testcase? Is the XInitThreads() call
supposed to take care of this?
Also tried with GST_GL_XINITTHREADS=1, same results.
--
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
More information about the gstreamer-bugs
mailing list