|
Roadmap |
Site sponsored by
IGEL
|
||
|
|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [directfb-dev] Re: [directfb-users] PyMedi CLE266 DVD player blitting problems
Quoting Dmitry Borisov: > Guys, > I just finished HW MPEG decoder for CLE266 chipset under PyMedia project. It > uses pydfb wrapper to allocate vram and display the movie. > The decoder works just fine, 100fps with no problem. But when I enable > blitting the HW surface to the overlay it slows down to 25fps. > Here's what I do: > Initialize directfb > Create primary surface( layer 0 ) > Create layer 1( overlay ) with type PF_YV12 > Create 4 Surfaces with type PF_YV12 > When HW decoder is completed I do overlay->blit( surface[ i ] ) > So my questions are: > 1. Is it the right way of getting HW YUV surface to be displayed ? > 2. Is there any way to do HW blitting instead of reading VRAM on CLE266 ? I'm not sure if the CLE266 driver implements blitting from YUV to YUV, but it should be simple to add as, apart from the number of bytes per pixel, the precise format doesn't matter if the chip just has to copy pixels. The most effective way would be to not use blitting, but have the overlay surface containing the four buffers. As each frame is decoded, the surface would be flipped which just rotates the buffers and makes the previously filled one visible. You shouldn't have any noticable CPU usage with this method (<0.1%). -- Best regards, Denis Oliver Kropp .------------------------------------------. | DirectFB - Hardware accelerated graphics | | http://www.directfb.org/ | "------------------------------------------" Convergence GmbH
|
|
| directfb.org |
|
Development |
|
Old Archives |