This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Transparency keying in saLoopBackFbDev sample

Hi,

I am trying to enable transparency on the FBDev graphics device modifying saLoopBackFbDev sample.

I am capturing my PC screen via component in IO card of EVM8168. And trying to make "red window" transparent so I could see movie running via OMX behind that

I have added and run following function and call it before doing actual display :

static void enable_transparency(int fbdev_fd)
{
struct ti81xxfb_region_params regp;

__u32 key_rgb888=((0xFF << 16) | (0x00 << 8) | (0x00)); /*RGB888 format*/




if (ioctl(fbdev_fd, TIFB_GET_PARAMS, &regp) < 0) { perror("TIFB_GET_PARAMS\n");

exit(1); }
/* Enable the Transparency Keying */
regp.transen = TI81XXFB_FEATURE_ENABLE;
regp.transcolor = key_rgb888;
regp.transtype= TI81XXFB_TRANSP_LSBMASK_NO;

if (ioctl(fbdev_fd,TIFB_SET_PARAMS, &regp) < 0) {
perror ("TIFB_SET_PARAMS.\n");

exit(1);
}


if (ioctl(fbdev_fd, TIFB_GET_PARAMS, &regp) < 0) { perror("TIFB_GET_PARAMS\n");};

printf("Transparency = %d %x %d\n", regp.transen,regp.transcolor,regp.transtype);

}

The problem is that seems like the transparency setting is not applied at all.
What should be value for transcolor to make "0xFF0000" transparent for example ?

Thank You,
Vladik