AnsweredAssumed Answered

Is glCompressedTexImage2D() / ETC1 texture compression supported under i.MX Android jb4.3_1.1.0?

Question asked by marcuswhitlock on Aug 12, 2016
Latest reply on Aug 19, 2016 by marcuswhitlock

We are running Android 4.3 Jellybean, with the board support package i.MX Android jb4.3_1.1.0 on an i.mx6 Quad (Vivante GC2000) board and are unable to use ETC1 texture compression in our Java OpenGLES2.0 apps. Kernel version is 3.0.35.

 

ETC1Util.isETC1Supported() returns true in my Android test app and I have valid ETC1 textures.

 

The following snippet below from my app (valid code that compiles and runs) generates a GL error 1280. This is GL_INVALID_ENUM; clearly this is in response to the ETC1.ETC_RGB8_OES value passed in.

 

GLES20.glCompressedTexImage2D(GLES20.GL_TEXTURE_2D, 0, ETC1.ETC1_RGB8_OES, width, height, 0, imageSize, etc1Texture.getData());

 

Other info:

 

When the kernel boots I display the Galcore options:

 

Galcore version 4.6.9.9754

.......

.......

compression = -1

.......

.......

 

Does this mean texture compression is not supported?

 

When grepping through the code in the kernel GPU drivers I see where compression is set to -1 in ....../gpu_viv/hal/os/linux/kernel/gc_hal_kernel_driver. i.e.

 

static int compression = -1;

module_param(compression, int, 0644);

 

However, compression does not appear to be set anywhere else.

 

Thanks for any help anyone can offer!

Outcomes