[i.MX6] Vivante: How-to readback PixmapSurface in EGL-FB?

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

[i.MX6] Vivante: How-to readback PixmapSurface in EGL-FB?

跳至解决方案
3,423 次查看
castel
Contributor III

Hi, GPU team:

     We're programming the PixmapSurface rendering in EGL FB, we've gotten the *Pixmap from eglCopyBuffers(), but we don't know how to extract the data buffer from it? (structure 'EGLNativePixmapType': identified as 'HBITMAP' type on WinCE so easy to be rendered in Win32 AP, but on Linux/FB an unknown '_FBPixmap' type is)

     we've checked the DOC "iMX6.2D.API _4.6.9p8.pdf" & some test codes from Vivante, but no help for it.

     is it possible to get how to access the Pixmap from eglCopyBuffers()? or is there other way we need to follow for the achievement?

    

thanks.

0 项奖励
1 解答
1,182 次查看
andre_silva
NXP Employee
NXP Employee

Hi Kang,

the  better way to do that is using virtual framebuffers, you can find a similar thread here that another customer was able to solve his problem using this approach?

https://community.freescale.com/message/340072#340072

the virtual framebuffer driver can be found here?

Freescale/linux-module-virtfb · GitHub

regards,

Andre

在原帖中查看解决方案

0 项奖励
2 回复数
1,182 次查看
castel
Contributor III

Dear GPU team,

     If we couldn't use the Pixmap, the off-screen redering by multi-pbuffer + glReadPixels only can be fined to ~50 fps, and ~250fps by  native window, it seems the impact of GPU<=>CPU sync(glReadPixels) is up to 80%.

     if we use the pixmap rendering(fbCreatePixmap()=>eglCreatePixmapSurface(), and then readback from eglCopyBuffer()), we can get  100~ fps! but we can't resolve the "EGLNativePixmapType" structure so that getting the pixels couldn't be done.

     Our work is to produce a GL render for APP(work on native framebuffer on Linux, no X11) in 60fps, so we must try the native pixmap rendering for better FPS.

thanks.

0 项奖励
1,183 次查看
andre_silva
NXP Employee
NXP Employee

Hi Kang,

the  better way to do that is using virtual framebuffers, you can find a similar thread here that another customer was able to solve his problem using this approach?

https://community.freescale.com/message/340072#340072

the virtual framebuffer driver can be found here?

Freescale/linux-module-virtfb · GitHub

regards,

Andre

0 项奖励