Yes this is a known problem.

Right now the GTK directfb is triple buffered right now with the backing
buffer forced to a ARGB surface. I'm betting your 16bpp.

The big todo for 16bpp is to support it directly in cairo this is
easily doable.  Next is to get the rendering ops to run directly on
top of directfb ops the huge showstopper is the lack of a blit with a
alpha mask so once I implement and masked blit then everything can be
accelerated.

With that said if your doing custom drawing and even if you want to
use cairo if you create the surface your self and manage the lifetime
i.e create your own cairo context and draw then release it will
signifcantly improve performance right mixed cairo and directfb
drawing calls cause a huge number of full screen bufferes to be
created and destroyed.

My plan is to take some of the core Xrender code and convert it to
directfb plus and alpha mask blit and prob a bitmask blit and get that
directly into directfb drawing. At that point I have enough primitives
to fully implement cairo at the surface bit depth and only rare ops
will cause a secondary surface to be created. Also if you look at the
driver
glyphs are also not drawing directly which is a real performance killer.

The current driver basically locks the surface creates secondary
surface at ARGB draws to that then blits it to the directfb backing
buffer which is then finally blitted to the front buffer :(

I know what to do here to fix it and I want to but I have to find the
time to really get into this if ever there is a need for someone in
the opensource community to step up and help out then here is your
chance.


Mike








On 5/10/06, Alexander Gehlert <[EMAIL PROTECTED]> wrote:
> Hi,
>
> I'm developing a Gtkmm application, the goal of the application is to
> run on a X environment and also under a FrameBuffer.
> In the program I have to do a lot of screen updates, means I need a good
> refresh rate.
> So I simply update my buffer to the screen with gdk_draw_rgb_image every
> time I need to.
> On X I have no problems at all, under the DirectFB, I'm not able reach
> enough Frames per second!
>
> So I created a test program to benchmark the fps, the program does only
> update the whole screen all the time by I resolution of 1024x768 I was able
> to reach 5 fps, but thats really not enough cause, I didn't do other
> things like I would have to do in my real application...
>
> Is this a know problem?
>
> Where is the problem or bottle neck, Gtk or DirectFB...?
> Any ideas to solve that?
>
> (The system is: Celeron M 600MHz, 256MB, Intel 855GME Chipset with
> Integrated Graphic Controller)
>
> Thanks in advance
> Kind regards
>
> Alex
>
> _______________________________________________
> directfb-dev mailing list
> [email protected]
> http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev
>

_______________________________________________
directfb-dev mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev

Reply via email to