AnsweredAssumed Answered

Problem with glTexDirectVIVMap in Android 7.1.1

Question asked by sr Zhou on Nov 15, 2018
Latest reply on Dec 4, 2018 by sr Zhou

glTexDirectVIVMap function, which instructs the GPU to read the pixels via DMA from the given memory region, can greatly reduces CPU load.  I have successfully implemented this function in an i.mx 6D/Q project(Android 4.4, Linux version: 3.10.53), and achieved great performance. After that, I migrated my project to another platform(i.mx 6D, Android 7.1.1, Linux version: 4.1.15). But there is a "java.lang.RuntimeException: createContext failed: EGL_BAD_CONFIG"  exception implementing my project in that platform.

       Furthermore, I'v tried to link two different .so files: libGLESv2.so and libGLESv2_VIVANTE.so.

(1)  Compile and link my project with libGLESv2.so, using glTexIamge2D to dynamiclly update the camera texture, and then download the program into the Android 7.1.1 platform:

     Result:  The program runs OK with low perfermance.

(2) Simularly, compile and link with libGLESv2_VIVANTE.so, using glTexDirectVIVMap to update the camera texture, and then download the program.

    Result:  It shows "java.lang.RuntimeException: createContext failed: EGL_BAD_CONFIG" exception during the initialization.

   Actually, all the GL functions have a visiting problem when I use libGLESv2_VIVANTE.so: not only glTexDirectVIVMap, but alse glClear, glCreateShader, etc.

   Can anyone tell me why?

 

   By the way, I have another question:

   Can glTexDirectVIVMap be used in i.mx 8 platform?  Is there any examples?

Outcomes