11-03-2022 02:02 PM
Hi all
My App will crash on S22 Series (Exynos) with OpenGLES call glComplieShader()
After some debug on Samsung Remote Test, I found if my shader source code has two __samplerExternal2DY2YEXT, call glComplieShader() will crash at /vendor/lib64/egl/libGLESv2_samsung.so
If only use one __samplerExternal2DY2YEXT, anything runs ok.
Here some information maybe useful:
GL_VERSION: OpenGL ES 3.2 ANGLE git hash: c7c78c41d520
GL_VENDOR: Samsung Electronics Co., Ltd.
GL_RENDERER: ANGLE (Samsung Xclipse 920) on Vulkan 1.1.179
GL_SHADING_LANGUAGE_VERSION: OpenGL ES GLSL ES 3.20 (ANGLE git hash: c7c78c41d520)
My test shader source code:
static const char* fs_oes_glsles3_src=
"#version 300 es\n"
"#ifdef GL_OES_EGL_image_external_essl3\n"
"#extension GL_OES_EGL_image_external_essl3: enable\n"
"#else\n"
"#extension GL_OES_EGL_image_external: enable\n"
"#endif\n"
"#extension GL_EXT_YUV_target: enable\n"
"precision mediump float;\n"
"precision highp int;\n"
"\n"
"uniform highp __samplerExternal2DY2YEXT samplerImage;\n"
"uniform highp __samplerExternal2DY2YEXT samplerImageRight;\n"
"\n"
"in highp vec2 uv;\n"
"out highp vec4 fragColor;\n"
"void main()\n"
"{\n"
" vec2 color0 = texture(samplerImage, uv).xy;\n"
" vec2 color1 = texture(samplerImageRight, uv).xy;\n"
" fragColor = vec4(color0.x, color0.y, color1.x, color1.y);\n"
"}\n"
"\n"
;
Thanks in advance.
19-08-2022 08:35 AM
Did you get any response from Samsung on this?