/*************************************************************************** * Copyright (c) 2002-2010, Broadcom Corporation * All Rights Reserved * Confidential Property of Broadcom Corporation * * THIS SOFTWARE MAY ONLY BE USED SUBJECT TO AN EXECUTED SOFTWARE LICENSE * AGREEMENT BETWEEN THE USER AND BROADCOM. YOU HAVE NO RIGHT TO USE OR * EXPLOIT THIS MATERIAL EXCEPT SUBJECT TO THE TERMS OF SUCH AN AGREEMENT. * ***************************************************************************/ #include #include #include "bsettop.h" #include "ministd.h" #include "708_test_string.h" #include "b_dcc_lib.h" #include "bwin.h" #include "b_softgfx_lib.h" #define CC_DATA_BUF_SIZE 128 #define MAX_INPUT_CHARS 128 #define MAX_LENGTH_FILE 64 /* max num characters for a playback stream file name */ #define HDMI_DISPLAY 1 #define COMPOSITE_DISPLAY 0 //#define FORMAT_480I #ifdef FORMAT_480I #define SCALE_480I_FONTS #endif typedef struct CCTest_InputParameters { B_Dcc_Type ccMode; uint32_t ccService; uint32_t channelChange; uint32_t changeDisp; bool dispOn; /* display on or off (allows sharing framebuffer with application) */ bool exit; } CCTest_InputParameters; typedef enum CCTest_Input_Source { CCTest_Input_Streamer, CCTest_Input_File, CCTest_Input_QAM, CCTest_Input_VSB, CCTest_Input_Synth } CCTest_Input_Source; typedef struct CCTest_g_sourceParams { CCTest_Input_Source inputSrc; uint32_t testNum; uint32_t video_pid; uint32_t audio_pid; uint32_t qam_mode; uint32_t symbolrate; unsigned int frequency; } CCTest_g_sourceParams; /* ** Display mode constants. */ typedef enum CCTest_Display_Modes { CCTest_Display_480i, CCTest_Display_480p, CCTest_Display_720p, CCTest_Display_1080i, CCTest_Display_Max_Size }CCTest_Display_Modes; int initialize(void); void shutdown(void); void loadFonts( BDCC_WINLIB_Handle g_WindowLib, uint32_t *scaleFactor ); void printHelpInfo( void ); int parseCmdStr( const char *pszInputStr ); extern BDCC_Error B_Dcc_SendTestString( B_Dcc_Handle hEngine, const unsigned char *pTestSt, const unsigned int TestStLen ); int QAMTune(void); /* ** Global variables. */ static CCTest_g_sourceParams g_sourceParams; #define TAB_CH 0x09 #define SPACE_CH 0x20 #define NextWhiteSpace(z) while (*z != TAB_CH || *z != SPACE_CH) z++; /* save a long switch statement */ static uint32_t gDisplayWidth[4] = {720, 720, 1280, 1920}; static uint32_t gDisplayHeight[4] = {480, 480, 720, 1080}; static uint32_t gCaptionColumns[4] = {32, 32, 42, 42}; /* handles, global for convenience */ static B_Dcc_Handle g_ccEngine = NULL; static BDCC_WINLIB_Handle g_WindowLib = NULL; static bdisplay_t display = NULL; static bgraphics_t graphics = NULL; static uint32_t g_DisplayMode = CCTest_Display_480i; static B_SoftGfxHandle g_Gfx = NULL; static bsurface_t g_framebuffer1, g_framebuffer2; static bwin_engine_t g_bwinEngine = NULL; CCTest_InputParameters g_UserParams; bool g_bUserInputValid; static int display_type; static bdecode_t decode; static boutput_hdmi_settings hdmisettings; static boutput_hdmi_t hdmi; static bdisplay_settings settings; static btuner_t tuner = NULL; static bdecode_window_t window; static bstream_t stream; static bool bQamTune = false; static bool bDccApp = false; int main( int argc, char *argv[] ) { char chInput[ MAX_INPUT_CHARS ]; int bRet = -1; BKNI_Memset( &g_sourceParams, 0, sizeof ( CCTest_g_sourceParams )); printf("Please set Display HDMI/COMPOSITE (1/0)?\n"); memset(chInput, MAX_INPUT_CHARS, 0); ngets( chInput, MAX_INPUT_CHARS ); sscanf(chInput, "%d", &bRet); if (bRet) { #ifndef FORMAT_480I g_DisplayMode = CCTest_Display_1080i; #else g_DisplayMode = CCTest_Display_480i; #endif display_type = HDMI_DISPLAY; printf("HDMI display is set\n"); } else { display_type = COMPOSITE_DISPLAY; g_DisplayMode = CCTest_Display_480i; printf("COMPOSITE display is set\n"); } if (initialize()) { printf("Fatal Error during initialization\n"); return -1; } /* ** Paremeters for the thread which handles user input. ** ( medium priority, default stack size, thread name ) */ TESTSTART: printHelpInfo(); bRet = -1; do { (void)memset(chInput, MAX_INPUT_CHARS, 0); (void)ngets( chInput, MAX_INPUT_CHARS ); bRet = parseCmdStr( chInput ); if ( -1 == bRet ) { printHelpInfo(); } else if ( 0 == bRet ) { break; } }while(1); if( CCTest_Input_Synth == g_sourceParams.inputSrc ) { /* using compiled in test strings from test_string.h */ int firstTest, lastTest; uint32_t periodic; if ( bQamTune ) { bQamTune = false; bdecode_stop(decode); bstream_close(stream); } bDccApp = true; firstTest = (g_sourceParams.testNum == 0) ? 1 : g_sourceParams.testNum; lastTest = (g_sourceParams.testNum == 0) ? BDCC_MAX_TESTS : g_sourceParams.testNum; do { periodic = 5; printf("TEST %d\n", firstTest); B_Dcc_SendTestString(g_ccEngine, Dtvcc708Stream[firstTest - 1] , Dtvcc708StreamLength[firstTest - 1]); BKNI_Sleep(1000); while(periodic--) { B_Dcc_Periodic(g_ccEngine); BKNI_Sleep(1000); } } while(firstTest++ < lastTest); BKNI_Sleep(5000); } else if ( CCTest_Input_QAM == g_sourceParams.inputSrc ) { QAMTune(); } goto TESTSTART; return 0; } int parseCmdStr( const char * pszInputStr ) { static unsigned char ibuffer[10]; if ( !strcmp(pszInputStr, "-testall" ) ) { g_sourceParams.inputSrc = CCTest_Input_Synth; printf("--- Test String Selected\n"); g_sourceParams.testNum = 0; /* test all flag */ } else if ( !strncmp(pszInputStr, "-test", strlen("-test") ) ) { char * pWorker = NULL; pWorker = (char *)pszInputStr; pWorker = pWorker+ strlen("-test"); g_sourceParams.inputSrc = CCTest_Input_Synth; printf("--- Test String Selected\n"); sscanf(pWorker, "%d", &g_sourceParams.testNum); if((g_sourceParams.testNum > BDCC_MAX_TESTS) || (!g_sourceParams.testNum)) { printf("--- You can select tests 1 thru %d\n", BDCC_MAX_TESTS); return -1; } } else if ( !strncmp(pszInputStr, "-qam", strlen("-qam")) ) { g_sourceParams.inputSrc = CCTest_Input_QAM; printf("--- Tune qam channel\n"); RETRY1: printf("Enter Freq in Mhz\n"); gets(ibuffer); sscanf(ibuffer, "%d", &g_sourceParams.frequency); printf("Freq in Mhz %d\n", g_sourceParams.frequency); if (g_sourceParams.frequency > 1000) { printf("Frequency %d is out of range", g_sourceParams.frequency); goto RETRY1; } (void)memset(&ibuffer, 0, 10); printf("Enter Video PID in Hex\n"); gets(ibuffer); sscanf(ibuffer, "%x", &g_sourceParams.video_pid); printf("Video PID in Hex %x\n",g_sourceParams.video_pid ); (void)memset(&ibuffer, 0, 10); printf("Enter Audio PID in Hex\n"); gets(ibuffer); sscanf(ibuffer, "%x", &g_sourceParams.audio_pid); printf("Audio PID in Hex %x\n", g_sourceParams.audio_pid ); (void)memset(&ibuffer, 0, 10); printf("Enter QAM mode 256/64\n"); gets(ibuffer); sscanf(ibuffer, "%d", &g_sourceParams.qam_mode); printf("QAM mode 256/64 %d\n", g_sourceParams.qam_mode ); (void)memset(&ibuffer, 0, 10); printf("Enter Symbol Rate in Decimal (5360537)\n"); gets(ibuffer); sscanf(ibuffer, "%d", &g_sourceParams.symbolrate); printf("Symbol Rate in Decimal %d\n", g_sourceParams.symbolrate ); printf("QAM: Freq %d Mhz VPID %x APID %x QAMMode %d Symbolrate %d\n", g_sourceParams.frequency, g_sourceParams.video_pid, g_sourceParams.audio_pid, g_sourceParams.qam_mode, g_sourceParams.symbolrate); } else { return -1; } return 0; } static void dcc_hotplug_callback(void *pParam) { bdisplay_settings settings; bdisplay_get(display, &settings); #ifndef FORMAT_480I settings.format = bvideo_format_1080i; settings.aspect_ratio = bdisplay_aspect_ratio_16x9; #else settings.format = bvideo_format_ntsc; settings.aspect_ratio = bdisplay_aspect_ratio_4x3; #endif //settings.content_mode = bdisplay_content_mode_full; settings.dvi = pParam; bdisplay_set(display, &settings); } int initialize(void) { bwin_engine_settings bwinEngineEettings; BDCC_WINLIB_Interface winlibInterface; B_Dcc_Settings ccEngineSettings ; uint32_t scaleFactor; bsurface_create_settings surfaceCreateSettings; B_SoftGfx_OpenSettings pSettings; bgraphics_settings graphicsSettings; bsurface_memory surfmem1, surfmem2; bresult rc = bsettop_init(BSETTOP_VERSION); if (rc) { printf("bsettop_init failed\n"); return 1; } display = bdisplay_open(B_ID(0)); printf("bdisplay_open\n"); graphics = bgraphics_open(B_ID(0),display); printf("bgraphics_open\n"); if ( display_type == HDMI_DISPLAY ) { hdmi= boutput_hdmi_open(B_ID(0)); printf("boutput_hdmi_open\n"); boutput_hdmi_get(hdmi, &hdmisettings); hdmisettings.hdmi_hotplug_callback = dcc_hotplug_callback; hdmisettings.callback_context = hdmi; boutput_hdmi_set(hdmi, &hdmisettings); bdisplay_get(display, &settings); #ifndef FORMAT_480I settings.format = bvideo_format_1080i; settings.aspect_ratio = bdisplay_aspect_ratio_16x9; #else settings.format = bvideo_format_ntsc; settings.aspect_ratio = bdisplay_aspect_ratio_4x3; #endif //settings.content_mode = bdisplay_content_mode_full; settings.dvi = hdmi; bdisplay_set(display, &settings); } tuner = btuner_open(bconfig->resources.qam.objects[0]); decode = bdecode_open(B_ID(0)); window = bdecode_window_open(B_ID(0), display); B_SoftGfx_GetDefaultOpenSettings(&pSettings); printf("B_SoftGfx_GetDefaultOpenSettings\n"); g_Gfx = B_SoftGfx_Open(&pSettings); printf("B_SoftGfx_Open\n"); /* Initialize bwin, if the customer is using their own window library then they may initialize here */ bwin_engine_settings_init(&bwinEngineEettings); g_bwinEngine = bwin_open_engine(&bwinEngineEettings); BDBG_ASSERT(g_bwinEngine); /* create the bsettop surfaces to be used as frame buffers */ bsurface_create_settings_init(&surfaceCreateSettings, graphics); printf("bsurface_create_settings_init\n"); if ( display_type == HDMI_DISPLAY ) { #ifndef FORMAT_480I surfaceCreateSettings.width = 1920; #else surfaceCreateSettings.width = 720; #endif } else { surfaceCreateSettings.width = 640; } surfaceCreateSettings.height = 1080; #ifdef ARGB2222_CANVAS surfaceCreateSettings.pixel_format = bgraphics_pixel_format_palette8; #else surfaceCreateSettings.pixel_format = bgraphics_pixel_format_a8_r8_g8_b8; #endif /* allocate the double buffer */ g_framebuffer1 = bsurface_create( graphics, (const bsurface_create_settings *)&surfaceCreateSettings ); BDBG_ASSERT(g_framebuffer1); g_framebuffer2 = bsurface_create( graphics, (const bsurface_create_settings *)&surfaceCreateSettings ); BDBG_ASSERT(g_framebuffer2); bgraphics_get(graphics, &graphicsSettings); if ( display_type == HDMI_DISPLAY ) { graphicsSettings.enabled = true; graphicsSettings.source_width = surfaceCreateSettings.width; graphicsSettings.source_height = 1080; graphicsSettings.destination_width = surfaceCreateSettings.width; graphicsSettings.destination_height = 1080; } else { graphicsSettings.enabled = true; graphicsSettings.source_width = surfaceCreateSettings.width; graphicsSettings.source_height = 480; graphicsSettings.destination_width = surfaceCreateSettings.width; graphicsSettings.destination_height = 480; } bgraphics_set(graphics, &graphicsSettings); bsurface_get_memory(g_framebuffer1, &surfmem1); bsurface_get_memory(g_framebuffer2, &surfmem2); printf("bsurface_get_memory\n"); /* fill with transparent */ BKNI_Memset(surfmem1.buffer, 0x00, surfaceCreateSettings.height * surfmem1.pitch); BKNI_Memset(surfmem2.buffer, 0x00, surfaceCreateSettings.height * surfmem2.pitch); #ifdef ARGB2222_CANVAS BDBG_ASSERT(surfmem1.numPaletteEntries == 256); /* if either the canvas or the source surfaces are ARGB2222 then fill the palette */ for( i=0 ; i< 256; i++) { surfmem1.palette[i] = surfmem2.palette[i] = ARGB_2222_TO_ARGB_8888(i); } #endif bsurface_sync(g_framebuffer1); bsurface_sync(g_framebuffer2); printf("framebuffer1 %p, %dx%d, pitch %d\n\n", surfmem1.buffer, surfaceCreateSettings.width, surfaceCreateSettings.height, surfmem1.pitch); printf("framebuffer2 %p, %dx%d, pitch %d\n\n", surfmem2.buffer, surfaceCreateSettings.width, surfaceCreateSettings.height, surfmem2.pitch); /* ** Initialize the Closed Caption window library. ** This library interfaces to the customer window environment */ if( BDCC_WINLIB_Open( &g_WindowLib, g_Gfx, display, g_bwinEngine, g_framebuffer1, g_framebuffer2, surfaceCreateSettings.width, surfaceCreateSettings.height, NULL )) { printf("Winlib Returned with an Error"); goto error ; } /* get the winlib function table */ BDCC_WINLIB_GetInterface( &winlibInterface ); loadFonts( g_WindowLib, &scaleFactor ); if( B_Dcc_Open( &g_ccEngine, g_WindowLib, &winlibInterface ) ) { printf("B_Dcc_Open Returned with an Error\n"); goto error ; } printf("B_Dcc_Open Success\n"); B_Dcc_GetDefaultSettings( &ccEngineSettings ); printf("B_Dcc_GetDefaultSettings Success\n"); ccEngineSettings.iSafeTitleX = gDisplayWidth[g_DisplayMode] / 10; /* 20% of width / 2 according to CEB-10 */; ccEngineSettings.iSafeTitleY = gDisplayHeight[g_DisplayMode] / 10; /* 20% of height / 2 according to CEB-10 */; ccEngineSettings.ScaleFactor = scaleFactor; ccEngineSettings.Columns = gCaptionColumns[g_DisplayMode]; /* 32 for 4:3 42 for 16:9 */; B_Dcc_SetSettings( g_ccEngine, &ccEngineSettings ); printf("B_Dcc_SetSettings Success\n"); /* let's start with 708 caption service 1 */ g_UserParams.ccMode = B_Dcc_Type_e708; g_UserParams.ccService = 1; g_UserParams.dispOn = true; if( B_Dcc_Init( g_ccEngine, g_UserParams.ccService, g_UserParams.ccMode ) ) { printf("B_Dcc_Init Returned with an Error\n"); goto error ; } printf("B_Dcc_Init Success\n"); return 0; error: return 1; } void shutdown(void) { if ( CCTest_Input_Synth == g_sourceParams.inputSrc ) { if( g_ccEngine) B_Dcc_Close( g_ccEngine ); if( g_WindowLib ) BDCC_WINLIB_UnloadFonts( g_WindowLib ); if( g_WindowLib ) BDCC_WINLIB_Close( g_WindowLib ); bsurface_destroy( g_framebuffer1 ); bsurface_destroy( g_framebuffer2 ); if( g_bwinEngine )bwin_close_engine( g_bwinEngine ); if( g_Gfx ) B_SoftGfx_Close(g_Gfx); if( display ) bdisplay_close(display); } else if ( CCTest_Input_QAM == g_sourceParams.inputSrc ) { bdecode_close(decode); bdisplay_close(display); } bsettop_uninit(); } /* ** Illustrates how to load fonts and associate them with a specific pen "font style". */ void loadFonts( BDCC_WINLIB_Handle g_WindowLib, uint32_t *scaleFactor ) { int i, j, iErr; BDCC_FONT_DESCRIPTOR *pFont; BDCC_FONT_DESCRIPTOR standardFonts[ BDCC_FontStyle_Max_Value ][BDCC_PenSize_Max_Size]; BDCC_FONT_DESCRIPTOR italicsFonts [ BDCC_FontStyle_Max_Value ][BDCC_PenSize_Max_Size]; #ifdef FREETYPE_SUPPORT char *pszFontFilenames[BDCC_FontStyle_Max_Value] = { "cc_fonts/cinecavB_type_03.ttf", /* BDCC_FontStyle_Default */ "cc_fonts/cinecavB_type_03.ttf", /* BDCC_FontStyle_MonoSerifs */ "cc_fonts/cinecavB_serif_02.ttf" ,/* BDCC_FontStyle_PropSerifs */ "cc_fonts/cinecavB_mono_03.ttf", /* BDCC_FontStyle_Mono */ "cc_fonts/cinecavB_sans_02.ttf", /* BDCC_FontStyle_Prop */ "cc_fonts/cinecavB_casual_02.ttf",/* BDCC_FontStyle_Casual */ "cc_fonts/cinecavB_script_02.ttf",/* BDCC_FontStyle_Cursive */ "cc_fonts/cinecavB_sc_02.ttf" /* BDCC_FontStyle_SmallCaps */ }; int iFontSize[BDCC_FontStyle_Max_Value][CCTest_Display_Max_Size][BDCC_PenSize_Max_Size] = { /* 480i S M L 480p S M L 720p S M L 1080i S M L */ {{ 14, 18, 22 }, { 14, 18, 22 }, { 21, 28, 33 }, { 32, 41, 49 }}, /* BDCC_FontStyle_Default */ {{ 14, 18, 22 }, { 14, 18, 22 }, { 21, 28, 33 }, { 32, 41, 49 }}, /* BDCC_FontStyle_MonoSerifs */ {{ 12, 15, 19 }, { 12, 15, 19 }, { 18, 23, 29 }, { 28, 35, 44 }}, /* BDCC_FontStyle_PropSerifs */ {{ 14, 18, 22 }, { 14, 18, 22 }, { 21, 29, 34 }, { 34, 43, 52 }}, /* BDCC_FontStyle_Mono */ {{ 12, 15, 19 }, { 12, 15, 19 }, { 18, 23, 29 }, { 28, 35, 44 }}, /* BDCC_FontStyle_Prop */ {{ 13, 16, 20 }, { 13, 16, 20 }, { 19, 24, 30 }, { 30, 36, 45 }}, /* BDCC_FontStyle_Casual */ {{ 12, 14, 18 }, { 12, 14, 18 }, { 16, 18, 25 }, { 25, 28, 38 }}, /* BDCC_FontStyle_Cursive */ {{ 13, 15, 19 }, { 13, 15, 19 }, { 18, 23, 30 }, { 28, 35, 45 }} /* BDCC_FontStyle_SmallCaps */ }; /* we do not need to scale these fonts using the m2mc since the freetype engine can do it */ *scaleFactor = 100 ; /* scale factor in hundredths i.e. scale factor is 1.0 */ printf("USING TRUE-TYPE FONTS\n"); #else /* The following is a trade-off for pre-rendered fonts. ** ** We can use a base set of 14 pre-rendered fonts (7 normal and 7 italic) ** and generate the rest using the scalers but the scaler will reduce the font's quality ** or we can use a full set of 126 fonts to cover all of the font permutations with maximum quality */ #ifdef SCALE_480I_FONTS char *pszStandardFontFilenames[BDCC_FontStyle_Max_Value][ CCTest_Display_Max_Size ][ BDCC_PenSize_Max_Size ]= { /* non-italic */ /* 480i S M L 480p S M L 720p S M L 1080i S M L */ {{ "cc_fonts/cinecavB14_type.bwin_font", "cc_fonts/cinecavB18_type.bwin_font", "cc_fonts/cinecavB22_type.bwin_font" }, { "cc_fonts/cinecavB14_type.bwin_font", "cc_fonts/cinecavB18_type.bwin_font", "cc_fonts/cinecavB22_type.bwin_font" }, { "cc_fonts/cinecavB14_type.bwin_font", "cc_fonts/cinecavB18_type.bwin_font", "cc_fonts/cinecavB22_type.bwin_font" }, { "cc_fonts/cinecavB14_type.bwin_font", "cc_fonts/cinecavB18_type.bwin_font", "cc_fonts/cinecavB22_type.bwin_font" }}, /* BDCC_FontStyle_Default */ {{ "cc_fonts/cinecavB14_type.bwin_font", "cc_fonts/cinecavB18_type.bwin_font", "cc_fonts/cinecavB22_type.bwin_font" }, { "cc_fonts/cinecavB14_type.bwin_font", "cc_fonts/cinecavB18_type.bwin_font", "cc_fonts/cinecavB22_type.bwin_font" }, { "cc_fonts/cinecavB14_type.bwin_font", "cc_fonts/cinecavB18_type.bwin_font", "cc_fonts/cinecavB22_type.bwin_font" }, { "cc_fonts/cinecavB14_type.bwin_font", "cc_fonts/cinecavB18_type.bwin_font", "cc_fonts/cinecavB22_type.bwin_font" }}, /* BDCC_FontStyle_MonoSerifs */ {{ "cc_fonts/cinecavB12_serif.bwin_font", "cc_fonts/cinecavB15_serif.bwin_font", "cc_fonts/cinecavB19_serif.bwin_font" }, { "cc_fonts/cinecavB12_serif.bwin_font", "cc_fonts/cinecavB15_serif.bwin_font", "cc_fonts/cinecavB19_serif.bwin_font" }, { "cc_fonts/cinecavB12_serif.bwin_font", "cc_fonts/cinecavB15_serif.bwin_font", "cc_fonts/cinecavB19_serif.bwin_font" }, { "cc_fonts/cinecavB12_serif.bwin_font", "cc_fonts/cinecavB15_serif.bwin_font", "cc_fonts/cinecavB19_serif.bwin_font" }}, /* BDCC_FontStyle_PropSerifs */ {{ "cc_fonts/cinecavB14_mono.bwin_font", "cc_fonts/cinecavB18_mono.bwin_font", "cc_fonts/cinecavB22_mono.bwin_font" }, { "cc_fonts/cinecavB14_mono.bwin_font", "cc_fonts/cinecavB18_mono.bwin_font", "cc_fonts/cinecavB22_mono.bwin_font" }, { "cc_fonts/cinecavB14_mono.bwin_font", "cc_fonts/cinecavB18_mono.bwin_font", "cc_fonts/cinecavB22_mono.bwin_font" }, { "cc_fonts/cinecavB14_mono.bwin_font", "cc_fonts/cinecavB18_mono.bwin_font", "cc_fonts/cinecavB22_mono.bwin_font" }}, /* BDCC_FontStyle_Mono */ {{ "cc_fonts/cinecavB12_sans.bwin_font", "cc_fonts/cinecavB15_sans.bwin_font", "cc_fonts/cinecavB19_sans.bwin_font" }, { "cc_fonts/cinecavB12_sans.bwin_font", "cc_fonts/cinecavB15_sans.bwin_font", "cc_fonts/cinecavB19_sans.bwin_font" }, { "cc_fonts/cinecavB12_sans.bwin_font", "cc_fonts/cinecavB15_sans.bwin_font", "cc_fonts/cinecavB19_sans.bwin_font" }, { "cc_fonts/cinecavB12_sans.bwin_font", "cc_fonts/cinecavB15_sans.bwin_font", "cc_fonts/cinecavB19_sans.bwin_font" }}, /* BDCC_FontStyle_Prop */ {{ "cc_fonts/cinecavB13_casual.bwin_font", "cc_fonts/cinecavB16_casual.bwin_font", "cc_fonts/cinecavB20_casual.bwin_font" }, { "cc_fonts/cinecavB13_casual.bwin_font", "cc_fonts/cinecavB16_casual.bwin_font", "cc_fonts/cinecavB20_casual.bwin_font" }, { "cc_fonts/cinecavB13_casual.bwin_font", "cc_fonts/cinecavB16_casual.bwin_font", "cc_fonts/cinecavB20_casual.bwin_font" }, { "cc_fonts/cinecavB13_casual.bwin_font", "cc_fonts/cinecavB16_casual.bwin_font", "cc_fonts/cinecavB20_casual.bwin_font" }}, /* BDCC_FontStyle_Casual */ {{ "cc_fonts/cinecavB12_script.bwin_font", "cc_fonts/cinecavB14_script.bwin_font", "cc_fonts/cinecavB18_script.bwin_font" }, { "cc_fonts/cinecavB12_script.bwin_font", "cc_fonts/cinecavB14_script.bwin_font", "cc_fonts/cinecavB18_script.bwin_font" }, { "cc_fonts/cinecavB12_script.bwin_font", "cc_fonts/cinecavB14_script.bwin_font", "cc_fonts/cinecavB18_script.bwin_font" }, { "cc_fonts/cinecavB12_script.bwin_font", "cc_fonts/cinecavB14_script.bwin_font", "cc_fonts/cinecavB18_script.bwin_font" }}, /* BDCC_FontStyle_Cursive */ {{ "cc_fonts/cinecavB13_sc.bwin_font", "cc_fonts/cinecavB15_sc.bwin_font", "cc_fonts/cinecavB19_sc.bwin_font" }, { "cc_fonts/cinecavB13_sc.bwin_font", "cc_fonts/cinecavB15_sc.bwin_font", "cc_fonts/cinecavB19_sc.bwin_font" }, { "cc_fonts/cinecavB13_sc.bwin_font", "cc_fonts/cinecavB15_sc.bwin_font", "cc_fonts/cinecavB19_sc.bwin_font" }, { "cc_fonts/cinecavB13_sc.bwin_font", "cc_fonts/cinecavB15_sc.bwin_font", "cc_fonts/cinecavB19_sc.bwin_font" }} /* BDCC_FontStyle_SmallCaps */ }; char *pszItalicFontFilenames[BDCC_FontStyle_Max_Value][ CCTest_Display_Max_Size ][ BDCC_PenSize_Max_Size ]= { /* italic */ {{ "cc_fonts/cinecavB14i_type.bwin_font", "cc_fonts/cinecavB18i_type.bwin_font", "cc_fonts/cinecavB22i_type.bwin_font" }, { "cc_fonts/cinecavB14i_type.bwin_font", "cc_fonts/cinecavB18i_type.bwin_font", "cc_fonts/cinecavB22i_type.bwin_font" }, { "cc_fonts/cinecavB14i_type.bwin_font", "cc_fonts/cinecavB18i_type.bwin_font", "cc_fonts/cinecavB22i_type.bwin_font" }, { "cc_fonts/cinecavB14i_type.bwin_font", "cc_fonts/cinecavB18i_type.bwin_font", "cc_fonts/cinecavB22i_type.bwin_font" }}, /* BDCC_FontStyle_Default */ {{ "cc_fonts/cinecavB14i_type.bwin_font", "cc_fonts/cinecavB18i_type.bwin_font", "cc_fonts/cinecavB22i_type.bwin_font" }, { "cc_fonts/cinecavB14i_type.bwin_font", "cc_fonts/cinecavB18i_type.bwin_font", "cc_fonts/cinecavB22i_type.bwin_font" }, { "cc_fonts/cinecavB14i_type.bwin_font", "cc_fonts/cinecavB18i_type.bwin_font", "cc_fonts/cinecavB22i_type.bwin_font" }, { "cc_fonts/cinecavB14i_type.bwin_font", "cc_fonts/cinecavB18i_type.bwin_font", "cc_fonts/cinecavB22i_type.bwin_font" }}, /* BDCC_FontStyle_MonoSerifs */ {{ "cc_fonts/cinecavB12i_serif.bwin_font", "cc_fonts/cinecavB15i_serif.bwin_font", "cc_fonts/cinecavB19i_serif.bwin_font" }, { "cc_fonts/cinecavB12i_serif.bwin_font", "cc_fonts/cinecavB15i_serif.bwin_font", "cc_fonts/cinecavB19i_serif.bwin_font" }, { "cc_fonts/cinecavB12i_serif.bwin_font", "cc_fonts/cinecavB15i_serif.bwin_font", "cc_fonts/cinecavB19i_serif.bwin_font" }, { "cc_fonts/cinecavB12i_serif.bwin_font", "cc_fonts/cinecavB15i_serif.bwin_font", "cc_fonts/cinecavB19i_serif.bwin_font" }}, /* BDCC_FontStyle_PropSerifs */ {{ "cc_fonts/cinecavB14i_mono.bwin_font", "cc_fonts/cinecavB18i_mono.bwin_font", "cc_fonts/cinecavB22i_mono.bwin_font" }, { "cc_fonts/cinecavB14i_mono.bwin_font", "cc_fonts/cinecavB18i_mono.bwin_font", "cc_fonts/cinecavB22i_mono.bwin_font" }, { "cc_fonts/cinecavB14i_mono.bwin_font", "cc_fonts/cinecavB18i_mono.bwin_font", "cc_fonts/cinecavB22i_mono.bwin_font" }, { "cc_fonts/cinecavB14i_mono.bwin_font", "cc_fonts/cinecavB18i_mono.bwin_font", "cc_fonts/cinecavB22i_mono.bwin_font" }}, /* BDCC_FontStyle_Mono */ {{ "cc_fonts/cinecavB12i_sans.bwin_font", "cc_fonts/cinecavB15i_sans.bwin_font", "cc_fonts/cinecavB19i_sans.bwin_font" }, { "cc_fonts/cinecavB12i_sans.bwin_font", "cc_fonts/cinecavB15i_sans.bwin_font", "cc_fonts/cinecavB19i_sans.bwin_font" }, { "cc_fonts/cinecavB12i_sans.bwin_font", "cc_fonts/cinecavB15i_sans.bwin_font", "cc_fonts/cinecavB19i_sans.bwin_font" }, { "cc_fonts/cinecavB12i_sans.bwin_font", "cc_fonts/cinecavB15i_sans.bwin_font", "cc_fonts/cinecavB19i_sans.bwin_font" }}, /* BDCC_FontStyle_Prop */ {{ "cc_fonts/cinecavB13i_casual.bwin_font", "cc_fonts/cinecavB16i_casual.bwin_font", "cc_fonts/cinecavB20i_casual.bwin_font" }, { "cc_fonts/cinecavB13i_casual.bwin_font", "cc_fonts/cinecavB16i_casual.bwin_font", "cc_fonts/cinecavB20i_casual.bwin_font" }, { "cc_fonts/cinecavB13i_casual.bwin_font", "cc_fonts/cinecavB16i_casual.bwin_font", "cc_fonts/cinecavB20i_casual.bwin_font" }, { "cc_fonts/cinecavB13i_casual.bwin_font", "cc_fonts/cinecavB16i_casual.bwin_font", "cc_fonts/cinecavB20i_casual.bwin_font" }}, /* BDCC_FontStyle_Casual */ {{ "cc_fonts/cinecavB12i_script.bwin_font", "cc_fonts/cinecavB14i_script.bwin_font", "cc_fonts/cinecavB18i_script.bwin_font" }, { "cc_fonts/cinecavB12i_script.bwin_font", "cc_fonts/cinecavB14i_script.bwin_font", "cc_fonts/cinecavB18i_script.bwin_font" }, { "cc_fonts/cinecavB12i_script.bwin_font", "cc_fonts/cinecavB14i_script.bwin_font", "cc_fonts/cinecavB18i_script.bwin_font" }, { "cc_fonts/cinecavB12i_script.bwin_font", "cc_fonts/cinecavB14i_script.bwin_font", "cc_fonts/cinecavB18i_script.bwin_font" }}, /* BDCC_FontStyle_Cursive */ {{ "cc_fonts/cinecavB13i_sc.bwin_font", "cc_fonts/cinecavB15i_sc.bwin_font", "cc_fonts/cinecavB19i_sc.bwin_font" }, { "cc_fonts/cinecavB13i_sc.bwin_font", "cc_fonts/cinecavB15i_sc.bwin_font", "cc_fonts/cinecavB19i_sc.bwin_font" }, { "cc_fonts/cinecavB13i_sc.bwin_font", "cc_fonts/cinecavB15i_sc.bwin_font", "cc_fonts/cinecavB19i_sc.bwin_font" }, { "cc_fonts/cinecavB13i_sc.bwin_font", "cc_fonts/cinecavB15i_sc.bwin_font", "cc_fonts/cinecavB19i_sc.bwin_font" }} /* BDCC_FontStyle_SmallCaps */ }; /* we need to scale these fonts using the m2mc since we have specified the 480i/p set for all of the display formats */ uint32_t display_ratios[4] = {100,100,150,225}; *scaleFactor = display_ratios[g_DisplayMode] ; /* scale factor in hundredths i.e. scale factor is 1.0 */ printf("SCALING 480i FONTS\n"); #else #ifdef SCALE_720P_FONTS char *pszStandardFontFilenames[BDCC_FontStyle_Max_Value][ CCTest_Display_Max_Size ][ BDCC_PenSize_Max_Size ]= { /* non-italic */ /* 480i S M L 480p S M L 720p S M L 1080i S M L */ {{ "cc_fonts/cinecavB21_type.bwin_font", "cc_fonts/cinecavB28_type.bwin_font", "cc_fonts/cinecavB33_type.bwin_font" }, { "cc_fonts/cinecavB21_type.bwin_font", "cc_fonts/cinecavB28_type.bwin_font", "cc_fonts/cinecavB33_type.bwin_font" }, { "cc_fonts/cinecavB21_type.bwin_font", "cc_fonts/cinecavB28_type.bwin_font", "cc_fonts/cinecavB33_type.bwin_font" }, { "cc_fonts/cinecavB21_type.bwin_font", "cc_fonts/cinecavB28_type.bwin_font", "cc_fonts/cinecavB33_type.bwin_font" }}, /* BDCC_FontStyle_Default */ {{ "cc_fonts/cinecavB21_type.bwin_font", "cc_fonts/cinecavB28_type.bwin_font", "cc_fonts/cinecavB33_type.bwin_font" }, { "cc_fonts/cinecavB21_type.bwin_font", "cc_fonts/cinecavB28_type.bwin_font", "cc_fonts/cinecavB33_type.bwin_font" }, { "cc_fonts/cinecavB21_type.bwin_font", "cc_fonts/cinecavB28_type.bwin_font", "cc_fonts/cinecavB33_type.bwin_font" }, { "cc_fonts/cinecavB21_type.bwin_font", "cc_fonts/cinecavB28_type.bwin_font", "cc_fonts/cinecavB33_type.bwin_font" }}, /* BDCC_FontStyle_MonoSerifs */ {{ "cc_fonts/cinecavB18_serif.bwin_font", "cc_fonts/cinecavB23_serif.bwin_font", "cc_fonts/cinecavB29_serif.bwin_font" }, { "cc_fonts/cinecavB18_serif.bwin_font", "cc_fonts/cinecavB23_serif.bwin_font", "cc_fonts/cinecavB29_serif.bwin_font" }, { "cc_fonts/cinecavB18_serif.bwin_font", "cc_fonts/cinecavB23_serif.bwin_font", "cc_fonts/cinecavB29_serif.bwin_font" }, { "cc_fonts/cinecavB18_serif.bwin_font", "cc_fonts/cinecavB23_serif.bwin_font", "cc_fonts/cinecavB29_serif.bwin_font" }}, /* BDCC_FontStyle_PropSerifs */ {{ "cc_fonts/cinecavB21_mono.bwin_font", "cc_fonts/cinecavB29_mono.bwin_font", "cc_fonts/cinecavB34_mono.bwin_font" }, { "cc_fonts/cinecavB21_mono.bwin_font", "cc_fonts/cinecavB29_mono.bwin_font", "cc_fonts/cinecavB34_mono.bwin_font" }, { "cc_fonts/cinecavB21_mono.bwin_font", "cc_fonts/cinecavB29_mono.bwin_font", "cc_fonts/cinecavB34_mono.bwin_font" }, { "cc_fonts/cinecavB21_mono.bwin_font", "cc_fonts/cinecavB29_mono.bwin_font", "cc_fonts/cinecavB34_mono.bwin_font" }}, /* BDCC_FontStyle_Mono */ {{ "cc_fonts/cinecavB18_sans.bwin_font", "cc_fonts/cinecavB23_sans.bwin_font", "cc_fonts/cinecavB29_sans.bwin_font" }, { "cc_fonts/cinecavB18_sans.bwin_font", "cc_fonts/cinecavB23_sans.bwin_font", "cc_fonts/cinecavB29_sans.bwin_font" }, { "cc_fonts/cinecavB18_sans.bwin_font", "cc_fonts/cinecavB23_sans.bwin_font", "cc_fonts/cinecavB29_sans.bwin_font" }, { "cc_fonts/cinecavB18_sans.bwin_font", "cc_fonts/cinecavB23_sans.bwin_font", "cc_fonts/cinecavB29_sans.bwin_font" }}, /* BDCC_FontStyle_Prop */ {{ "cc_fonts/cinecavB19_casual.bwin_font", "cc_fonts/cinecavB24_casual.bwin_font", "cc_fonts/cinecavB30_casual.bwin_font" }, { "cc_fonts/cinecavB19_casual.bwin_font", "cc_fonts/cinecavB24_casual.bwin_font", "cc_fonts/cinecavB30_casual.bwin_font" }, { "cc_fonts/cinecavB19_casual.bwin_font", "cc_fonts/cinecavB24_casual.bwin_font", "cc_fonts/cinecavB30_casual.bwin_font" }, { "cc_fonts/cinecavB19_casual.bwin_font", "cc_fonts/cinecavB24_casual.bwin_font", "cc_fonts/cinecavB30_casual.bwin_font" }}, /* BDCC_FontStyle_Casual */ {{ "cc_fonts/cinecavB16_script.bwin_font", "cc_fonts/cinecavB18_script.bwin_font", "cc_fonts/cinecavB25_script.bwin_font" }, { "cc_fonts/cinecavB16_script.bwin_font", "cc_fonts/cinecavB18_script.bwin_font", "cc_fonts/cinecavB25_script.bwin_font" }, { "cc_fonts/cinecavB16_script.bwin_font", "cc_fonts/cinecavB18_script.bwin_font", "cc_fonts/cinecavB25_script.bwin_font" }, { "cc_fonts/cinecavB16_script.bwin_font", "cc_fonts/cinecavB18_script.bwin_font", "cc_fonts/cinecavB25_script.bwin_font" }}, /* BDCC_FontStyle_Cursive */ {{ "cc_fonts/cinecavB18_sc.bwin_font", "cc_fonts/cinecavB23_sc.bwin_font", "cc_fonts/cinecavB30_sc.bwin_font" }, { "cc_fonts/cinecavB18_sc.bwin_font", "cc_fonts/cinecavB23_sc.bwin_font", "cc_fonts/cinecavB30_sc.bwin_font" }, { "cc_fonts/cinecavB18_sc.bwin_font", "cc_fonts/cinecavB23_sc.bwin_font", "cc_fonts/cinecavB30_sc.bwin_font" }, { "cc_fonts/cinecavB18_sc.bwin_font", "cc_fonts/cinecavB23_sc.bwin_font", "cc_fonts/cinecavB30_sc.bwin_font" }} /* BDCC_FontStyle_SmallCaps */ }; char *pszItalicFontFilenames[BDCC_FontStyle_Max_Value][ CCTest_Display_Max_Size ][ BDCC_PenSize_Max_Size ]= { /* italic */ {{ "cc_fonts/cinecavB21i_type.bwin_font", "cc_fonts/cinecavB28i_type.bwin_font", "cc_fonts/cinecavB33i_type.bwin_font" }, { "cc_fonts/cinecavB21i_type.bwin_font", "cc_fonts/cinecavB28i_type.bwin_font", "cc_fonts/cinecavB33i_type.bwin_font" }, { "cc_fonts/cinecavB21i_type.bwin_font", "cc_fonts/cinecavB28i_type.bwin_font", "cc_fonts/cinecavB33i_type.bwin_font" }, { "cc_fonts/cinecavB21i_type.bwin_font", "cc_fonts/cinecavB28i_type.bwin_font", "cc_fonts/cinecavB33i_type.bwin_font" }}, /* BDCC_FontStyle_Default */ {{ "cc_fonts/cinecavB21i_type.bwin_font", "cc_fonts/cinecavB28i_type.bwin_font", "cc_fonts/cinecavB33i_type.bwin_font" }, { "cc_fonts/cinecavB21i_type.bwin_font", "cc_fonts/cinecavB28i_type.bwin_font", "cc_fonts/cinecavB33i_type.bwin_font" }, { "cc_fonts/cinecavB21i_type.bwin_font", "cc_fonts/cinecavB28i_type.bwin_font", "cc_fonts/cinecavB33i_type.bwin_font" }, { "cc_fonts/cinecavB21i_type.bwin_font", "cc_fonts/cinecavB28i_type.bwin_font", "cc_fonts/cinecavB33i_type.bwin_font" }}, /* BDCC_FontStyle_MonoSerifs */ {{ "cc_fonts/cinecavB18i_serif.bwin_font", "cc_fonts/cinecavB23i_serif.bwin_font", "cc_fonts/cinecavB29i_serif.bwin_font" }, { "cc_fonts/cinecavB18i_serif.bwin_font", "cc_fonts/cinecavB23i_serif.bwin_font", "cc_fonts/cinecavB29i_serif.bwin_font" }, { "cc_fonts/cinecavB18i_serif.bwin_font", "cc_fonts/cinecavB23i_serif.bwin_font", "cc_fonts/cinecavB29i_serif.bwin_font" }, { "cc_fonts/cinecavB18i_serif.bwin_font", "cc_fonts/cinecavB23i_serif.bwin_font", "cc_fonts/cinecavB29i_serif.bwin_font" }}, /* BDCC_FontStyle_PropSerifs */ {{ "cc_fonts/cinecavB21i_mono.bwin_font", "cc_fonts/cinecavB29i_mono.bwin_font", "cc_fonts/cinecavB34i_mono.bwin_font" }, { "cc_fonts/cinecavB21i_mono.bwin_font", "cc_fonts/cinecavB29i_mono.bwin_font", "cc_fonts/cinecavB34i_mono.bwin_font" }, { "cc_fonts/cinecavB21i_mono.bwin_font", "cc_fonts/cinecavB29i_mono.bwin_font", "cc_fonts/cinecavB34i_mono.bwin_font" }, { "cc_fonts/cinecavB21i_mono.bwin_font", "cc_fonts/cinecavB29i_mono.bwin_font", "cc_fonts/cinecavB34i_mono.bwin_font" }}, /* BDCC_FontStyle_Mono */ {{ "cc_fonts/cinecavB18i_sans.bwin_font", "cc_fonts/cinecavB23i_sans.bwin_font", "cc_fonts/cinecavB29i_sans.bwin_font" }, { "cc_fonts/cinecavB18i_sans.bwin_font", "cc_fonts/cinecavB23i_sans.bwin_font", "cc_fonts/cinecavB29i_sans.bwin_font" }, { "cc_fonts/cinecavB18i_sans.bwin_font", "cc_fonts/cinecavB23i_sans.bwin_font", "cc_fonts/cinecavB29i_sans.bwin_font" }, { "cc_fonts/cinecavB18i_sans.bwin_font", "cc_fonts/cinecavB23i_sans.bwin_font", "cc_fonts/cinecavB29i_sans.bwin_font" }}, /* BDCC_FontStyle_Prop */ {{ "cc_fonts/cinecavB19i_casual.bwin_font", "cc_fonts/cinecavB24i_casual.bwin_font", "cc_fonts/cinecavB30i_casual.bwin_font" }, { "cc_fonts/cinecavB19i_casual.bwin_font", "cc_fonts/cinecavB24i_casual.bwin_font", "cc_fonts/cinecavB30i_casual.bwin_font" }, { "cc_fonts/cinecavB19i_casual.bwin_font", "cc_fonts/cinecavB24i_casual.bwin_font", "cc_fonts/cinecavB30i_casual.bwin_font" }, { "cc_fonts/cinecavB19i_casual.bwin_font", "cc_fonts/cinecavB24i_casual.bwin_font", "cc_fonts/cinecavB30i_casual.bwin_font" }}, /* BDCC_FontStyle_Casual */ {{ "cc_fonts/cinecavB16i_script.bwin_font", "cc_fonts/cinecavB18i_script.bwin_font", "cc_fonts/cinecavB25i_script.bwin_font" }, { "cc_fonts/cinecavB16i_script.bwin_font", "cc_fonts/cinecavB18i_script.bwin_font", "cc_fonts/cinecavB25i_script.bwin_font" }, { "cc_fonts/cinecavB16i_script.bwin_font", "cc_fonts/cinecavB18i_script.bwin_font", "cc_fonts/cinecavB25i_script.bwin_font" }, { "cc_fonts/cinecavB16i_script.bwin_font", "cc_fonts/cinecavB18i_script.bwin_font", "cc_fonts/cinecavB25i_script.bwin_font" }}, /* BDCC_FontStyle_Cursive */ {{ "cc_fonts/cinecavB18i_sc.bwin_font", "cc_fonts/cinecavB23i_sc.bwin_font", "cc_fonts/cinecavB30i_sc.bwin_font" }, { "cc_fonts/cinecavB18i_sc.bwin_font", "cc_fonts/cinecavB23i_sc.bwin_font", "cc_fonts/cinecavB30i_sc.bwin_font" }, { "cc_fonts/cinecavB18i_sc.bwin_font", "cc_fonts/cinecavB23i_sc.bwin_font", "cc_fonts/cinecavB30i_sc.bwin_font" }, { "cc_fonts/cinecavB18i_sc.bwin_font", "cc_fonts/cinecavB23i_sc.bwin_font", "cc_fonts/cinecavB30i_sc.bwin_font" }} /* BDCC_FontStyle_SmallCaps */ }; /* we need to scale these fonts using the m2mc since we have specified the 720p set for all of the display formats */ uint32_t display_ratios[4] = {66,66,100,150}; *scaleFactor = display_ratios[g_DisplayMode] ; /* scale factor in hundredths i.e. scale factor is 1.0 */ printf("SCALING 720P FONTS\n"); #else /*MAX_RENDERED_FONTS*/ char *pszStandardFontFilenames[BDCC_FontStyle_Max_Value][ CCTest_Display_Max_Size ][ BDCC_PenSize_Max_Size ]= { /* non-italic */ /* 480i S M L 480p S M L 720p S M L 1080i S M L */ {{ "cc_fonts/cinecavB14_type.bwin_font", "cc_fonts/cinecavB18_type.bwin_font", "cc_fonts/cinecavB22_type.bwin_font" }, { "cc_fonts/cinecavB14_type.bwin_font", "cc_fonts/cinecavB18_type.bwin_font", "cc_fonts/cinecavB22_type.bwin_font" }, { "cc_fonts/cinecavB21_type.bwin_font", "cc_fonts/cinecavB28_type.bwin_font", "cc_fonts/cinecavB33_type.bwin_font" }, { "cc_fonts/cinecavB32_type.bwin_font", "cc_fonts/cinecavB41_type.bwin_font", "cc_fonts/cinecavB49_type.bwin_font" }}, /* BDCC_FontStyle_Default */ {{ "cc_fonts/cinecavB14_type.bwin_font", "cc_fonts/cinecavB18_type.bwin_font", "cc_fonts/cinecavB22_type.bwin_font" }, { "cc_fonts/cinecavB14_type.bwin_font", "cc_fonts/cinecavB18_type.bwin_font", "cc_fonts/cinecavB22_type.bwin_font" }, { "cc_fonts/cinecavB21_type.bwin_font", "cc_fonts/cinecavB28_type.bwin_font", "cc_fonts/cinecavB33_type.bwin_font" }, { "cc_fonts/cinecavB32_type.bwin_font", "cc_fonts/cinecavB41_type.bwin_font", "cc_fonts/cinecavB49_type.bwin_font" }}, /* BDCC_FontStyle_MonoSerifs */ {{ "cc_fonts/cinecavB12_serif.bwin_font", "cc_fonts/cinecavB15_serif.bwin_font", "cc_fonts/cinecavB19_serif.bwin_font" }, { "cc_fonts/cinecavB12_serif.bwin_font", "cc_fonts/cinecavB15_serif.bwin_font", "cc_fonts/cinecavB19_serif.bwin_font" }, { "cc_fonts/cinecavB18_serif.bwin_font", "cc_fonts/cinecavB23_serif.bwin_font", "cc_fonts/cinecavB29_serif.bwin_font" }, { "cc_fonts/cinecavB28_serif.bwin_font", "cc_fonts/cinecavB35_serif.bwin_font", "cc_fonts/cinecavB44_serif.bwin_font" }}, /* BDCC_FontStyle_PropSerifs */ {{ "cc_fonts/cinecavB14_mono.bwin_font", "cc_fonts/cinecavB18_mono.bwin_font", "cc_fonts/cinecavB22_mono.bwin_font" }, { "cc_fonts/cinecavB14_mono.bwin_font", "cc_fonts/cinecavB18_mono.bwin_font", "cc_fonts/cinecavB22_mono.bwin_font" }, { "cc_fonts/cinecavB21_mono.bwin_font", "cc_fonts/cinecavB29_mono.bwin_font", "cc_fonts/cinecavB34_mono.bwin_font" }, { "cc_fonts/cinecavB34_mono.bwin_font", "cc_fonts/cinecavB43_mono.bwin_font", "cc_fonts/cinecavB52_mono.bwin_font" }}, /* BDCC_FontStyle_Mono */ {{ "cc_fonts/cinecavB12_sans.bwin_font", "cc_fonts/cinecavB15_sans.bwin_font", "cc_fonts/cinecavB19_sans.bwin_font" }, { "cc_fonts/cinecavB12_sans.bwin_font", "cc_fonts/cinecavB15_sans.bwin_font", "cc_fonts/cinecavB19_sans.bwin_font" }, { "cc_fonts/cinecavB18_sans.bwin_font", "cc_fonts/cinecavB23_sans.bwin_font", "cc_fonts/cinecavB29_sans.bwin_font" }, { "cc_fonts/cinecavB28_sans.bwin_font", "cc_fonts/cinecavB35_sans.bwin_font", "cc_fonts/cinecavB44_sans.bwin_font" }}, /* BDCC_FontStyle_Prop */ {{ "cc_fonts/cinecavB13_casual.bwin_font", "cc_fonts/cinecavB16_casual.bwin_font", "cc_fonts/cinecavB20_casual.bwin_font" }, { "cc_fonts/cinecavB13_casual.bwin_font", "cc_fonts/cinecavB16_casual.bwin_font", "cc_fonts/cinecavB20_casual.bwin_font" }, { "cc_fonts/cinecavB19_casual.bwin_font", "cc_fonts/cinecavB24_casual.bwin_font", "cc_fonts/cinecavB30_casual.bwin_font" }, { "cc_fonts/cinecavB30_casual.bwin_font", "cc_fonts/cinecavB36_casual.bwin_font", "cc_fonts/cinecavB45_casual.bwin_font" }}, /* BDCC_FontStyle_Casual */ {{ "cc_fonts/cinecavB12_script.bwin_font", "cc_fonts/cinecavB14_script.bwin_font", "cc_fonts/cinecavB18_script.bwin_font" }, { "cc_fonts/cinecavB12_script.bwin_font", "cc_fonts/cinecavB14_script.bwin_font", "cc_fonts/cinecavB18_script.bwin_font" }, { "cc_fonts/cinecavB16_script.bwin_font", "cc_fonts/cinecavB18_script.bwin_font", "cc_fonts/cinecavB25_script.bwin_font" }, { "cc_fonts/cinecavB25_script.bwin_font", "cc_fonts/cinecavB28_script.bwin_font", "cc_fonts/cinecavB38_script.bwin_font" }}, /* BDCC_FontStyle_Cursive */ {{ "cc_fonts/cinecavB13_sc.bwin_font", "cc_fonts/cinecavB15_sc.bwin_font", "cc_fonts/cinecavB19_sc.bwin_font" }, { "cc_fonts/cinecavB13_sc.bwin_font", "cc_fonts/cinecavB15_sc.bwin_font", "cc_fonts/cinecavB19_sc.bwin_font" }, { "cc_fonts/cinecavB18_sc.bwin_font", "cc_fonts/cinecavB23_sc.bwin_font", "cc_fonts/cinecavB30_sc.bwin_font" }, { "cc_fonts/cinecavB28_sc.bwin_font", "cc_fonts/cinecavB35_sc.bwin_font", "cc_fonts/cinecavB45_sc.bwin_font" }} /* BDCC_FontStyle_SmallCaps */ }; char *pszItalicFontFilenames[BDCC_FontStyle_Max_Value][ CCTest_Display_Max_Size ][ BDCC_PenSize_Max_Size ]= { /* italic */ {{ "cc_fonts/cinecavB14i_type.bwin_font", "cc_fonts/cinecavB18i_type.bwin_font", "cc_fonts/cinecavB22i_type.bwin_font" }, { "cc_fonts/cinecavB14i_type.bwin_font", "cc_fonts/cinecavB18i_type.bwin_font", "cc_fonts/cinecavB22i_type.bwin_font" }, { "cc_fonts/cinecavB21i_type.bwin_font", "cc_fonts/cinecavB28i_type.bwin_font", "cc_fonts/cinecavB33i_type.bwin_font" }, { "cc_fonts/cinecavB32i_type.bwin_font", "cc_fonts/cinecavB41i_type.bwin_font", "cc_fonts/cinecavB49i_type.bwin_font" }}, /* BDCC_FontStyle_Default */ {{ "cc_fonts/cinecavB14i_type.bwin_font", "cc_fonts/cinecavB18i_type.bwin_font", "cc_fonts/cinecavB22i_type.bwin_font" }, { "cc_fonts/cinecavB14i_type.bwin_font", "cc_fonts/cinecavB18i_type.bwin_font", "cc_fonts/cinecavB22i_type.bwin_font" }, { "cc_fonts/cinecavB21i_type.bwin_font", "cc_fonts/cinecavB28i_type.bwin_font", "cc_fonts/cinecavB33i_type.bwin_font" }, { "cc_fonts/cinecavB32i_type.bwin_font", "cc_fonts/cinecavB41i_type.bwin_font", "cc_fonts/cinecavB49i_type.bwin_font" }}, /* BDCC_FontStyle_MonoSerifs */ {{ "cc_fonts/cinecavB12i_serif.bwin_font", "cc_fonts/cinecavB15i_serif.bwin_font", "cc_fonts/cinecavB19i_serif.bwin_font" }, { "cc_fonts/cinecavB12i_serif.bwin_font", "cc_fonts/cinecavB15i_serif.bwin_font", "cc_fonts/cinecavB19i_serif.bwin_font" }, { "cc_fonts/cinecavB18i_serif.bwin_font", "cc_fonts/cinecavB23i_serif.bwin_font", "cc_fonts/cinecavB29i_serif.bwin_font" }, { "cc_fonts/cinecavB28i_serif.bwin_font", "cc_fonts/cinecavB35i_serif.bwin_font", "cc_fonts/cinecavB44i_serif.bwin_font" }}, /* BDCC_FontStyle_PropSerifs */ {{ "cc_fonts/cinecavB14i_mono.bwin_font", "cc_fonts/cinecavB18i_mono.bwin_font", "cc_fonts/cinecavB22i_mono.bwin_font" }, { "cc_fonts/cinecavB14i_mono.bwin_font", "cc_fonts/cinecavB18i_mono.bwin_font", "cc_fonts/cinecavB22i_mono.bwin_font" }, { "cc_fonts/cinecavB21i_mono.bwin_font", "cc_fonts/cinecavB29i_mono.bwin_font", "cc_fonts/cinecavB34i_mono.bwin_font" }, { "cc_fonts/cinecavB34i_mono.bwin_font", "cc_fonts/cinecavB43i_mono.bwin_font", "cc_fonts/cinecavB52i_mono.bwin_font" }}, /* BDCC_FontStyle_Mono */ {{ "cc_fonts/cinecavB12i_sans.bwin_font", "cc_fonts/cinecavB15i_sans.bwin_font", "cc_fonts/cinecavB19i_sans.bwin_font" }, { "cc_fonts/cinecavB12i_sans.bwin_font", "cc_fonts/cinecavB15i_sans.bwin_font", "cc_fonts/cinecavB19i_sans.bwin_font" }, { "cc_fonts/cinecavB18i_sans.bwin_font", "cc_fonts/cinecavB23i_sans.bwin_font", "cc_fonts/cinecavB29i_sans.bwin_font" }, { "cc_fonts/cinecavB28i_sans.bwin_font", "cc_fonts/cinecavB35i_sans.bwin_font", "cc_fonts/cinecavB44i_sans.bwin_font" }}, /* BDCC_FontStyle_Prop */ {{ "cc_fonts/cinecavB13i_casual.bwin_font", "cc_fonts/cinecavB16i_casual.bwin_font", "cc_fonts/cinecavB20i_casual.bwin_font" }, { "cc_fonts/cinecavB13i_casual.bwin_font", "cc_fonts/cinecavB16i_casual.bwin_font", "cc_fonts/cinecavB20i_casual.bwin_font" }, { "cc_fonts/cinecavB19i_casual.bwin_font", "cc_fonts/cinecavB24i_casual.bwin_font", "cc_fonts/cinecavB30i_casual.bwin_font" }, { "cc_fonts/cinecavB30i_casual.bwin_font", "cc_fonts/cinecavB36i_casual.bwin_font", "cc_fonts/cinecavB45i_casual.bwin_font" }}, /* BDCC_FontStyle_Casual */ {{ "cc_fonts/cinecavB12i_script.bwin_font", "cc_fonts/cinecavB14i_script.bwin_font", "cc_fonts/cinecavB18i_script.bwin_font" }, { "cc_fonts/cinecavB12i_script.bwin_font", "cc_fonts/cinecavB14i_script.bwin_font", "cc_fonts/cinecavB18i_script.bwin_font" }, { "cc_fonts/cinecavB16i_script.bwin_font", "cc_fonts/cinecavB18i_script.bwin_font", "cc_fonts/cinecavB25i_script.bwin_font" }, { "cc_fonts/cinecavB25i_script.bwin_font", "cc_fonts/cinecavB28i_script.bwin_font", "cc_fonts/cinecavB38i_script.bwin_font" }}, /* BDCC_FontStyle_Cursive */ {{ "cc_fonts/cinecavB13i_sc.bwin_font", "cc_fonts/cinecavB15i_sc.bwin_font", "cc_fonts/cinecavB19i_sc.bwin_font" }, { "cc_fonts/cinecavB13i_sc.bwin_font", "cc_fonts/cinecavB15i_sc.bwin_font", "cc_fonts/cinecavB19i_sc.bwin_font" }, { "cc_fonts/cinecavB18i_sc.bwin_font", "cc_fonts/cinecavB23i_sc.bwin_font", "cc_fonts/cinecavB30i_sc.bwin_font" }, { "cc_fonts/cinecavB28i_sc.bwin_font", "cc_fonts/cinecavB35i_sc.bwin_font", "cc_fonts/cinecavB45i_sc.bwin_font" }} /* BDCC_FontStyle_SmallCaps */ }; /* we do not need to scale these fonts using the m2mc since we have pre-rendered a complete set of 126!! */ *scaleFactor = 100 ; /* scale factor in hundredths i.e. scale factor is 1.0 */ printf("USING MAX FONTS\n"); #endif #endif #endif BKNI_Memset( standardFonts, 0, ( sizeof( BDCC_FONT_DESCRIPTOR ) * BDCC_FontStyle_Max_Value )); BKNI_Memset( italicsFonts , 0, ( sizeof( BDCC_FONT_DESCRIPTOR ) * BDCC_FontStyle_Max_Value )); #ifdef FREETYPE_SUPPORT for ( i = 0; i < BDCC_FontStyle_Max_Value; i++){ for ( j = 0; j < BDCC_PenSize_Max_Size; j++){ standardFonts[ i ][ j ].pszFontFile = pszFontFilenames[ i ]; standardFonts[ i ][ j ].iFontSize = iFontSize[ i ][ g_DisplayMode ][ j ]; italicsFonts[ i ][ j ].pszFontFile = pszFontFilenames[ i ]; italicsFonts[ i ][ j ].iFontSize = iFontSize[ i ][ g_DisplayMode ][ j ]; } } #else for ( i = 0; i < BDCC_FontStyle_Max_Value; i++){ for ( j = 0; j < BDCC_PenSize_Max_Size; j++){ standardFonts[ i ][ j ].pszFontFile = pszStandardFontFilenames[ i ][ g_DisplayMode ][ j ]; standardFonts[ i ][ j ].iFontSize = -1; italicsFonts[ i ][ j ].pszFontFile = pszItalicFontFilenames[ i ][ g_DisplayMode ][ j ]; italicsFonts[ i ][ j ].iFontSize = -1; } } #endif printf("\nCCTest_P_LoadFonts():\n" ); /* ** First load the fonts. */ for ( i=0; i < BDCC_FontStyle_Max_Value; i++ ) { for(j=0; j < BDCC_PenSize_Max_Size; j++) { pFont = &standardFonts[ i ][ j ]; if(pFont->pszFontFile) /* need not specify all fonts, minimum is the DEFAULT font */ { iErr = BDCC_WINLIB_LoadFont( g_WindowLib, pFont->pszFontFile, pFont->iFontSize, i, j, BDCC_PenStyle_Standard ); printf("%s %s\n", iErr ? "\tFAILED to load font!!!:" : "\tloaded font:", pFont->pszFontFile ); } pFont = &italicsFonts[ i ][ j ]; if(pFont->pszFontFile) /* need not specify all fonts, minimum is the DEFAULT font */ { iErr = BDCC_WINLIB_LoadFont( g_WindowLib, pFont->pszFontFile, pFont->iFontSize, i, j, BDCC_PenStyle_Italics ); printf("%s %s\n", iErr ? "\tFAILED to load font!!!:" : "\tloaded font:", pFont->pszFontFile ); } } } printf("\n"); } /* end of CCTest_P_LoadFonts() */ void printHelpInfo( void ) { printf("#############################################################\n"); printf("#############################################################\n"); printf("TEST OPTIONS\n"); printf("-qam : QAM tune\n"); printf("-test n : selects test (1 - %d) from 708_test_string.h\n", BDCC_MAX_TESTS); printf("-testall : runs all tests from 708_test_string.h\n"); return; } /* end of file */ int QAMTune(void) { btuner_qam_params qam; bstream_mpeg mpeg; bband_t band; if (!tuner) { printf("Not initialized yet\n"); return 0; } bQamTune = true; if ( bDccApp ) { bDccApp = false; B_Dcc_SendTestString(g_ccEngine, ClearDccWindow[0], ClearDccWindowLength[0]); BKNI_Sleep(500); } btuner_qam_params_init(&qam, tuner); qam.symbol_rate = g_sourceParams.symbolrate; qam.mode = g_sourceParams.qam_mode; bstream_mpeg_init(&mpeg); mpeg.video[0].pid = g_sourceParams.video_pid; mpeg.audio[0].pid = g_sourceParams.audio_pid; mpeg.audio[0].format = baudio_format_ac3; mpeg.pcr_pid = g_sourceParams.video_pid; printf("Decoding from a QAM demod...\n"); band = btuner_tune_qam(tuner, g_sourceParams.frequency * 1000000, &qam); if (!band) goto error; stream = bstream_open(band, &mpeg); if (!stream) goto error; if (bdecode_start(decode, stream, window)) goto error; return 0; error: return 1; }