[Bug 779067] glupload: Add support for Vivante DirectTexture uploads

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Thu Feb 23 06:23:40 UTC 2017


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

Matthew Waters (ystreet00) <ystreet00 at gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #346442|none                        |needs-work
             status|                            |

--- Comment #6 from Matthew Waters (ystreet00) <ystreet00 at gmail.com> ---
Review of attachment 346442:
 --> (https://bugzilla.gnome.org/review?bug=779067&attachment=346442)

An open question is how do we know the GstPhysMemory is usable by the Vivante
extension?

::: configure.ac
@@ +892,3 @@

+dnl check for Vivante DirectVIV support
+AC_CHECK_LIB(GLESv2, glTexDirectVIV, [HAVE_VIV_DIRECTVIV=yes],
[HAVE_VIV_DIRECTVIV=no])

I think this is the wrong thing to be checking here as this needs to be checked
at runtime by the GL function loading infrastructure.

Do we even need to check for vivante specific things here?

::: gst-libs/gst/gl/Makefile.am
@@ +147,3 @@
     $(GST_ALL_LDFLAGS) \
+    $(GST_LT_LDFLAGS) \
+   
$(top_builddir)/gst-libs/gst/allocators/libgstbadallocators- at GST_API_VERSION@.la

Don't .la libraries go in _LIBADD?

::: gst-libs/gst/gl/gstglupload.c
@@ +39,3 @@
+#if GST_GL_HAVE_VIV_DIRECTVIV
+#include <gst/allocators/gstphysmemory.h>
+#include <GLES2/gl2ext.h>

This include should be in gstglapi.h

@@ +1395,3 @@
+      gl_format, (void **) &unmap_data->map.data,
+      &((GstPhysMemory *) in_mem)->phys_addr);
+  glTexDirectInvalidateVIV (GL_TEXTURE_2D);

These should use the functions in GstGLFuncs in order to use the correct GL
functions for the correct context/thread.

Which results in, even if GST_GL_HAVE_VIV_DIRECTVIV is true (which I don't
think we need at all), glTexDirectVIVMap and glTexDirectInvalidateVIV may not
exist at runtime and should be a condition for choosing to upload with this
uploader.

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