📄 dvb_ttx.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 + -