⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dvb_ttx.h

📁 DVB软件,基于CT216软件的开发源程序.
💻 H
字号:
/**************************************************************************

        (C)Copyright Cheertek Inc. 2002-2004,
           D700, all right reserved.

        Product : STB Firmware

****************************************************************************/
#ifndef __DVB_TELETEXT_H
#define __DVB_TELETEXT_H

#include "ap_defs.h"
#include "dvb_type.h"

/*! \file
* This module provides the Teletext on VBI and STB control API.
*
*/

/**
* Define the Teletext operation mode.
*/
typedef enum 
{    
    EN_TELETEXT_MODE_STB,
    EN_TELETEXT_MODE_VBI
}EN_TELETEXT_MODE;

/**
* Define the Teletext Color Key mode.
*/
typedef enum
{
    EN_TELETEXT_COLOR_KEY_MODE_A,    // Default Color Key Mode , will latch the last 4 page
    EN_TELETEXT_COLOR_KEY_MODE_B     // Color Key will be set to the newest 4 page
}EN_TELETEXT_COLOR_KEY_MODE;

/**
* Define the key in Teletext application.
*/
typedef enum
{
    TTX_KEY_NO_KEY,
	TTX_KEY_UP,
	TTX_KEY_DOWN,
	TTX_KEY_LEFT,
	TTX_KEY_RIGHT,	
	TTX_KEY_N0,
	TTX_KEY_N1,
	TTX_KEY_N2,
	TTX_KEY_N3,
	TTX_KEY_N4,
	TTX_KEY_N5,
	TTX_KEY_N6,
	TTX_KEY_N7,
	TTX_KEY_N8,
	TTX_KEY_N9,
	TTX_KEY_SELECT,					
	TTX_KEY_RED,
	TTX_KEY_GREEN,
	TTX_KEY_YELLOW,
	TTX_KEY_BLUE
}EN_DVB_TTX_KEY;


/**
* Define the Teletext Search Return mode.
*/
typedef enum
{
	EN_TELETEXT_SEARCH_EXIT,
	EN_TELETEXT_SEARCH_POWER,
	EN_TELETEXT_SEARCH_WRONG_PAGE,
	EN_TELETEXT_SEARCH_FIND_ONE,
	EN_TELETEXT_SEARCH_DONE
}EN_TELETEXT_SEARCH_RETURN_MODE;

typedef enum
{
	EN_TELETEXT_NONE    ,
	EN_TELETEXT_CZECH   ,     /* Czech/Slovak               */
	EN_TELETEXT_ENGLISH ,     /* English                    */
	EN_TELETEXT_ESTONIAN,     /* Estonian                   */
	EN_TELETEXT_FRENCH  ,     /* French                     */
	EN_TELETEXT_GERMAN  ,     /* German                     */
	EN_TELETEXT_ITALLIAN,     /* Itallian                   */
	EN_TELETEXT_LETTISH ,     /* Lettish/Lithuanian         */
	EN_TELETEXT_POLISH	, 	/* Polish                     */  
	EN_TELETEXT_SPANISH	, 	/* Spanish/Portuguese         */  
	EN_TELETEXT_RUMANIAN,  	/* Rumanian                   */  
	EN_TELETEXT_SERBIAN , 	/* Serbian/Croatian/Slovenian */  
	EN_TELETEXT_SWEDISH	, /* Swedish/Finnish/Hungarian  */    
	EN_TELETEXT_TURKISH ,     /* Turkish                    */
	EN_TELETEXT_RUSSIAN	, /* Russian/Bulgarian          */    
	EN_TELETEXT_UKRAINIAN,/* Ukrainian                  */    
	EN_TELETEXT_GREEK		,  /*Greek                      */      
	EN_TELETEXT_ARABIC	, /* Arabic                     */    
	EN_TELETEXT_HEBREW	, /* Hebrew                     */    
	EN_TELETEXT_AUTO			/* Let the system decide */
}EN_TELETEXT_LANGUAGE;

u8* DVB_TTX_GetVersion(void);

void DVB_TTX_SetLanguage(EN_TELETEXT_LANGUAGE enLang);

bool8 DVB_TTX_Init(EN_TELETEXT_MODE enMode);
/*! \fn bool8 DVB_TTX_Init(u8 enMode)
\brief Initial the Teletext , Only STB mode nedd to Init.  This mode needs call
DVB_TTX_Term() to terminal this mode to normal play.
\param enMode (Input) the Teletext operation mode
\return TRUE - success
\return FALSE - fail.
*/

EN_TELETEXT_MODE DVB_TTX_GetMode(void);
/*! \fn EN_TELETEXT_MODE DVB_TTX_GetMode(void)
\brief Get the teletext mode.
\return EN_TELETEXT_MODE_STB - teletext data will be decoded by STB and displayed on OSD.
\return EN_TELETEXT_MODE_VBI - teletext data will be inserted to VBI and decoded by TV.
*/


void DVB_TTX_Term(void);
/*! \fn bool8 DVB_TTX_STB_Term(void)
\brief Terminal the Teletext mode to normal play.
*/

