> It doesn't work for me. Tried it for two days without success.

As it stands, LEVELS is only supported on the video layer.  See output
from dfbinfo:

Screen (00) FBDev Primary Screen            (primary screen)
   Caps: VSYNC POWER_MANAGEMENT

     Layer (00) VIA CLE266 Graphics             (primary layer)
        Type:    GRAPHICS
        Caps:    SURFACE OPACITY ALPHACHANNEL SRC_COLORKEY BRIGHTNESS CONTRAST S
ATURATION

     Layer (01) VIA Unichrome Video
        Type:    GRAPHICS VIDEO STILL_PICTURE
        Caps:    SURFACE OPACITY SCREEN_LOCATION DEINTERLACING DST_COLORKEY LEVE
LS FIELD_PARITY SCREEN_POSITION SCREEN_SIZE

     Layer (02) VIA Unichrome DVD Subpicture
        Type:    GRAPHICS VIDEO STILL_PICTURE
        Caps:    SURFACE OPACITY

So what you need to do currently is enable an alpha channel on the
primary (OSD) layer and use SetLevel(-1) on the video overlay layer.

Having read Denis's recent description of the LEVELS function in
another thread, I suspect the current implementation is not complete.
I had understood that if a layer supported LEVELS, you could position
it above or below the primary using SetLevel(-1) or SetLevel(1) as
appropriate.  However, Denis's description seems to imply that if two
surfaces can be swapped over, both should support LEVELS and the
gfxdriver should have a fixed range of levels that it recognises, just
-1 and 0 or 0 and 1 in this case.  Is that correct?

Mark

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

Reply via email to