Le 05/12/2010 17:55, Lionel Landwerlin a écrit :
Hello David,
Concerning the surface pool to override, I did something like that a few
months ago. I added a "null" system into directfb which always returns
that it isn't possible to allocate a surface (look at the attached
patch, it probably do not apply "as it", but you've got the idea). That
forces the core of directfb to look at others available pools. Then you
have to write a gfxdriver that provides it's own surface allocator (the
davinci own is a good example) and each time an application needs a new
surface/window, the driver's allocator will be called.
You can probably reach the same behavior with framebuffer's size close
to 0.
Many thanks, this is definitely helpful. I will give it a try if I can't
manage to use Denis's EGL system module.
Concerning the GLES blitter implementation, you might want to have a
look at the intel CE platforms. They provides a modified directfb
version which allows you to select between cpu(probably SSEE/MMX
implementation)/gpu(GL implementation) acceleration for the directfb
API.
This is indeed an Intel CE target I want to address, and yes they have a
dual-mode directfb driver.
I couldn't manage to obtain good performances with the gpu accelerated
mode however: I don't have the source code for their driver, but I think
it may be due to the fact that they force the gpu to flush output to
pixmaps before it is processed by directfb (this is exactly what I want
to avoid by using an EGL surface pool).
The EGL API is always bound to an underlaying "windowing system", which
may be very basic (some vendor provides a framebuffer as windowing
system, so you just have give the buffer's pointer to EGL...). I
seriously doubt you will be able to reach a common code/windowing-system
on this, usually chipset vendors deliver a bunch of .so libs as OpenGL
library with a bunch of headers and can't change the underlaying
allocation API which is often proprietary...
In a perfect world the EGL API would sit on top of DirectFB, so you
would be able to "cast" already existing buffers into GL textures.
Yes, in my case, the EGL API relies on Intel GDL.
_______________________________________________
directfb-dev mailing list
directfb-dev@directfb.org
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev