Part Number: TMS320DM8127
In a previous thread - where I can't open up any new messages - :
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.
The characters that can be used for the OSD text are :
#define SWOSD_STRINGPATTERN "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz:; '/\\+-_()&$#.0123456789"
I understand that the files you mentioned contain the Y and UV data for these characters.
Thanks for this important information - I will try to build a new RED font which will be used when red lettering is needed. Is this the way to proceed?
Steps to generate Y and UV text files:
Need to write in sequence in SWOSD_STRINGPATTERN as per Y and UV files. Yes you can add new character but make sure you add it in SWOSD_STRINGPATTERN too.
For your last point, You can change font color runtime as it is changing font size as per resolution. Here you need to write new API/case to change color(change to red font buffer address).
Regards,PrashantPathpartner Technology Pvt. Ltd.
In reply to Prashant A:
In reply to Mechi Fendel:
We have prepared 4 colored fonts. I need to use these fonts for different screen resolutions.
Since memory is at a premium, I don't want to allocate more than is necessary. I was wondering why the fontDB is an array of 256 integers?
int fontDB1232_Y1, fontDB1232_UV1;
int fontDB1078_Y1, fontDB1078_UV1;
I do not have the code for the function SWOSD_createFontDatabase that creates the Font Database.
I do know that there are 77 characters -
SWOSD_createFontDatabase(fontDB1078_Y1, fontDB1078_UV1, (char *) SWOSD_STRINGPATTERN, &fontInfo);
I'm wondering if this is a set size that can't be changed? If I only want the 26 UPPERcase letters, can I save room in the fontDB arrays?
Yes, you can update SWOSD_STRINGPATTERN as per your requirement which will be used in memcpy(fontBuff1232_Y1, YData_1232_30_WFONT_PURE, SWOSD_STRINGWIDTH_1232_30 * SWOSD_CHARHEIGHT_1232_30);
Here SWOSD_STRINGWIDTH_1232_30 is SWOSD_STRINGPATTERN * SWOSD_CHARWIDTH_1232_30;
I think fontDB1078_UV1 is max size. you can try with less array size.
We succeeded in getting colored fonts...
The picture is not in focus, but the OSD writing is apparent on top and bottom rows.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.