[Bug 704806] Implement GL context sharing
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Sat Aug 31 21:47:34 PDT 2013
https://bugzilla.gnome.org/show_bug.cgi?id=704806
GStreamer | gst-plugins-gl | git
--- Comment #13 from Matthew Waters <ystreet00 at gmail.com> 2013-09-01 04:47:28 UTC ---
(In reply to comment #10)
> That's only half the solution here then, also it will only work for two
> contexts and not more :)
You can use either context then to share with another context that you create,
there's nothing limiting you to 2 contexts (barring implementation-specific
limitations).
> What options do you see to share contexts independently? Other than downloading
> and uploading again?
You can't share contexts independently, they must be initialized with another
context so that they can share the same object space.
(In reply to comment #11)
> Review of attachment 253511 [details]:
>
> I think some of the elements in gst/gl use this pattern too
>
> ::: gst-libs/gst/gl/gstglfilter.c
> @@ +151,2 @@
> {
> + filter->other_context = g_value_get_object (value);
>
> g_value_dup_object() here, and then make sure to unref it again when it's not
> used anymore
The only elements that don't inherit from glfilter are glmosaic, gltestsrc and
glimagesink and I couldn't find it there.
(In reply to comment #12)
> Review of attachment 253512 [details]:
>
> ::: gst-libs/gst/gl/egl/gstglcontext_egl.c
> @@ -171,3 @@
> - config_attrib[i++] = EGL_CONFIG_ID;
> - config_attrib[i++] = config_id;
> - config_attrib[i++] = EGL_NONE;
>
> I think we should still do that as maybe the display was initialized from the
> outside with a different config already. Just to be on the save side :)
How would we get the config from outside? I thought that EGLConfig's were
associated with EGLSurfaces.
> Just change the FIXME comment, and do a display equality check here and fail if
> it's not equal
However we explicitly set them equal at the start of _create() if we're sharing
so that seems pointless :).
--
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