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.

TMS320DM8127: Looking for information for programming OSD

Part Number: TMS320DM8127

Hello,

I've been successful in displaying text in the different areas of the display using the OSD. I need to display a 64-character long string in the upper-left (WINDOW_ONE) and control the color of background and text in WINDOW_TWELVE. 

In the attached User Guide on OSD (On Screen Display) there is mention of source files and examples for the iss/alg/swosd module. This is for the version iss_02_xx_xx_xx (see screen shot from page 17 below).

In the current version of IPNC_RDK 3.8, with iss_03_08_00_00 – which has the same file structure, there are only inc and lib directories in ti_tools/iss_03_80_00_00/packages/ti/psp/iss/alg/swosd/ - no source and no documents or examples.

I was wondering if we can be supplied with either the older version (iss_02_xx_xx_xx) and the source and docs for the swosd or the equivalent for the current version distributed with the IPNC_RDK.

Thanks,

Mechi

SoftwareOSD_UserGuide.pdf

  • Hi,

    The same has been removed for iss_03xx_xx_xx.

  • Thanks Anuj,

    I figured as much.

    That's why I'm asking where I can get the old examples and documents, or an updated document which can explain how to control the color of the OSD text, placement, etc.

  • To make my question more specific -

    Page 15 in above attached OSD manual:

    In user defined transparency mode there is no restriction on the color of the OSD bitmap image that means user can make OSD bitmap image with any colors.

    In this mode, if pixel value of OSD bitmap window is within the range of transparency value plus/minus transparency range, the pixel becomes transparent. The pixel value of live video data remains same.

    In the above attached OSD manual, on page 16:

    5.11.2 User defined Transparency Enable
    Steps to enable user defined transparency:
    1. Set SWOSD_BmpWinPrmuserTransparency = SWOSD_RBOOLTRUE for each OSD window.
    2. Set SWOSD_BmpWinPrmtransperencyEnable = SWOSD_BMPWINENABLE for each OSD window.
    3. Set SWOSD_BmpWinPrmtransperencyVal for each OSD window.
    4. Set SWOSD_BmpWinPrmtransperencyRange for each OSD window.


    The original values in the code are 

    #define SWOSD_OSDWHITETRANSVAL          0x80FF
    #define SWOSD_OSDWHITETRANSRANGE   0x48
    #define SWOSD_OSDBLACKTRANSVAL         0x00
    #define SWOSD_OSDBLACKTRANSRANGE   0x48

    Even though I try to change the values, I'm not successful in getting other colors other than black and white.

    I suspect that the code in the SWOSD_MakeOsdwinstring (which is in the library and i don't have the source) only deals with Y and not the UV (as I saw in the DrawRectangle functions that I fixed and posted on this forum).

    Again - any input or direction would be appreciated.

    Thanks,

    Mechi

  • Hi,

    Which version of IPNCRDK are you using v3.8 or v3.9?

  • Hi,

    Please check the below document available with IPNC 3.8 package.

    Collaterals/OSD/SoftwareOSD_UserGuide.pdf

  • Thanks - but as you can see, the same manual is attached in one of the earlier emails in this conversation.

    On pages 15-16 in attached document:

    5.10 User Defined Transparency versus Fixed Transparency

    5.10.1 User Defined Transparency

    In user defined transparency mode there is no restriction on the color of the OSD bitmap image that means user can make OSD bitmap image with any colors. In this mode, if pixel value of OSD bitmap window is within the range of transparency value plus/minus transparency range, the pixel becomes transparent. The pixel value of live video data remains same.

    Otherwise the pixel value of OSD bitmap image is assigned to corresponding pixel value of live video data. This mode needs checking of each pixel of OSD bitmap images and hence takes long time with increase in the CPU load.

    5.11.2 User defined Transparency Enable

    Steps to enable user defined transparency:

    1. Set SWOSD_BmpWinPrmàuserTransparency = SWOSD_RBOOLTRUE for each OSD window.

    2. Set SWOSD_BmpWinPrmàtransperencyEnable = SWOSD_BMPWINENABLE for each OSD window.

    3. Set SWOSD_BmpWinPrmàtransperencyVal for each OSD window.

    4. Set SWOSD_BmpWinPrmàtransperencyRange for each OSD window.

     

    I’ve taken all of the steps mentioned above, and still all of the OSD text is displayed white on a black background.

    I suspect that the UV code for the colors was omitted in the library function, and that’s why I would like the sources so that I can build my own library function to color the text. I did something similar when we had to display red rectangles and the color element was ignored by the DrawLine function…I had to add it in. 

    In the attached document on OSD there is mention of source files and examples for the iss/alg/swosd module. This is for the version iss_02_xx_xx_xx.

    In the current version of IPNC_RDK that we have, with iss_03_08_00_00 – which has the same file structure, there are only inc and lib directories in ti_tools/iss_03_80_00_00/packages/ti/psp/iss/alg/swosd/ - no source and no documents or examples.

     

    I was wondering if we can be supplied with either the older version (iss_02_xx_xx_xx) and the source and docs for the swosd or the equivalent for the current version distributed with the IPNC_RDK.

    From page 17 in the attached:

     

     

  • Hi Mechi,

    There is only white color font having different size with YUV420SP Y and UV files which are available at Source/ipnc_rdk/ipnc_mcfw/mcfw/src_bios6/links_m3vpss/alg/sw_osd/fonts/.

     

    You can use any color font by generating  YUV420SP Y and UV separate files and add it in Source/ipnc_rdk/ipnc_mcfw/mcfw/src_bios6/links_m3vpss/SRC_FILES.MK SRCS_SWOSD.

    Regards,

    Prashant

  • For more details and instructions for using OSD colored text - this thread is continued in

  • Well building those FONT files is not a small task - but we finally figured it out - and now I have to build different font arrays for different sizes and different colored fonts...

    But at least the idea was successful - as can be seen in the attached screen shot of IPNC video with OSD red text. 

    Thanks for showing us the way...