[Bug 743345] glupload: Add support for dmabuf

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Mon Nov 23 08:31:58 PST 2015


https://bugzilla.gnome.org/show_bug.cgi?id=743345

--- Comment #45 from Lubosz Sarnecki <lubosz at gmail.com> ---
There are also 3 experimental / WIP patches I am currently working on:

== Buggy format combinations ==

3 additional formats supported by glcolorconvert and v4l2src do not work this
way:
https://git.collabora.com/cgit/user/lubosz/gst-plugins-bad.git/commit/?h=dmabuf-dev&id=92c59d2d819405a2e3c0b0f65eb0c088c349aa57

ARGB can be used by a swizzle in glcolorconvert, but BGR and RGB are are not
usable since there seems to be a bug in vivid / drm. 

== video_frame_map() with dmabufs ==

video_frame_map() seems to not be needed in pipelines with dmabuf:
https://git.collabora.com/cgit/user/lubosz/gst-plugins-bad.git/commit/?h=dmabuf-dev&id=f7d7d2b55b84d1eadb0463981c9a815b8e2d3b05

Since I am using GL_TEXUTRE_2D in above patches, there needs to be an
additional way to distinguish between dmabuf and non-dmabuf textures in the
sink, besides the texture target.

_gl_mem_copy() can also be skipped for dmabuf gl buffers with GL_TEXTURE_2D,
which is mandatory with GL_TEXTURE_EXTERNAL_OES, as seen in:
http://cgit.freedesktop.org/gstreamer/gst-plugins-bad/diff/gst-libs/gst/gl/gstglmemory.c?id=e61d504556870adf2b5d58b86b09a3327816dec2


== Usage of GL_TEXTURE_EXTERNAL_OES ==

Since glmemory has been extended to support multiple targets, usage of
GL_TEXTURE_EXTERNAL_OES texture tatgets
can also work with gles2 contexts. This is a WIP patch to make this work:

https://git.collabora.com/cgit/user/lubosz/gst-plugins-bad.git/commit/?h=dmabuf-dev&id=758983e6fbf2e0079b5b8261c4977a02705a93fe

I was not able to negotiate the EXTERNAL_OES target with glconvert this way.
Any ideas how to make this work properly?

-- 
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