Arm Community
Site
Search
User
Site
Search
User
Support forums
Mobile, Graphics, and Gaming forum
EGL Pixbuffer is slow
Jump...
Cancel
Locked
Locked
Replies
9 replies
Subscribers
137 subscribers
Views
6224 views
Users
0 members are here
Mali-GPU
Mali-400
Options
Share
More actions
Cancel
Related
How was your experience today?
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
EGL Pixbuffer is slow
Ahmed Tolba
over 12 years ago
Note: This was originally posted on 25th February 2013 at
http://forums.arm.com
Hi All,
I'm having a 1k*1k*rgb texture that is rendered using shader and I want to copy the pixels to buffer so that I use Opencv with it. I tried glreadpixels and its very
slow, I tried Pixbuffer of Egl, it has the same perforamance its very slow 7FPS. I'm using Mali400 on Exynos4412
Here is the code
Please view it in pastebin, there is a problem with code posting here
http://pastebin.com/TwrtF0EG
Parents
Chris Varnsverry
over 12 years ago
Note: This was originally posted on 12th July 2013 at
http://forums.arm.com
Hi Ahmed,
On GLES3, this can be done with PBO's bound to the GL_PIXEL_PACK_BUFFER target, causing glReadPixels to write to that pbo instead of returning pixel data to the application, which avoids the pipeline stall and flush. The fence is used to signal to the application when this operation has completed and the buffer can be mapped to retrieve the pixel data. There is some sample code in the works but I can't give a date on when this will be available unfortunately. For GLES2, I think for now the only option is pixmaps, but the fence is still supported.
Hope this helps,
Chris
Cancel
Vote up
0
Vote down
Cancel
Reply
Chris Varnsverry
over 12 years ago
Note: This was originally posted on 12th July 2013 at
http://forums.arm.com
Hi Ahmed,
On GLES3, this can be done with PBO's bound to the GL_PIXEL_PACK_BUFFER target, causing glReadPixels to write to that pbo instead of returning pixel data to the application, which avoids the pipeline stall and flush. The fence is used to signal to the application when this operation has completed and the buffer can be mapped to retrieve the pixel data. There is some sample code in the works but I can't give a date on when this will be available unfortunately. For GLES2, I think for now the only option is pixmaps, but the fence is still supported.
Hope this helps,
Chris
Cancel
Vote up
0
Vote down
Cancel
Children
No data