Brett Keating wrote: > Hi, > > I have a custom framebuffer implementation which requires that I flush > buffers after every update to the screen. I do this by calling fsync() > somewhere in the code. > > I got things working by putting my fsync() call in the WaitForVSync call > in the standard fb implementation. Unfortunately it looks like this gets > called on every vsync... when I call fsync() that often, I get flicker > on the screen. > > What I'd like to do is only call fsync() when something has changed. > > I'm using GTK+ over DirectFB, and it's possible that this is better > handled at the GTK+ layer, but I'd prefer to handle it at the DirectFB > layer if possible. > > Is there a good place for me to put an fsync() call in the DirectFB > code, so that it only gets called when something has changed? Or does > DirectFB not have that kind of knowledge?
Please look at dfb_layer_region_flip_update() which is used after every update to the window stack. It calls the display layer driver function UpdateRegion() which is not implemented by the fbdev system module. It only implements FlipRegion(). -- Best regards, Denis Oliver Kropp .------------------------------------------. | DirectFB - Hardware accelerated graphics | | http://www.directfb.org/ | "------------------------------------------" _______________________________________________ directfb-dev mailing list [email protected] http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev
