Hi,

Does anyone of you out there use davinci gfx driver?

1.
Do you have HD output resolutions?
I can only get the driver to output 640x480

2.
Do you have (or can point me to) any example application code for making the 
OSDWIN0 fully transparent?

3.
Do you have (or can point me to) any example application code for getting 
transparency using a PNG picture's alpha channel.

When I run a program using this function below, DirectFB prints the 
signal/error msg:
 (*) Direct/Interface: Loaded 'PNG' implementation of 'IDirectFBImageProvider'.
(!) [ 2865:    0.000] --> Caught signal 11 (at 0xc, invalid address) <--


/*
* Loading an image, and taking alpha channel info into account
*/
void osdViewT(const char *filename, int x, int y) {

                             /*
                             * Loading an image is done with an Image Provider.
                             */
                             IDirectFBImageProvider *provider;

                             /*
                             * First we need to create an Image Provider by 
passing a filename.
                             * DirectFB will find (or not) an Image Provider 
for the file type.
                             */
                             DFBCHECK (dfb->CreateImageProvider (dfb, filename, 
&provider));

                             /*
                             * Get a surface description from the provider. It 
will contain the width,
                             * height, bits per pixel and the flag for an 
alphachannel if the image has
                             * one. If the image has no alphachannel the bits 
per pixel is set to the
                             * bits per pixel of the primary layer to use 
simple blitting without pixel
                             * format conversion.
                             */
                             DFBCHECK (provider->GetSurfaceDescription 
(provider, &dsc));
                            dsc.pixelformat = DSPF_ARGB;

                             /*
                             * Create a surface based on the description of the 
provider.
                             */
                             DFBCHECK (dfb->CreateSurface( dfb, &dsc, &myimage 
));

                             /*
                             * Let the provider render to our surface. Image 
providers are supposed to
                             * support every destination pixel format and size. 
If the size differs the
                             * image will be scaled (bilinear). The last 
parameter allows to specify
                             * an optional destination rectangle. We use NULL 
here so that our image
                             * covers the whole logo surface.
                             */
                             DFBCHECK (provider->RenderTo (provider, myimage, 
NULL));

                             /*
                             * Release the provider, we don't need it anymore.
                             */
                             provider->Release (provider);

                             /*
                             * Blit the logo vertically centered with "i" as 
the X coordinate.
                             * NULL means that we want to blit the whole 
surface.
                             */
                             
primary->SetBlittingFlags(primary,DSBLIT_BLEND_ALPHACHANNEL);
                             DFBCHECK (primary->Blit (primary, myimage, NULL, 
x, y));

                             /*
                             * Flip the front and back buffer, but wait for the 
vertical retrace to
                             * avoid tearing.
                             */
                             DFBCHECK (primary->Flip (primary, NULL, 
DSFLIP_BLIT));

                             /*
                             * Release the image.
                             */
                             logo->Release (logo);

}


Any help 100% appreciated.


Regards,
Andreas


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

Reply via email to