(forwarded to users list only)

Hi Craig,
just as a clarification to the thread on the dev-list.

The general explanation is as follows.
A layer, if you want to display it, must at least have one buffer in video memory.
FRONTONLY has 1 buffer in video memory.
BACKVIDEO has 2 buffers in video memory.
BACKSYSTEM has 1 buffer in video and 1 buffer in system memory.

a buffer is an area of memory as big as the layer.

"video memory" and "system memory" are concepts which are not fixed in their implementation; in general, "video memory" relates to the RAM on your video card, and "system memory" to the DRAM on your motherboard. However, for e.g. unified memory architectures (such as are often seen in embedded systems) there is no need for a difference, although some implementations might do it anyway, e.g. for memory bookkeeping.

If you have a unified memory architecture, there is no performance distinction between BACKVIDEO and BACKSYSTEM. If you have to perform a lot of software operations (such as software blending) before calling Flip(), BACKSYSTEM might be best, while if you normally perform accelerated operations BACKVIDEO will be the better choice.

The explanation that you give below, is the way that the dfb-system implements the above rules.

hth,
Niels

Craig Matsuura wrote:
I want to get some clarification on the BACKSYSTEM, BACKVIDEO and FRONTONLY.


Here is my understanding:


BACKSYSTEM uses a virtual framebuffer of the screen (Some place in RAM) and DirectFB draws on this screen (surface), once a Flip is called the virtual framebuffer is copied to the Real/Visible framebuffer.


BACKVIDEO use the off screen video memory and draws in the screen (surface) that is off screen. When a Flip is called the framebuffer starting position is changed to the off screen position to make the screen visible. The next frame is draw on the off screen and the process is repeated.


FRONTONLY, draw directly to the visible framebuffer.



Thanks,
Craig



------------------------------------------------------------------------


Craig Matsuura - Principal Engineer
Control4
11734 South Election Road - Suite 200
Salt Lake City, UT 84020-6432
PH: 801-523-3161
FX: 801-523-3199
------------------------------------------------------------------------

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


--

.------------------------------------------.
| DirectFB - Hardware accelerated graphics |
| http://www.directfb.org/                 |
"------------------------------------------"
_______________________________________________
directfb-users mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-users

Reply via email to