Convert/Export dmabuf to shader buffer object

Zong, Wei wei.zong at
Fri May 27 10:33:02 UTC 2022


I'm using GLES shader to do post-processing on GPU decoded video frame. I found sample code to demonstrate buffer sharing between decoder and rendering, the method is to create EGLImage texture targets from dma_buf file descriptor by using extension "EGL_EXT_image_dma_buf_import" & "GL_OES_EGL_image_external"

I cannot use EGLImage texture directly, I tried to bind texture objects to GL_SHADER_STORAGE_BUFFER target, but failed to when access the shader buffer, the GL error shows " GL_INVALID_OPERATION in glMapBufferRange(buffer does not allow read access)"

Could you kindly give some help:

1. If Mesa provide API to create GL sharder storage buffer from dma_buf file descriptor?
2. If EGL can covert EGL texture object to shader storage buffer object?

Zong Wei

More information about the mesa-dev mailing list