From dc1859a1dda854b1302d046713a3bd15e99c3f5b Mon Sep 17 00:00:00 2001 From: Yuqing Zhu Date: Mon, 4 Jul 2016 13:46:32 +0800 Subject: gstreamer1.0-plugins-bad: Use the newer texture() function in glcolorconvert GLES3 deprecates texture2D() and it does not work at all in newer versions than 3.3. The new function can fix it. Signed-off-by: Yuqing Zhu Signed-off-by: Ross Burton --- ...ert-GLES3-deprecates-texture2D-and-it-doe.patch | 51 ++++++++++++++++++++++ .../gstreamer/gstreamer1.0-plugins-bad_1.8.2.bb | 1 + 2 files changed, 52 insertions(+) create mode 100755 meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0006-glcolorconvert-GLES3-deprecates-texture2D-and-it-doe.patch (limited to 'meta/recipes-multimedia') diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0006-glcolorconvert-GLES3-deprecates-texture2D-and-it-doe.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0006-glcolorconvert-GLES3-deprecates-texture2D-and-it-doe.patch new file mode 100755 index 0000000000..79ef4c81ab --- /dev/null +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0006-glcolorconvert-GLES3-deprecates-texture2D-and-it-doe.patch @@ -0,0 +1,51 @@ +From 764fd69f8482eca9f925cefe72ebae090ae59d43 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= +Date: Tue, 19 Apr 2016 19:27:33 +0300 +Subject: [PATCH 3/3] glcolorconvert: GLES3 deprecates texture2D() and it does + not work at all in newer versions than 3.3 + +Use the newer texture() function instead. This fixes glimagesink and other +things on various Android devices. + +Upstream-Status: Backport [1.9.1] + +https://bugzilla.gnome.org/show_bug.cgi?id=765266 +--- + gst-libs/gst/gl/gstglcolorconvert.c | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/gst-libs/gst/gl/gstglcolorconvert.c b/gst-libs/gst/gl/gstglcolorconvert.c +index c23624f..f472d5d 100644 +--- a/gst-libs/gst/gl/gstglcolorconvert.c ++++ b/gst-libs/gst/gl/gstglcolorconvert.c +@@ -1716,7 +1716,7 @@ _unbind_buffer (GstGLColorConvert * convert) + + static gchar * + _mangle_texture_access (const gchar * str, GstGLTextureTarget from, +- GstGLTextureTarget to, GstGLAPI gl_api) ++ GstGLTextureTarget to, GstGLAPI gl_api, guint gl_major, guint gl_minor) + { + const gchar *from_str = NULL, *to_str = NULL; + gchar *ret, *tmp; +@@ -1730,7 +1730,8 @@ _mangle_texture_access (const gchar * str, GstGLTextureTarget from, + if (from == GST_GL_TEXTURE_TARGET_EXTERNAL_OES) + from_str = "texture2D"; + +- if (gl_api & GST_GL_API_OPENGL3) { ++ if ((gl_api & GST_GL_API_OPENGL3) || (gl_api & GST_GL_API_GLES2 ++ && gl_major >= 3)) { + to_str = "texture"; + } else { + if (to == GST_GL_TEXTURE_TARGET_2D) +@@ -1898,7 +1899,7 @@ _mangle_shader (const gchar * str, guint shader_type, GstGLTextureTarget from, + + _mangle_version_profile_from_gl_api (gl_api, gl_major, gl_minor, version, + profile); +- tmp = _mangle_texture_access (str, from, to, gl_api); ++ tmp = _mangle_texture_access (str, from, to, gl_api, gl_major, gl_minor); + tmp2 = _mangle_sampler_type (tmp, from, to); + g_free (tmp); + tmp = +-- +1.9.1 + diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.8.2.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.8.2.bb index 825d100a11..49b3677ddf 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.8.2.bb +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.8.2.bb @@ -16,6 +16,7 @@ SRC_URI = " \ file://0003-glcolorconvert-implement-multiple-render-targets-for.patch \ file://0004-glcolorconvert-don-t-use-the-predefined-variable-nam.patch \ file://0005-glshader-add-glBindFragDataLocation.patch \ + file://0006-glcolorconvert-GLES3-deprecates-texture2D-and-it-doe.patch \ " SRC_URI[md5sum] = "83abc2e70684e7b195f18ca2992ef6e8" SRC_URI[sha256sum] = "d7995317530c8773ec088f94d9320909d41da61996b801ebacce9a56af493f97" -- cgit 1.2.3-korg