void DVB_TTX_SetPID(u16 u16TTXPID);
/*! \fn void DVB_TTX_STB_SetPID(u16 u16TTXPID)
\brief Setting the Teletext PID.
\param u16TTXPID (Input) the Teletext PID
*/

u16 DVB_TTX_GetPID (void);
/*! \fn u16 DVB_TTX_GetPID (void)
\brief Get the Teletext PID. If the return is 0 or 0x2000, the video PID is disabled.
\return the video PID.
*/

void DVB_TTX_STB_ProcKey(u8 u8Key);
/*! \fn void DVB_TTX_STB_ProcKey(u8 u8Key)
\brief At Teletext STB mode ,input the Key to be processed.
\param u8Key (Input) the key number..
*/

void DVB_TTX_SetEnable_TTX(bool8 b8Enable);
/*! \fn void DVB_TTX_SetEnable_TTX(bool8 b8Enable)
\brief Enable the teletext data input, default is enable.
\param b8Enable (Input) TRUE- enalbe, FALSE- disable.
*/

bool8 DVB_TTX_SetFirstDisplayPage(u32 u32PageNo);
/*! \fn bool8 DVB_TTX_SetFirstDisplayPage(u32 u32PageNo)
\brief Set first display page of teletext.
\param u32PageNo (Input) which page you want to display first. The range is from 100 to 899.
\return TRUE: set page successful, FALSE: set page failed.
\Note 1: This function shuld be called before DVB_TTX_Init();
\Note 2: If you don't set first page, the default page will be 100.
*/

u32 DVB_TTX_GetFirstDisplayPage(void);
/*! \fn u32 DVB_TTX_GetFirstDisplayPage(void)
\brief Get first display page number of teletext.
\return first display page number of teletext.
*/

void DVB_TTX_SetColorKeyMode(EN_TELETEXT_COLOR_KEY_MODE enMode);
/*! \fn void DVB_TTX_SetColorKeyMode(EN_TELETEXT_COLOR_KEY_MODE enMode)
\brief Set color key mode of teletext.
\param enMode (Input) the color key mode.

\Note 1: This function shuld be called between DVB_TTX_Init() and DVB_TTX_SetPID();
\Note 2: When called DVB_TTX_Init() the color key mode will be set to default mode EN_TTX_COLOR_KEY_MODE_A.
*/

bool8 DVB_TTXDispInit(void);
void  DVB_TTXDispTerm(void);

#ifdef TTX_LEVEL15
u16 DVB_TTX_GetLinkPage(u8 u8index);

void DVB_TTX_SetPage(u16 u16Page);

void DVB_TTX_SubPageForward(void);	

void DVB_TTX_SubPageBackward(void);	

void DVB_TTX_SubPageExit(void);	

#ifdef TTX_SEQUENCE_CACHE_ENABLE
	bool8 DVB_TTX_CheckPage(u16 u16PageNo);

	void DVB_TTX_GetCurPageRange(u16 *pu16PageNoMin, u16 *pu16PageNoMax);
#endif

bool8 DVB_TTX_Search_Disp_Init (void);

void DVB_TTX_Search_Disp_Term (void);

void DVB_TTX_Search_Init (void);

EN_TELETEXT_SEARCH_RETURN_MODE DVB_TTX_Search_By_String (u16 u16OrgPageNumber, u8* pu8String, u16 *pu16NewPage, u8 *pu8LineNo, u8 *pu8StrStart, u8 *pu8StrBack);

void DVB_TTX_SetSubtitleMode(void);
#endif

void DVB_TTX_SetZoomMode(void);
/*! \fn DVB_TTX_SetZoomMode(void)
\brief Set Zoom Mode from Normal Mode to Under Mode Orderly.
\Note: Set Normal Mode -> Upper Mode -> Under Mode -> Normal Mode ....
*/

bool8 DVB_TTX_GetNormalZoomMode(void);
/*! \fn bool8 DVB_TTX_GetNormalZoomMode(void)
\brief Get zoom mode of teletext.
\return TRUE - teletext data will not be magnified.
\return FALSE - teletext data will be magnified.
*/

void DVB_TTX_ResetZoomMode(void);
/*! \fn DVB_TTX_ResetZoomMode(void)
\brief Reset Zoom mode to Normal Mode.
*/

bool8 DVB_TTX_SetCoordinate(u16 u16X, u16 u16Y);
/*! \fn bool8 DVB_TTX_SetCoordinate(u16 u16X, u16 u16Y)
\brief Set start coordinate of teletext.
\param u16X (Input) start x coordinate.
\param u16Y (Input) start y coordinate.
\return TRUE: set Coordinate successful, FALSE: set Coordinate failed.
*/

bool8 DVB_TTX_GetInitialPageCacheStatus(void);

void DVB_TTX_InitialPageCacheEnable(bool8 b8enable);

void DVB_TTX_ResetInitialPageCache(void);

void DVB_TTX_SetCacheInitialPage(u32 u32PageNo);

#ifdef PVR_ENABLE
void DVB_TTX_PVRPlay(bool8 b8play);
#endif

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -