On 11/17/2011 11:18 AM, Carlo Ferraresi wrote:
Is cairo_surface_flush() drawing anything?
Please send the log output. We might also disable/enable special omapfb code
in DirectFB.
Here is the log:
~~~~~~~~~~~~~~~~~~~~~~~~~~| DirectFB 1.4.11 |~~~~~~~~~~~~~~~~~~~~~~~~~~
(c) 2001-2010 The world wide DirectFB Open Source Community
(c) 2000-2004 Convergence (integrated media) GmbH
----------------------------------------------------------------
(*) DirectFB/Core: Single Application Core. (2011-02-08 22:29)
(*) Direct/Memcpy: Using libc memcpy()
(*) Direct/Thread: Started 'VT Switcher' (-1) [CRITICAL OTHER/OTHER 0/0]
<8388608>...
(*) Direct/Thread: Started 'VT Flusher' (-1) [DEFAULT OTHER/OTHER 0/0]<8388608>
...
(*) DirectFB/FBDev: Found 'omapfb' (ID 0) with frame buffer at 0x80515000,
1024k(MMIO 0x00000000, 0k)
(*) Direct/Thread: Started 'Linux Input' (-1) [INPUT OTHER/OTHER 0/0]<8388608>
...
(*) DirectFB/Input: lizard-keypad 0.1 (directfb.org)
(*) Direct/Thread: Started 'Hotplug with Linux Input' (-1) [INPUT OTHER/OTHER
0/0]<8388608>...
(*) DirectFB/Input: Hot-plug detection enabled with Linux Input Driver
(*) Direct/Thread: Started 'Keyboard Input' (-1) [INPUT OTHER/OTHER 0/0]
<8388608>...
(*) DirectFB/Input: Keyboard 0.9 (directfb.org)
(*) DirectFB/Graphics: Generic Software Rasterizer 0.6 (directfb.org)
(*) DirectFB/Core/WM: Default 0.3 (directfb.org)
(*) FBDev/Mode: Setting 320x240 RGB16
(*) FBDev/Mode: Switched to 320x240 (virtual 320x240) at 16 bit (RGB16), pitch
640
cairo_surface_flush don't show anything. Maybe it's my fault when I define
or when I use the surface. There's no way to enable DSFLIP_ONSYNC on omapfb?
What's the correct way to make a flippable cairo_directfb_surface??
If I do something like this, the result is the same:
dsc.caps=DSCAPS_PRIMARY | DSCAPS_FLIPPING;
Should be fine.
while(1)
{
surface=cairo_directfb_surface_create (dfb, primary);
cr=cairo_create(surface);
//DRAW SOMETHING WITH CAIRO
usleep(100000);
cairo_surface_flush(surface);
primary->Flip(primary,NULL,0);
cairo_destroy(cr);
cairo_surface_destroy(surface);
cr=NULL;
surface=NULL;
}
If you clear/render to the whole surface each time it should work.
--
Best regards,
Denis Oliver Kropp
.------------------------------------------.
| DirectFB - Hardware accelerated graphics |
| http://www.directfb.org/ |
"------------------------------------------"
_______________________________________________
directfb-dev mailing list
directfb-dev@directfb.org
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-dev