The attached file contains the changes that have to be made to the V4L2 spec in order to document the local and global alpha capabilities to blend/clip the image in an overlay. These changes will go into kernel 2.6.22.
Regards, Hans
Documentation of local/global alpha fbuf features. ioctl VIDIOC_G_FBUF, VIDIOC_S_FBUF: add the following capabilities to Table 2 (Frame Buffer Capability Flags): V4L2_FBUF_CAP_LOCAL_ALPHA 0x0010 The device supports clipping/blending using the alpha channel of the framebuffer. V4L2_FBUF_CAP_GLOBAL_ALPHA 0x0020 The device supports blending through a single global alpha value for the whole framebuffer. And add the following flags to Table 3 (Frame Buffer Flags): V4L2_FBUF_FLAG_LOCAL_ALPHA 0x0008 Use the local alpha values set in the alpha channel of the framebuffer for blending/clipping the image. V4L2_FBUF_FLAG_GLOBAL_ALPHA 0x0010 Use the global alpha value to blend the framebuffer with the image. Section 4.2.3 (Setup): change the following: 'A driver may support any (or none) of three clipping methods:' -> 'A driver may support any (or none) of five clipping methods:' And add the following two clipping methods: 4. The framebuffer has an alpha channel that can be used to clip or blend the image with the framebuffer. 5. The framebuffer has a single global alpha value that can be used to blend the image with the framebuffer contents. Section 4.2.4 (Overlay Window): add the following to Table 4-1 (struct v4l2_window): __u8 global_alpha The global alpha value used to blend the image with the framebuffer. Only valid if the global alpha feature has been negotiated. A global alpha value of 255 means the framebuffer is opaque (the image is invisible), a value of 0 means the framebuffer is transparent (only the image is visible).
_______________________________________________ ivtv-devel mailing list ivtv-devel@ivtvdriver.org http://ivtvdriver.org/mailman/listinfo/ivtv-devel