hi,

i have a suggestion for the directfb framework. currently directfb supports 
double buffering with a front_buffer and a back_buffer and when a surface_lock 
is called the back_buffer is locked and the new frame gets written to the 
back_buffer. so with the current system decoding of video works likes this, a 
frame gets decoded into a buffer in system memory and then it is copied to the 
back_buffer and then flip and then the next frame starts. so for each frame 
there are 2 accesses, one for decoding and one for copying to the framebuffer.

in a memory bandwidth limited system (such as a shared memory system) this is 
a performace bottleneck as cpu time is being spent on copying frames. a more 
efficient way is to decode the frame straight into the framebuffer, it will 
only be more efficient if we only write to the framebuffer and not read from 
it. this way we skip the frame copy completely freeing up the cpu to do other 
things.

depending on the video codec, we sometimes need to buffer our output so we 
need to have multiple "back_buffers" if you like and we need to be able to 
flip these back_buffers to the front_buffer. i would like to implement this 
for directfb and currently there are 2 ways to go about it (i haven't thought 
of any more) and both of them will change the directfb API so i would like to 
have some feedback.

the first method is to implement multiple buffer support into directfb 
comletely so when flip is called we can tell if which back_buffer to flip. 
this way is quite intrusive and can be messy to implement.

the second way is to get the application to manage all the back_buffers and 
add a function to the directfb API called SetBackBuffer which sets the 
back_buffer in directfb to a back_buffer managed by the application. this 
method is less intrusive as only one function call is added and all the buffer 
management is done in the app which is probably better as not all apps need 
multiple back_buffers.

please let me know what you guys think and whether you think directfb needs 
this new feature and which method you think is better.

cheers,

alex


-- 
Info:  To unsubscribe send a mail to [EMAIL PROTECTED] with 
"unsubscribe directfb-dev" as subject.

Reply via email to