mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-19 06:46:38 +00:00
GStreamer multimedia framework
dfd6565b4b
Newer devices require using a different GLSL extension for accessing external-oes textures in a shader using the texture() functions. While the GL_OES_EGL_image_external_essl3 should supposedly be supported on a any GLES3 android device, the extension was defined after a lot of the older drivers were built so they will not know about it. Thus there are two possible interpretations of which of texture[2D]() should be supported for external-oes textures. Strict adherence to the GL_OES_EGL_image_external extension spec which uses texture2D() or following GLES3's pattern, also allowing texture() as a function for accessing external-oes textures This adds another mangling pass to convert #extension GL_OES_EGL_image_external : ... into #extension GL_OES_EGL_image_external_essl3 : ... on GLES3 and when the GL_OES_EGL_image_external_essl3 extension is supported. Only uses texture() when the GLES3 and the GL_OES_EGL_image_external_essl3 extension is supported for external-oes textures. Uses GLES2 + texture2D() + GL_OES_EGL_image_external in all other external-oes cases. https://bugzilla.gnome.org/show_bug.cgi?id=766993 |
||
---|---|---|
ext/gl | ||
gst-libs/gst/gl | ||
pkgconfig | ||
tests |