tpapi.h
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· C头文件 代码 · 共 500 行 · 第 1/2 页
H
500 行
/******************************************************************************
** *
** File Name: tpaip.h *
** Copyright: 2007-2008 Telepath Technologies Corp. All rights reserved.*
** Version: 1.1 *
** Description: Digital TV API. *
** *
*******************************************************************************
** Edit History *
** ------------------------------------------------------------------------- *
** DATE NAME DESCRIPTION *
** 8/30/2007 pxd Create. *
*******************************************************************************/
#ifndef _TPAPI_H
#define _TPAPI_H#ifdef __cplusplus
extern "C"
{
#endif
#include "tptypes.h"
//#define TP_DATA_ENCRYPTION
//#define TP_DEBUG_PRINT printf
#define TP_DEBUG_PRINT
#define DEFAULT_LANGUAGE TP_LANGUAGE_TYPE_CHINESE
#define DEFAULT_DISPLAY_HORIZON_WIDTH 272
#define DEFAULT_DISPLAY_VERTICAL_WIDTH 480
#define PLATFORM_BIG_ENDIAN
#define TP_NIT_SYSTIME_FIELD_WIDTH 5
#define TP_NIT_COUNTRYCODE_FIELD_WIDTH 3
#define TP_NIT_NET_FIELD_WIDTH 255
#define TP_NIT_FRAME_POINTER_NUM_MAX 15
#define TP_NIT_NEAR_NET_NUM_MAX 15
#define TP_VIDEO_STREAM_NUM_MAX 7
#define TP_AUDIO_STREAM_NUM_MAX 7
/* Return value type define */
#define TP_RET_SUC 0
#define TP_RET_DATA_NONE_ERR -1
#define TP_RET_VIDEO_BUF_ERR -2
#define TP_RET_AUDIO_BUF_ERR -3
#define TP_RET_CRC_ERR -4
#define TP_RET_REV_TIMEOUT_ERR -5
#define TP_RET_DATA_BUF_FULL_ERR -6
#define TP_RET_DATA_ERR -7
#define TP_RET_SEND_DATA_FAIL -8
#define TP_RET_WAIT_RESPONSE_TIMEOUT -9
#define TP_RET_RESPONSE_ERR -10
#define TP_RET_TS0_DATA_NONE -11
#define TP_RET_SERVICE_ID_ERR -12
#define TP_RET_SERVICE_TOO_MUCH -13
#define TP_RET_UNKNOW_ERR -14
/**************************************************************
Data put out structure
***************************************************************/
typedef enum
{
TP_VIDEO_ARITHMETIC_TYPE_AVS =0,
TP_VIDEO_ARITHMETIC_TYPE_H264 =1,
TP_VIDEO_ARITHMETIC_TYPE_OTHER =2
}TP_VIDEO_ARITHMETIC_TYPE_E;
typedef enum
{
TP_VIDEO_PRIORITY_LEVEL0 =0,
TP_VIDEO_PRIORITY_LEVEL1 =1,
TP_VIDEO_PRIORITY_LEVEL2 =2,
TP_VIDEO_PRIORITY_LEVEL3 =3,
TP_VIDEO_PRIORITY_LEVEL4 =4,
TP_VIDEO_PRIORITY_LEVEL5 =5,
TP_VIDEO_PRIORITY_LEVEL6 =6,
TP_VIDEO_PRIORITY_LEVEL7 =7
}TP_VIDEO_PRIORITY_E;
typedef enum
{
TP_VIDEO_FRAME_FREQ_25HZ =0,
TP_VIDEO_FRAME_FREQ_30HZ =1,
TP_VIDEO_FRAME_FREQ_12HZ =2, //12.5hz
TP_VIDEO_FRAME_FREQ_15HZ =3
}TP_VIDEO_FRAME_FREQ_E;
typedef enum
{
TP_AUDIO_ARITHMETIC_TYPE_SJT11368 =0,
TP_AUDIO_ARITHMETIC_TYPE_AAC =1
}TP_AUDIO_ARITHMETIC_TYPE_E;
typedef enum
{
TP_AUDIO_SAMPLERATE_8KHZ =0,
TP_AUDIO_SAMPLERATE_12KHZ =1,
TP_AUDIO_SAMPLERATE_16KHZ =2,
TP_AUDIO_SAMPLERATE_22KHZ =3, //22.05Khz
TP_AUDIO_SAMPLERATE_24KHZ =4,
TP_AUDIO_SAMPLERATE_32KHZ =5,
TP_AUDIO_SAMPLERATE_44KHZ =6, //44.1Khz
TP_AUDIO_SAMPLERATE_48KHZ =7,
TP_AUDIO_SAMPLERATE_96KHZ =8, TP_AUDIO_SAMPLERATE_MAX
}TP_AUDIO_SAMPLERATE_E;
typedef enum
{
TP_VIDEO_FRAME_TYPE_I =0,
TP_VIDEO_FRAME_TYPE_P =1,
TP_VIDEO_FRAME_TYPE_B =2
}TP_VIDEO_FRAME_TYPE_E;
typedef enum
{
TP_OTHER_DATA_TYPE_ESG =0,
TP_OTHER_DATA_TYPE_ECM = 128,
TP_OTHER_DATA_TYPE_EMM = 159
}TP_OTHER_DATA_TYPE_E;
typedef enum
{
TP_FRAME_DATA_STATE_NONE =0,
TP_FRAME_DATA_STATE_READING =1,
TP_FRAME_DATA_STATE_READY =2,
TP_FRAME_DATA_STATE_PLAYED =3
}TP_FRAME_DATA_STATE_E;
typedef enum
{
TP_LANGUAGE_TYPE_CHINESE =0,
TP_LANGUAGE_TYPE_ENGLISH =1,
TP_LANGUAGE_TYPE_MAX
}TP_LANGUAGE_TYPE_E;
typedef struct
{
TP_UINT16 FreqPointId;
TP_UINT16 BandWidth;
TP_UINT32 CentralFreq;
}TP_SYS_FREQPOINT_T;
typedef struct
{
TP_UINT8 NetLevel;
TP_UINT16 NetId;
TP_SYS_FREQPOINT_T FreqPoint;
}TP_SYS_NEAR_NET_T;
typedef struct
{
TP_BOOL Updated;
TP_FRAME_DATA_STATE_E State;
TP_UINT8 SysTime[TP_NIT_SYSTIME_FIELD_WIDTH];
TP_UINT8 CountryCode[TP_NIT_COUNTRYCODE_FIELD_WIDTH];
TP_UINT8 NetLevel;
TP_UINT16 NetId;
TP_UINT8 NetNameLength;
TP_UINT8 NetName[TP_NIT_NET_FIELD_WIDTH+1];
TP_UINT16 FreqPointId;
TP_UINT32 CentralFreq;
TP_UINT16 BandWidth;
TP_UINT16 OtherFreqPointNum;
TP_SYS_FREQPOINT_T OtherFreqPoint[TP_NIT_FRAME_POINTER_NUM_MAX];
TP_UINT8 NearNetNum;
TP_SYS_NEAR_NET_T NearNet[TP_NIT_NEAR_NET_NUM_MAX];
}TP_SYS_NIT_CONF_T;
typedef struct _SYS_SERVICE_T
{
TP_UINT16 ServId;
TP_UINT16 FreqPointId;
struct _SYS_SERVICE_T *next;
}TP_SYS_SERVICE_T;
typedef struct
{
TP_BOOL Updated;
TP_FRAME_DATA_STATE_E State;
TP_UINT16 ServiceNum;
TP_SYS_SERVICE_T *Service;
}TP_SYS_SERVICE_CONF_T;
typedef struct
{
TP_BOOL Valid;
TP_FRAME_DATA_STATE_E State;
TP_UINT16 DataLen;
TP_UINT8 *Data;
}TP_SYS_EB_STREAM_T;
typedef struct _SYS_ESGDT_SERVICE_CONF_T
{
TP_UINT8 EsgIndex;
TP_UINT16 EsgServId;
struct _SYS_ESGDT_SERVICE_CONF_T *next;
}TP_SYS_ESGDT_SERVICE_CONF_T;
typedef struct _SYS_ESGDT_DATA_BLOCK_CONF_T
{
TP_UINT8 BlockId;
TP_UINT8 BlockVer;
TP_UINT8 EsgIndex;
struct _SYS_ESGDT_DATA_BLOCK_CONF_T *next;
}TP_SYS_ESGDT_DATA_BLOCK_CONF_T;
typedef struct _SYS_ESGDT_DATA_CONF_T
{
TP_UINT8 DataType;
TP_UINT8 DataBlockNum;
TP_SYS_ESGDT_DATA_BLOCK_CONF_T *DataBlockConf;
struct _SYS_ESGDT_DATA_CONF_T *next;
}TP_SYS_ESGDT_DATA_CONF_T;
typedef struct
{
TP_BOOL Updated;
TP_FRAME_DATA_STATE_E State;
TP_UINT8 NetLevel;
TP_UINT16 NetId;
TP_UINT8 LocalTimePolarity;
TP_UINT8 LocalTimeOffset;
TP_UINT8 Charset;
TP_UINT8 ServConfNum;
TP_UINT8 DataConfNum;
TP_SYS_ESGDT_SERVICE_CONF_T *ServConf;
TP_SYS_ESGDT_DATA_CONF_T *DataConf;
}TP_SYS_ESGDT_CONF_T;
typedef struct _SYS_EADT_SERVICE_T
{
TP_UINT16 CaId;
TP_UINT16 ServiceId;
TP_UINT8 EmmDataType;
TP_UINT8 EcmDataType;
struct _SYS_EADT_SERVICE_T *next;
}TP_SYS_EADT_SERVICE_T;
typedef struct
{
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?