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 with Graphics Pipelines in DM8168

Hi,

We are using DM8168 board, and we are runing EZSDK 5_05_02_00. We are taking camera through /dev/video0 path. Now we want to add an OSD using Graphics Pipelines, with the Graphics SDK 4_04_00_02.

We are able to display OSD over the video, with graphics OSD on /dev/fb0.  No we need transparency for the OSD with the video which is in background.

How to achieve this ?

  • You could set the alpha value in the osd/graphics pipeline and get the transparency you want.

    Regards,
    Brijesh
  • Hi Brijesh, Thank you for the replay.


    We are able to make transparency in graphics pipeline. ie, if we make multiple OSDs or graphic objects in graphics pipeline, they can be made transparent with each other.

    But we want the transparency with respect to the underlying video, which is in /dev/video path, and the OSD is in /dev/fb0. We are getting mixed video on hdmi.

    We need the OSD like a watermark on our video, which is our requirement.

    When we put transparency to the OSD texts on Graphics SDK, the actual color of the OSD is changed to black.

    1. two OSD objects test:

    Like above Picture. The Yellow color OSD smiley object is transparent with respect to the OSD text 'Alpha_Blending_Test'. Both are in /dev/fb0.

    But we are not able to get the transparency with the underlying video which is in /dev/video path.

    2: Single OSD object test:

    In the below picture, we had made an OSD text with alpha zero. But the text is appears in full dark color.

    This is our actual issue. The text displayed is printed using mPrint3D command in Graphics SDK. with Alpha 0. How to achieve its transparency with underlying camera video ?

  • Hi Arun,

    In the FbDev params, you need to enable alpha blending and set the alpha value for the fbdev.

    Regards,
    Brijesh
  • Hi Brijesh,

    Let me make it clear of our issue and our requirement:

    We are able to make graphics objects generated with GPU and is blending with the camera video. We need to get transparency for this graphics objects generated with GPU. When we changed alpha values for the Graphics objects (let us say alpha = 1 in a scale of 255, with alpha 1 is transparent and alpha = 255 is opaque ) the transparency effect is not getting with respect to camera video, but is happening with respect to the default framebuffer color  which is by default in black (changeable). What we required is to make the graphics objects transparent with the video so that it appear like a watermark on the camera video.

    Is this option available ? If it can be done, can you please provide information how this can be done ?

    We understand that there is transparency block/option available in SGX 350 GPU on the DM8168 SOC, which we are utilizing to make multiple graphic objects (generated with GPU only ) transparent. Our requirement is to make these objects transparent with respect to the camera video. Whether we need to pass this video frame information to the GPU for getting the transparency ? Or any other methds possible ?