GNOME Bugzilla – Bug 728759
glimagesink: Won't display anything on high loads
Last modified: 2014-05-01 15:23:25 UTC
In the context where the display is slower then the stream, glimagesink won't display anything. eglglessink was behaving much better. Maybe something in QoS is missing, I don't know yet.
basesink is doing all the QoS work already, and if everything is just too slow it will try to display one frame per second at least.
I've been digging a bit more, it seems this is yet another deadlock actually. I will provide a backtrace. Do we have any docs/design about the messaging and threading of the libgstgl ?
We don't unfortunately, but maybe someone already knows the problem if you can provide the backtrace of the deadlock :)
I notice that moving prepare inside _render makes the situation much nicer. Looking deeper, basesink does: - if late skip - prepare - sync - if late skip - render In the current situation, display is really slow, 10fps, which means prepare takes probably more then a frame to run (I need to measure this). I'm not fully clear yet, but it seems like this pattern cause starvation. Note the basetransform QoS is also involved here. We could also experiment by adding sleeps in these.
Had nothing to do with gl in fact. *** This bug has been marked as a duplicate of bug 729335 ***