Stefan Lucke schrieb:
> On Donnerstag 14 September 2006 03:32, Stefan Lucke wrote:
>> Hi,
>>
>> for colorkeying did not work with the following onboard graphic:
>> 00:02.0 VGA compatible controller: Intel Corporation 82852/855GM Integrated 
>> Graphics Device (rev 02)
>>
>> Softdevice OSD was only shown in that area where no video was drawn.
>> Base thread of this discussion (in german) is here:
>> http://www.vdr-portal.de/board/thread.php?threadid=54640
>>
>> Allthough it is still unresolved for original reporter, the attached patch 
>> solves the issue for me.
>> Changes are similar to code from Xorg:
>> http://webcvs.freedesktop.org/xorg/driver/xf86-video-i810/src/i830_video.c?annotate=1.22
>> line 508 .
> 
> So here come a modified second version, which allows to choose the required 
> PIPE
> for the videolayer via directfbrc. Just place "i8xx_overlay_pipe_b" in 
> directfbrc and
> videolayer is redirected to PIPE_B .
> 
> An additionl modification is done to set the colorkey for other pixel depths.
> Colorkey register holds an RGB32 value and set bits in mask register
> specify those which are _not_ relevant for colorkeying.

Thanks! I committed it to CVS with a small fix.

> ? gfxdrivers/i830/dfb-i830-colorkey-02.diff
> Index: gfxdrivers/i830/i830_overlay.c
> ===================================================================
> RCS file: /cvs/directfb/DirectFB/gfxdrivers/i830/i830_overlay.c,v
> retrieving revision 1.5
> diff -U 3 -r1.5 i830_overlay.c
> --- gfxdrivers/i830/i830_overlay.c    1 May 2006 18:51:52 -0000       1.5
> +++ gfxdrivers/i830/i830_overlay.c    23 Sep 2006 15:36:40 -0000
> @@ -62,7 +62,7 @@
>  
>  #include <gfx/convert.h>
>  
> -
> +#include <misc/conf.h>
>  
>  #define I830_OVERLAY_SUPPORTED_OPTIONS (DLOP_DST_COLORKEY)
>  
> @@ -765,17 +765,38 @@
>       /*
>        * Destination color keying.
>        */
> +     regs->DCLRKV = PIXEL_RGB32 (config->dst_key.r, config->dst_key.g, 
> config->dst_key.b );
>  
> -     primary_format = dfb_primary_layer_pixelformat();               
> <-------------------------
> -
> -     regs->DCLRKV = dfb_color_to_pixel( primary_format,
> -                                        config->dst_key.r, 
> config->dst_key.g, config->dst_key.b );
> +     switch (DFB_COLOR_BITS_PER_PIXEL( primary_format )) {

That primary_format was no longer initialized, see <-----.

-- 
Best regards,
   Denis Oliver Kropp

.------------------------------------------.
| DirectFB - Hardware accelerated graphics |
| http://www.directfb.org/                 |
"------------------------------------------"

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

Reply via email to