This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

How to share texture memory between CPU/GPU for firefly's/rk3288 fbdev Mali-T764

I got the hardware video decoder working on my firefly/rk3288. I can blit the yuv/nv21 output frame to rgb frame memory using fireflys dedicated 2d acceleration hardware. All I need right now is a memory pointer, pointing directly to the texture memory, in order to use the decoded video frame in shaders. In android I would create a GraphicBuffer object and give it to eglCreateImageKHR() and use glEGLImageTargetTexture2DOES. Right now I use glTexSubImage2D to copy and I get about 12 fps for 1920x1080 frames, too slow for showing a movie.

What is the best way to do this for firefly linux 3.10 with fbdev mali t760 driver? How can I simply get a pointer sharing CPU/GPU texture memory? And is there maybe some sample code available?


Right now I stuck and waiting for X11 mali drivers that support XCreatePixmap that could hopefully bring me further. My goal is XBMC, mplayer, ... running on linux on firefly.


Any help would really be appreciated! TNX!


Mac


Background, see:

accelerated video / video processor (VPU) running on linux on RK3288 / firefly - FreakTab.com

Parents
  • Things are clear to me now, this will help me for sure.

    I am on Linux FBDev for this question, so your example is exactly what gives me the right direction! Confusion comes from me because I also use libhybris in linux/ubuntu, making android libs (also your android libmali) available under linux, and actually that way i have access tp the video encoder/decoder hardware en hwcomposer.

    You mention firefly has a special ioctl to get a handle to the framebuffer: can you give me more detail/ or code for this? You would help me out in saving a bit of kernel searching here.

    Anyways, thanks for your answer again!

Reply
  • Things are clear to me now, this will help me for sure.

    I am on Linux FBDev for this question, so your example is exactly what gives me the right direction! Confusion comes from me because I also use libhybris in linux/ubuntu, making android libs (also your android libmali) available under linux, and actually that way i have access tp the video encoder/decoder hardware en hwcomposer.

    You mention firefly has a special ioctl to get a handle to the framebuffer: can you give me more detail/ or code for this? You would help me out in saving a bit of kernel searching here.

    Anyways, thanks for your answer again!

Children