[Bug 704809] Use one GstGLContext per streaming thread
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Mon Dec 30 10:50:04 PST 2013
https://bugzilla.gnome.org/show_bug.cgi?id=704809
GStreamer | gst-plugins-gl | git
--- Comment #10 from Julien Isorce <julien.isorce at gmail.com> 2013-12-30 18:49:55 UTC ---
I think there is something to do with SERIALIZED queries.
We could do that in a generic way, so only based on if a query is serialized or
not.
But concretely in "propose_allocation" a field "thread_id" (= g_thread_self ()
) would be added so that in "decide_allocation" we would know if the streaming
thread of downstream elements will be difference than here. So if different we
would create another one a share, or something like that.
The approach is based on the fact that we know what would the streaming thread
(value returned by g_thread_self () ) in decide_allocation and
propose_allocation because the allocation query is serialized.
I means that when calling g_thread_self() in
GstBaseTransform::decide_allocation, and GstBaseTransform::propose it would
return the same value as if you call it in GstBaseTransform::transform.
And for sinks, calling g_thread_self() from GstBaseSink::propose_allocation
returns the same value as the one returned when you call it from
GstBaseSink::show_frame
I'll try to do a first draft if you think the approach make senses. (only a
draft in gstreamer core api, first)
--
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- 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