You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1976 lines
60 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

/*
* Copyright (c) Hisilicon Technologies Co., Ltd.. 2012-2019. All rights reserved.
* Description:
* Author:
* Create:
*/
#ifndef __TV_COMMON_H__
#define __TV_COMMON_H__
#include <list>
#include <string>
#include <cstdint>
/* ***************************** Enum Definition ***************************** */
/* * \addtogroup TVMW */
/* * @{ */ /* * <!-- [TVMW] */
/* 3D mode */
/* 定义3D模式的枚举 */
enum TV_3DMODE_E {
TV_3DMODE_OFF = 0, // 3D off: 2D
TV_3DMODE_2DT3D = 1, // 2D转3D
TV_3DMODE_SBS = 2, // Side By Side
TV_3DMODE_TAB = 3, // Top And Bottom
TV_3DMODE_FP = 4, // frame paking:MVC
TV_3DMODE_LI = 5, // Line Interlace 水平交织
TV_3DMODE_AUTO = 6, // 3D Auto
TV_3DMODE_BUTT = 7,
};
/* 3D to 2D eye select enum */
/* 定义3D转2D画面内容选择枚举 */
enum TV_3DT2D_E {
TV_3DT2D_OFF = 0, // 3D转2D关闭
TV_3DT2D_L = 1, // 3D转2D左眼
TV_3DT2D_R = 2, // 3D转2D右眼
TV_3DT2D_BUTT = 3,
};
/* 3D frame packing type select enum */
/* 定义3D帧的打包类型枚举 */
enum TV_3D_FRAME_PACKING_TYPE_E {
TV_FRAME_PACKING_TYPE_NONE = 0, // Normal frame, not a 3D frame
TV_FRAME_PACKING_TYPE_SIDE_BY_SIDE = 1, // Side by side
TV_FRAME_PACKING_TYPE_TOP_AND_BOTTOM = 2, // Top and bottom
TV_FRAME_PACKING_TYPE_TIME_INTERLACED = 3, // Time interlaced
TV_FRAME_PACKING_TYPE_FRAME_PACKING = 4, // frame packing
TV_FRAME_PACKING_TYPE_BUTT = 5,
};
/* RF freq band enum */
/* 定义RF频段枚举 */
enum TV_ATVBAND_E {
TV_ATVBAND_VHF_LOW = 0,
TV_ATVBAND_VHF_HIGH = 1,
TV_ATVBAND_UHF = 2,
TV_ATVBAND_ALL = 3,
TV_ATVBAND_BUTT = 4,
};
/* Hdmi Cec Arc mode */
/* Hdmi Cec Arc 模式 */
enum TV_ARC_MODE_E {
TV_ARC_MODE_LPCM = 0, // ARC LCPM2.0
TV_ARC_MODE_RAW = 1, // ARC Pass-through
TV_ARC_MODE_HBR2LBR = 2, // ARC Pass-through force high-bitrate transcoding to low-bitrate. DD+ transcoded to DD
TV_ARC_MODE_AUTO = 3, // automatically match according to the audio capbility of ARC from HDMIRX
TV_ARC_MODE_BUTT = 4,
};
/* audio output channel */
/* 声音输出通道 */
enum TV_AUDIO_CHANNEL_E {
TV_AUDIO_CHANNEL_SPEAKER = 0,
TV_AUDIO_CHANNEL_HEADPHONE = 1,
TV_AUDIO_CHANNEL_BLUETOOTH = 2,
TV_AUDIO_CHANNEL_ARC = 3,
TV_AUDIO_CHANNEL_SPDIF = 4,
TV_AUDIO_CHANNEL_AVOUT = 5,
TV_AUDIO_CHANNEL_24G = 6,
TV_AUDIO_CHANNEL_I2S0 = 7,
TV_AUDIO_CHANNEL_HDMITX = 8,
TV_AUDIO_CHANNEL_BUTT = 9,
};
/* audio EQ band enum */
/* 音频均衡器分段枚举 */
enum TV_AUDIO_EQ_BAND_E {
TV_AUDIO_EQ_BAND0 = 0,
TV_AUDIO_EQ_BAND1 = 1,
TV_AUDIO_EQ_BAND2 = 2,
TV_AUDIO_EQ_BAND3 = 3,
TV_AUDIO_EQ_BAND4 = 4,
TV_AUDIO_EQ_BAND5 = 5,
TV_AUDIO_EQ_BAND6 = 6,
TV_AUDIO_EQ_BAND7 = 7,
TV_AUDIO_EQ_BAND8 = 8,
TV_AUDIO_EQ_BAND9 = 9,
TV_AUDIO_EQ_BUTT = 10,
};
/* advanced audio effect param config item */
/* 高级音效参数配置项 */
enum TV_AUDIO_AEF_CFG_E {
TV_AUDIO_AEF_CFG_SRS_ONOFF = 0,
TV_AUDIO_AEF_CFG_SRS_WOWHD_ONOFF = 1,
TV_AUDIO_AEF_CFG_SRS_TSHD_ONOFF = 2,
TV_AUDIO_AEF_CFG_SRS_CC3D_ONOFF = 3,
TV_AUDIO_AEF_CFG_SRS_CSHP_ONOFF = 4,
TV_AUDIO_AEF_CFG_SRS_TBHD_ONOFF = 5,
TV_AUDIO_AEF_CFG_SRS_INPUT_GAIN = 6,
TV_AUDIO_AEF_CFG_SRS_TRUEBASS_ONOFF = 7,
TV_AUDIO_AEF_CFG_SRS_TRUEBASS_GAIN = 8,
TV_AUDIO_AEF_CFG_SRS_TRUEDIALOG_ONOFF = 9,
TV_AUDIO_AEF_CFG_SRS_TRUEDIALOG_GAIN = 10,
TV_AUDIO_AEF_CFG_SRS_HANGMODE = 11,
TV_AUDIO_AEF_CFG_DAP_ONOFF = 101,
TV_AUDIO_AEF_CFG_DAP_DOLBY_ATMOS_ONOFF = 102,
TV_AUDIO_AEF_CFG_DAP_SOUND_MODE = 103,
TV_AUDIO_AEF_CFG_DAP_SURROUND_ONOFF = 104,
TV_AUDIO_AEF_CFG_DAP_DIALOG_MODE = 105,
TV_AUDIO_AEF_CFG_DAP_LEVELER_ONOFF = 106,
TV_AUDIO_AEF_CFG_DBX_ONOFF = 201,
TV_AUDIO_AEF_CFG_DBX_TOTSON = 202,
TV_AUDIO_AEF_CFG_DBX_TOTVOL = 203,
TV_AUDIO_AEF_CFG_DBX_TOTSUR = 204,
TV_AUDIO_AEF_CFG_SWS3D_ONOFF = 301,
TV_AUDIO_AEF_CFG_SWS3D_BASS_ONOFF = 302,
TV_AUDIO_AEF_CFG_SWS3D_BASS_GAIN = 303, // [0,12]
TV_AUDIO_AEF_CFG_SWS3D_TREBLE_ONOFF = 304,
TV_AUDIO_AEF_CFG_SWS3D_TREBLE_GAIN = 305, // [0,100]
TV_AUDIO_AEF_CFG_SWS3D_SURROUND_ONOFF = 306,
TV_AUDIO_AEF_CFG_SWS3D_SURROUND_GAIN = 307, // [0,100]
TV_AUDIO_AEF_CFG_SWS3D_DIALOG_ONOFF = 308,
TV_AUDIO_AEF_CFG_SWS3D_DIALOG_GAIN = 309, // [0,100]
TV_AUDIO_AEF_CFG_SWS3D_LOUDNESS_ONOFF = 310,
TV_AUDIO_AEF_CFG_SWS3D_LOUDNESS_GAIN = 311, // [0,20]
TV_AUDIO_AEF_CFG_DBX2_ONOFF = 401,
TV_AUDIO_AEF_CFG_DBX2_TOTSON = 402,
TV_AUDIO_AEF_CFG_DBX2_TOTVOL = 403,
TV_AUDIO_AEF_CFG_DBX2_TOTSUR = 404,
TV_AUDIO_AEF_CFG_BUTT
};
enum TV_DAP_SOUND_MODE_E {
TV_DAP_SOUND_MODE_AUTO = 0,
TV_DAP_SOUND_MODE_MOVIE = 1,
TV_DAP_SOUND_MODE_MUSIC = 2,
TV_DAP_SOUND_MODE_GAME = 3,
TV_DAP_SOUND_MODE_NEWS = 4,
TV_DAP_SOUND_MODE_NIGHT = 5,
TV_DAP_SOUND_MODE_VOICE = 6,
TV_DAP_SOUND_MODE_USER1 = 7,
TV_DAP_SOUND_MODE_USER2 = 8,
TV_DAP_SOUND_MODE_OFF = 9,
TV_DAP_SOUND_MODE_BUTT = 10,
};
enum TV_DAP_DIALOG_ENHANCER_E {
TV_DAP_DIALOG_ENHANCER_OFF = 0,
TV_DAP_DIALOG_ENHANCER_LOW = 1,
TV_DAP_DIALOG_ENHANCER_MID = 2,
TV_DAP_DIALOG_ENHANCER_HIGH = 3,
TV_DAP_DIALOG_ENHANCER_BUTT = 4,
};
enum TV_DBX2_TOTVOL_E {
TV_DBX2_TOTVOL_NORMAL = 0,
TV_DBX2_TOTVOL_NIGHT = 1,
TV_DBX2_TOTVOL_OFF = 2,
TV_DBX2_TOTVOL_BUTT = 3,
};
enum TV_DBX2_TOTSON_E {
TV_DBX2_SOUND_MODE_STANDARD = 0,
TV_DBX2_SOUND_MODE_MUSIC = 1,
TV_DBX2_SOUND_MODE_MOVIE = 2,
TV_DBX2_SOUND_MODE_SPEECH = 3,
TV_DBX2_SOUND_MODE_NIGHT = 4,
TV_DBX2_SOUND_MODE_SPORTS = 5,
TV_DBX2_SOUND_MODE_CONCERT = 6,
TV_DBX2_SOUND_MODE_USER1 = 7,
TV_DBX2_SOUND_MODE_USER2 = 8,
TV_DBX2_SOUND_MODE_USER3 = 9,
TV_DBX2_SOUND_MODE_OFF = 10,
TV_DBX2_SOUND_MODE_BUTT = 11,
};
/* basic audio effect param config item */
/* 标准音频参数配置项 */
enum TV_AUDIO_EF_CFG_E {
TV_AUDIO_EF_CFG_TREBLE = 0,
TV_AUDIO_EF_CFG_BASS = 1,
TV_AUDIO_EF_CFG_BALANCE = 2,
TV_AUDIO_EF_CFG_BAND0_LEVEL = 3,
TV_AUDIO_EF_CFG_BAND1_LEVEL = 4,
TV_AUDIO_EF_CFG_BAND2_LEVEL = 5,
TV_AUDIO_EF_CFG_BAND3_LEVEL = 6,
TV_AUDIO_EF_CFG_BAND4_LEVEL = 7,
TV_AUDIO_EF_CFG_AVC_ONOFF = 8,
TV_AUDIO_EF_CFG_DRC_THRESHOLD = 9,
TV_AUDIO_EF_CFG_NR_THRESHOLD = 10,
TV_AUDIO_EF_CFG_PEQ_GAIN0 = 11,
TV_AUDIO_EF_CFG_PEQ_GAIN1 = 12,
TV_AUDIO_EF_CFG_PEQ_GAIN2 = 13,
TV_AUDIO_EF_CFG_PEQ_GAIN3 = 14,
TV_AUDIO_EF_CFG_PEQ_GAIN4 = 15,
TV_AUDIO_EF_CFG_PEQ_Q0 = 16,
TV_AUDIO_EF_CFG_PEQ_Q1 = 17,
TV_AUDIO_EF_CFG_PEQ_Q2 = 18,
TV_AUDIO_EF_CFG_PEQ_Q3 = 19,
TV_AUDIO_EF_CFG_PEQ_Q4 = 20,
TV_AUDIO_EF_CFG_BUTT = 21,
};
/* advanced audio effect type */
/* 高级音效类型 */
enum TV_AUDIO_AEF_TYPE_E {
TV_AUDIO_AEF_TYPE_OFF = 0, // 所有音效关闭
TV_AUDIO_AEF_TYPE_SWS = 1, // 自研SWS音效类型
TV_AUDIO_AEF_TYPE_SRS = 2, // 付费SRS音效类型
TV_AUDIO_AEF_TYPE_DBX = 3, // 付费DBX音效类型
TV_AUDIO_AEF_TYPE_SWS3D = 4, // 自研SWS3D音效类型
TV_AUDIO_AEF_TYPE_BUTT = 5, // 无效类型
};
/* TV audio system enum */
/* TV音频伴音制式枚举 */
enum TV_AUDIO_SYS_E {
TV_AUDIO_SYS_BG = 0, // Audio standard BG, 音频伴音制式BG
TV_AUDIO_SYS_BG_A2 = 1, // Audio standard BG A2, 音频伴音制式BG A2
TV_AUDIO_SYS_BG_NICAM = 2, // Audio standard BG NICAM, 音频伴音制式BG NICAM
TV_AUDIO_SYS_I = 3, // Audio standard I, 音频伴音制式I
TV_AUDIO_SYS_DK = 4, // Audio standard DK, 音频伴音制式DK
TV_AUDIO_SYS_DK1_A2 = 5, // Audio standard DK1 A2, 音频伴音制式DK1 A2
TV_AUDIO_SYS_DK2_A2 = 6, // Audio standard DK2 A2, 音频伴音制式DK2 A2
TV_AUDIO_SYS_DK3_A2 = 7, // Audio standard DK3 A2, 音频伴音制式DK3 A2
TV_AUDIO_SYS_DK_NICAM = 8, // Audio standard DK NICAM, 音频伴音制式DK NICAM
TV_AUDIO_SYS_L = 9, // Audio standard L, 音频伴音制式L
TV_AUDIO_SYS_M = 10, // Audio standard M, 音频伴音制式M
TV_AUDIO_SYS_M_BTSC = 11, // Audio standard M BTSC, 音频伴音制式M BTSC
TV_AUDIO_SYS_M_A2 = 12, // Audio standard M A2, 音频伴音制式M A2
TV_AUDIO_SYS_M_EIA_J = 13, // Audio standard M EIA J, 音频伴音制式M EIA J
TV_AUDIO_SYS_NOTSTANDARD = 14,
TV_AUDIO_SYS_UNKNOW = 15,
};
/* 音频码流类型 */
enum TV_AUDIO_STREAM_TYPE_E {
TV_AUDIO_STREAM_TYPE_DTS = 0,
TV_AUDIO_STREAM_TYPE_DOLBY = 1,
TV_AUDIO_STREAM_TYPE_BUTT = 2,
};
/* TV color system enum */
/* TV视频彩色制式枚举 */
enum TV_COLOR_SYS_E {
TV_COLOR_SYS_AUTO = 0,
TV_COLOR_SYS_PAL = 1,
TV_COLOR_SYS_NTSC = 2,
TV_COLOR_SYS_SECAM = 3,
TV_COLOR_SYS_PALM = 4,
TV_COLOR_SYS_PALN = 5,
TV_COLOR_SYS_PAL60 = 6,
TV_COLOR_SYS_NTSC443 = 7,
TV_COLOR_SYS_NTSC50 = 8,
TV_COLOR_SYS_BUTT = 9,
};
/* audio mode/MTS mode */
/* 音频伴音模式/丽音模式 */
enum TV_MTS_MODE_E {
TV_MTS_MODE_MONO = 0, // Audio Mode MONO
TV_MTS_MODE_STEREO = 1, // Audio Mode G Stereo
TV_MTS_MODE_DUAL_A = 2, // Audio Mode Dual A
TV_MTS_MODE_DUAL_B = 3, // Audio Mode Dual B
TV_MTS_MODE_DUAL_AB = 4, // Audio Mode Dual AB
TV_MTS_MODE_BTSC_MONO = 5, // Audio Mode BTSC MONO
TV_MTS_MODE_BTSC_STEREO = 6, // Audio Mode BTSC STEREO
TV_MTS_MODE_BTSC_SAP = 7, // Audio Mode BTSC SAP
TV_MTS_MODE_NICAM_FORCED_MONO = 8, // Audio Mode NICAM Forced MONO
TV_MTS_MODE_NICAM_MONO = 9, // Audio Mode NICAM MONO
TV_MTS_MODE_NICAM_STEREO = 10, // Audio Mode NICAM Stereo
TV_MTS_MODE_NICAM_DUAL_A = 11, // Audio Mode NICAM DUAL A
TV_MTS_MODE_NICAM_DUAL_B = 12, // Audio Mode NICAM DUAL B
TV_MTS_MODE_NICAM_DUAL_AB = 13, // Audio Mode NICAM DUAL AB
TV_MTS_MODE_AUTO = 14, // Audio Mode AUTO
TV_MTS_MODE_BUTT = 15,
};
/* screen capture/snapshot type */
/* 抓图/截图类型, 支持纯视频层, 视频层和图形层叠加两种方式 */
enum TV_CAPTURE_TYPE_E {
TV_CAPTURE_TYPE_VIDEO = 0, // capture video
TV_CAPTURE_TYPE_GRAPHIC = 1, // capture graphic. No support now!
TV_CAPTURE_TYPE_VIDEO_GRAPHIC = 2, // capture video + graphic
TV_CAPTURE_TYPE_BUTT = 3,
};
/* Hdmi Cec logical address enum */
/* Hdmi Cec 逻辑地址枚举 */
enum TV_CEC_LOGICAL_ADDR_E {
TV_CEC_LOGICAL_ADDR_TV = 0x00,
TV_CEC_LOGICAL_ADDR_RECDEV1 = 0x01,
TV_CEC_LOGICAL_ADDR_RECDEV2 = 0x02,
TV_CEC_LOGICAL_ADDR_TUNER1 = 0x03, // STB1 in Spev v1.3
TV_CEC_LOGICAL_ADDR_PLAYBACK1 = 0x04, // DVD1 in Spev v1.3
TV_CEC_LOGICAL_ADDR_AUDSYS = 0x05, // Audio device such as ARC.
TV_CEC_LOGICAL_ADDR_TUNER2 = 0x06, // STB2 in Spec v1.3
TV_CEC_LOGICAL_ADDR_TUNER3 = 0x07, // STB3 in Spec v1.3
TV_CEC_LOGICAL_ADDR_PLAYBACK2 = 0x08, // DVD2 in Spec v1.3
TV_CEC_LOGICAL_ADDR_RECDEV3 = 0x09,
TV_CEC_LOGICAL_ADDR_TUNER4 = 0x0A, // RES1 in Spec v1.3
TV_CEC_LOGICAL_ADDR_PLAYBACK3 = 0x0B, // RES2 in Spec v1.3
TV_CEC_LOGICAL_ADDR_RES3 = 0x0C,
TV_CEC_LOGICAL_ADDR_RES4 = 0x0D,
TV_CEC_LOGICAL_ADDR_FREEUSE = 0x0E,
TV_CEC_LOGICAL_ADDR_UNREGORBC = 0x0F,
TV_CEC_LOGICAL_ADDR_BUTT = 0x10,
};
/* TV system language enum */
/* TV 系统语言定义枚举 */
enum TV_LANGUAGE_E {
TV_LANG_CHINESE = 0,
TV_LANG_ENGLISH = 1,
TV_LANG_BUTT = 2,
};
/* Hdmi Cec UI menu item */
/* Hdmi Cec UI菜单项 */
enum TV_CEC_UI_MENU_E {
TV_CEC_UI_MENU_ENABLE = 0,
TV_CEC_UI_MENU_ONETCHPLY = 1,
TV_CEC_UI_MENU_STANDBY = 2,
TV_CEC_UI_MENU_DEVMENUCTRL = 3,
TV_CEC_UI_MENU_AMPLIFIER = 4,
TV_CEC_UI_MENU_ARC = 5,
TV_CEC_UI_MENU_BUTT = 6,
};
/* TIF CEC 选项 */
enum TV_TIF_CEC_OPTION {
TV_TIF_CEC_OPTION_WAKEUP = 0,
TV_TIF_CEC_OPTION_ENABLE_CEC = 1,
TV_TIF_CEC_OPTION_SYSTEM_CEC_CONTROL = 2,
TV_TIF_CEC_OPTION_STANDBY = 3,
TV_TIF_CEC_OPTION_MENUCTRL = 4,
TV_TIF_CEC_OPTION_BUTT,
};
/* Hdmi Cec UI control command enum */
/* Hdmi Cec UI 控制命令 */
enum TV_CEC_UI_CMD_E {
TV_CEC_UI_CMD_SELECT = 0,
TV_CEC_UI_CMD_UP = 1,
TV_CEC_UI_CMD_DOWN = 2,
TV_CEC_UI_CMD_LEFT = 3,
TV_CEC_UI_CMD_RIGHT = 4,
TV_CEC_UI_CMD_EXIT = 5,
TV_CEC_UI_CMD_ENTER = 6,
TV_CEC_UI_CMD_PLAY = 7,
TV_CEC_UI_CMD_VOLUP = 8,
TV_CEC_UI_CMD_VOLDOWN = 9,
TV_CEC_UI_CMD_MUTE = 10,
TV_CEC_UI_CMD_STOP = 11,
TV_CEC_UI_CMD_PAUSE = 12,
TV_CEC_UI_CMD_REWIND = 13,
TV_CEC_UI_CMD_FASTFORWARD = 14,
TV_CEC_UI_CMD_FORWARD = 15,
TV_CEC_UI_CMD_BACKWARD = 16,
TV_CEC_UI_CMD_ROOTMENU = 17,
TV_CEC_UI_CMD_BUTT = 18,
};
/* chip capability enum */
/* 芯片支持能力集 */
enum TV_CHIP_CAPABILITY_E {
TV_CHIP_CAP_DOLBY = 0,
TV_CHIP_CAP_DTS = 1, // support SRS
TV_CHIP_CAP_ADVCA = 2,
TV_CHIP_CAP_MACROVISION = 3,
TV_CHIP_CAP_DD = 4,
TV_CHIP_CAP_DBX = 5,
TV_CHIP_CAP_DAP = 6,
TV_CHIP_CAP_BUTT
};
/* color space enum */
/* 色域空间枚举 */
enum TV_COLOR_SPACE_E {
TV_CS_UNKNOWN = 0,
TV_CS_DEFAULT = 1,
TV_CS_BT601_YUV_LIMITED = 2, // Current Used, BT.601
TV_CS_BT601_YUV_FULL = 3,
TV_CS_BT601_RGB_LIMITED = 4,
TV_CS_BT601_RGB_FULL = 5,
TV_CS_NTSC1953 = 6,
TV_CS_BT470_SYSTEM_M = 7,
TV_CS_BT470_SYSTEM_BG = 8,
TV_CS_BT709_YUV_LIMITED = 9, // Current Used, BT.709
TV_CS_BT709_YUV_FULL = 10,
TV_CS_BT709_RGB_LIMITED = 11,
TV_CS_BT709_RGB_FULL = 12, // Current Used
TV_CS_BT2020_YUV_LIMITED = 13, // Current Used, BT.2020
TV_CS_BT2020_YUV_FULL = 14,
TV_CS_BT2020_RGB_LIMITED = 15,
TV_CS_BT2020_RGB_FULL = 16, // Current Used
TV_CS_REC709 = 17, // HD and modern captures
TV_CS_SMPT170M = 18, // ITU-R 601 -- broadcast NTSC/PAL
TV_CS_SMPT240M = 19, // 1125-Line (US) HDTV
TV_CS_BT878 = 20,
TV_CS_XVYCC = 21,
TV_CS_JPEG = 22,
TV_CS_RGB = 23,
TV_CS_BUTT = 24,
};
/* total volume type of advanced audio effect DBX */
/* DBX音效总恒音类型, 用于控制不规则的声音变化 */
enum TV_DBX_TOTVOL_E {
TV_DBX_TOTVOL_NORMAL = 0, // normal mode
TV_DBX_TOTVOL_NIGHT = 1, // night mode
TV_DBX_TOTVOL_OFF = 2, // total volume off
TV_DBX_TOTVOL_BUTT = 3,
};
/* Dolby mode */
/* 杜比模式 */
enum TV_DOLBY_MODE_E {
TV_DOLBY_MODE_LINE = 0,
TV_DOLBY_MODE_RF = 1,
TV_DOLBY_MODE_BUTT = 2,
};
/* ADC/PC auto adjust state */
/* ADC(颜色)自动校正/PC(位置)自动校正状态 */
enum TV_ADJ_STAT_E {
TV_ADJ_STAT_BEGIN = 0,
TV_ADJ_STAT_FINISH = 1,
TV_ADJ_STAT_TIMEOUT = 2,
TV_ADJ_STAT_FAIL = 3,
TV_ADJ_STAT_BUTT = 4,
};
/* non-linear adjust item */
/* 非线性调节项枚举 */
enum TV_NLA_E {
TV_NLA_VOLUME = 0,
TV_NLA_BRIGHTNESS = 1,
TV_NLA_CONTRAST = 2,
TV_NLA_SATURATION = 3,
TV_NLA_SHARPNESS = 4,
TV_NLA_HUE = 5,
TV_NLA_BACKLIGHT = 6,
TV_NLA_BUTT = 7,
};
/* test pattern of Display. Factory Setting, used for Aging Mode */
/* DISP测试图像枚举. 工厂菜单设置项, 可用于老化模式 */
enum TV_TEST_PATTERN_E {
TV_TEST_PATTERN_OFF = 0,
TV_TEST_PATTERN_BLACK = 1,
TV_TEST_PATTERN_WHITE = 2,
TV_TEST_PATTERN_RED = 3,
TV_TEST_PATTERN_GREEN = 4,
TV_TEST_PATTERN_BLUE = 5,
TV_TEST_PATTERN_GRAY = 6,
TV_TEST_PATTERN_BUTT = 7,
};
/* test pattern of test pixel picture/card */
/* 测试图卡类型枚举, 图卡由中间件生成一帧送给驱动VO模块 */
enum TV_PIXPIC_PATTERN_E {
TV_PIXPIC_PATTERN_0IRE = 0,
TV_PIXPIC_PATTERN_10IRE = 1,
TV_PIXPIC_PATTERN_20IRE = 2,
TV_PIXPIC_PATTERN_30IRE = 3,
TV_PIXPIC_PATTERN_40IRE = 4,
TV_PIXPIC_PATTERN_50IRE = 5,
TV_PIXPIC_PATTERN_60IRE = 6,
TV_PIXPIC_PATTERN_70IRE = 7,
TV_PIXPIC_PATTERN_80IRE = 8,
TV_PIXPIC_PATTERN_90IRE = 9,
TV_PIXPIC_PATTERN_100IRE = 10,
TV_PIXPIC_PATTERN_RED = 11,
TV_PIXPIC_PATTERN_GREEN = 12,
TV_PIXPIC_PATTERN_BLUE = 13,
TV_PIXPIC_PATTERN_CUSTOM = 14, // user defined color with specified R/G/B value.用户自定义RGB
TV_PIXPIC_PATTERN_BUTT
};
/* panel flip/mirror mode */
/* 屏幕翻转方式 */
enum TV_FLIP_MODE_E {
TV_FLIP_MODE_OFF = 0, // normal
TV_FLIP_MODE_MIRROR = 1, // mirror
TV_FLIP_MODE_FLIP = 2, // flip
TV_FLIP_MODE_MIRROR_FLIP = 3, // mirror and flip
TV_FLIP_MODE_BUTT = 4,
};
/* window rotation type */
/* 视频旋转角度枚举 */
enum TV_WIN_ROTATION_E {
TV_WIN_ROTATION_0 = 0, // 0度旋转
TV_WIN_ROTATION_90 = 1, // 90度旋转
TV_WIN_ROTATION_180 = 2, // 180度旋转
TV_WIN_ROTATION_270 = 3, // 270度旋转
TV_WIN_ROTATION_BUTT = 4,
};
/* picture aspect ratio type enum */
/* 图像比例模式枚举 */
enum TV_ASPECT_E {
TV_ASPECT_16_9 = 0,
TV_ASPECT_14_9 = 1,
TV_ASPECT_4_3 = 2,
TV_ASPECT_FULL = 3,
TV_ASPECT_POINT_TO_POINT = 4,
TV_ASPECT_AUTO = 5,
TV_ASPECT_SUBTITLE = 6,
TV_ASPECT_PERSON = 7,
TV_ASPECT_CINEMA = 8,
TV_ASPECT_PANORAMA = 9,
TV_ASPECT_ZOOM = 10,
TV_ASPECT_ZOOM1 = 11,
TV_ASPECT_ZOOM2 = 12,
TV_ASPECT_TRUTH = 13,
TV_ASPECT_21_9 = 14,
TV_ASPECT_BUTT = 15,
};
/* picture colortemp level enum */
/* 色温等级类型枚举 */
enum TV_COLORTEMP_E {
TV_COLORTEMP_NATURE = 0,
TV_COLORTEMP_COOL = 1,
TV_COLORTEMP_WARM = 2,
TV_COLORTEMP_USER = 3,
TV_COLORTEMP_TOCOOL = 4,
TV_COLORTEMP_TOWARM = 5,
TV_COLORTEMP_BUTT = 6,
};
/* common level enum */
/* 通用等级枚举: 关、低、中、高 、自动五等级 */
enum TV_LEVEL_E {
TV_LEVEL_OFF = 0,
TV_LEVEL_LOW = 1,
TV_LEVEL_MID = 2,
TV_LEVEL_HIGH = 3,
TV_LEVEL_AUTO = 4,
TV_LEVEL_BUTT = 5,
};
/* demo mode/type enum */
/* 卖场对比演示模式/类型枚举 */
enum TV_DEMO_MODE_E {
TV_DEMO_DBDR = 0,
TV_DEMO_NR = 1,
TV_DEMO_SHARPNESS = 2,
TV_DEMO_DCI = 3,
TV_DEMO_WCG = 4,
TV_DEMO_MEMC = 5,
TV_DEMO_COLOR = 6,
TV_DEMO_SR = 7,
TV_DEMO_HDR = 8,
TV_DEMO_ALL = 9,
TV_DEMO_DOLBY = 10,
TV_DEMO_BUTT,
};
/* demo level */
/* 关、开、演示三等级 */
enum TV_DEMO_LEVEL_E {
TV_DEMO_LEVEL_OFF = 0,
TV_DEMO_LEVEL_ON = 1,
TV_DEMO_LEVEL_DEMO = 2,
TV_DEMO_LEVEL_BUTT = 3,
};
/* HDR type */
/* HDR 类型 */
enum TV_HDR_TYPE_E {
TV_HDR_TYPE_SDR = 0,
TV_HDR_TYPE_SDR_BT2020_NONCONSTLUM = 1,
TV_HDR_TYPE_SDR_BT2020_CONSTLUM = 2,
TV_HDR_TYPE_SDR_XVYCC = 3,
TV_HDR_TYPE_HDR10 = 4,
TV_HDR_TYPE_SLF = 5,
TV_HDR_TYPE_HLG = 6,
TV_HDR_TYPE_TECHNICOLOR = 7,
TV_HDR_TYPE_DOLBYVISION = 8,
TV_PQ_HDR_TYPE_CUVA = 9,
TV_HDR_TYPE_BUTT,
};
/* picture mode enum */
/* 图像模式枚举 */
enum TV_PICMODE_E {
TV_PICMODE_STANDARD = 0,
TV_PICMODE_DYNAMIC = 1,
TV_PICMODE_SOFTNESS = 2,
TV_PICMODE_USER = 3,
TV_PICMODE_VIVID = 4,
TV_PICMODE_NATURAL = 5,
TV_PICMODE_SPORTS = 6,
TV_PICMODE_BUTT = 7,
};
/* PQ setting module enum */
/* PQ模块枚举 */
enum TV_PQ_MODULE_E {
TV_PQ_MODULE_FMD = 0,
TV_PQ_MODULE_NR = 1,
TV_PQ_MODULE_DB = 2,
TV_PQ_MODULE_DR = 3,
TV_PQ_MODULE_DS = 4,
TV_PQ_MODULE_HSHARPNESS = 5,
TV_PQ_MODULE_SHARPNESS = 6,
TV_PQ_MODULE_CCCL = 7,
TV_PQ_MODULE_COLOR_CORING = 8,
TV_PQ_MODULE_BLUE_STRETCH = 9,
TV_PQ_MODULE_GAMMA = 10,
TV_PQ_MODULE_DBC = 11,
TV_PQ_MODULE_DCI = 12,
TV_PQ_MODULE_COLOR = 13,
TV_PQ_MODULE_SR = 14,
TV_PQ_MODULE_WCG = 15,
TV_PQ_MODULE_HDR = 16,
TV_PQ_MODULE_IQTM = 17,
TV_PQ_MODULE_SDR2HDR = 18,
TV_PQ_MODULE_ALL = 19, /* true:Restore last module status; false:Close all pq module */
TV_PQ_MODULE_BUTT,
};
/* gamma type */
/* gamma 类型 */
enum TV_GAMMA_TYPE_E {
TV_GAMMA_TYPE_1886 = 0,
TV_GAMMA_TYPE_2084 = 1,
TV_GAMMA_TYPE_BUTT = 2,
};
/* signal status enum */
/* 信号状态类型 */
enum TV_SIGNAL_STAT_E {
TV_SIGNAL_SUPPORT = 0,
TV_SIGNAL_NOSIGNAL = 1,
TV_SIGNAL_UNSUPPORT = 2,
TV_SIGNAL_UNSTABLE = 3,
TV_SIGNAL_BUTT = 4,
};
/* sound field/location mode */
/* 声场定位枚举类型 */
enum TV_SNDLOCATE_E {
TV_SNDLOCATE_DESKTOP = 0, // desktop mode
TV_SNDLOCATE_WALL = 1, // wall-hang mode
TV_SNDLOCATE_BUTT = 2,
};
/* sound mode enum */
/* 声音模式枚举 */
enum TV_SNDMODE_E {
TV_SNDMODE_STANDARD = 0,
TV_SNDMODE_NEWS = 1,
TV_SNDMODE_MUSIC = 2,
TV_SNDMODE_MOVIE = 3,
TV_SNDMODE_SPORTS = 4,
TV_SNDMODE_USER = 5,
TV_SNDMODE_4K = 6,
TV_SNDMODE_BUTT = 7,
};
/* audio mute type */
/* 音频端口的静音类型 */
enum TV_SND_MUTE_TYPE_E {
TV_SND_MUTE_IRCTRL = 0, // IR 静音
TV_SND_MUTE_POLICY = 1, // Policy静音, 应用策略静音, 供外部USB 插入时静音speaker
TV_SND_MUTE_SIGNAL = 2, // MW 内部使用, 无信号静音
TV_SND_MUTE_SELSRC = 3, // MW 内部使用, 换源静音
TV_SND_MUTE_SELPRG = 4, // MW 内部使用, 换台静音
TV_SND_MUTE_SCNPRG = 5, // MW 内部使用, 搜台静音
TV_SND_MUTE_FOCUS = 6, // MW 内部使用, 失焦静音
TV_SND_MUTE_CONFIG = 7, // MW 内部使用, 配参静音
TV_SND_MUTE_HEADSET = 8, // MW 内部使用, 耳机链接, Speaker静音
TV_SND_MUTE_SPDIF = 9, // MW 内部使用, SPDIF输出, Speaker静音
TV_SND_MUTE_ARC = 10, // MW 内部使用, ARC输出, Speaker静音
TV_SND_MUTE_SRC_LOCK = 11, // MW 内部使用, 信源锁静音
TV_SND_MUTE_CHANNEL_LOCK = 12, // MW 内部使用, 频道锁静音
TV_SND_MUTE_PARENT_LOCK = 13, // MW 内部使用, 父母锁静音
TV_SND_MUTE_BUTT = 14,
};
/* spdif mode enum */
/* spdif 模式 */
enum TV_SPDIF_MODE_E {
TV_SPDIF_MODE_PCM = 0,
TV_SPDIF_MODE_RAW = 1,
TV_SPDIF_MODE_AUTO = 2,
TV_SPDIF_MODE_BUTT = 3,
};
/* speaker output type */
/* 扬声器输出方式 */
enum TV_SPEAKER_TYPE_E {
TV_SPEAKER_INTERNAL = 0,
TV_SPEAKER_EXTERNAL = 1,
TV_SPEAKER_BUTT = 2,
};
/* stereo or not */
/* 立体声模式 */
enum TV_STEREO_E {
TV_STEREO_MONO = 0,
TV_STEREO_STEREO = 1,
TV_STEREO_BUTT = 2,
};
/* TV signal input source index */
/* 输入信号源序号定义 */
enum TV_SRC_E {
TV_SRC_ATV = 0,
TV_SRC_DVBC = 1,
TV_SRC_DTMB = 2,
TV_SRC_CVBS1 = 3,
TV_SRC_CVBS2 = 4,
TV_SRC_CVBS3 = 5,
TV_SRC_VGA = 6,
TV_SRC_YPBPR1 = 7,
TV_SRC_YPBPR2 = 8,
TV_SRC_HDMI1 = 9,
TV_SRC_HDMI2 = 10,
TV_SRC_HDMI3 = 11,
TV_SRC_HDMI4 = 12,
TV_SRC_MEDIA = 13,
TV_SRC_MEDIA2 = 14,
TV_SRC_SCART1 = 15,
TV_SRC_SCART2 = 16,
TV_SRC_AUTO = 17,
TV_SRC_DVBT = 18,
TV_SRC_ATSC = 19,
TV_SRC_DVBS = 20,
TV_SRC_ISDBT = 21,
TV_SRC_BUTT = 22,
};
/* country or region, must keep consistent with MW_COUNTRY_E */
/* 国家地区定义 */
enum TV_COUNTRY_E {
TV_COUNTRY_CHINA = 0,
TV_COUNTRY_HONGKONG_CHINA = 1,
TV_COUNTRY_TAIWAN_CHINA = 2,
TV_COUNTRY_INDONESIA = 3,
TV_COUNTRY_MALAYSIA = 4,
TV_COUNTRY_SINGAPORE = 5,
TV_COUNTRY_THAILAND = 6,
TV_COUNTRY_VIETNAM = 7,
TV_COUNTRY_INDIA = 8,
TV_COUNTRY_USA = 9,
TV_COUNTRY_BRAZIL = 10, // Brazil is btsc
TV_COUNTRY_AUSTRIA = 11,
TV_COUNTRY_PHILIPPINES = 12, // philippines is btsc
TV_COUNTRY_CANADA = 13,
TV_COUNTRY_MEXICO = 14,
TV_COUNTRY_CZECH = 15,
TV_COUNTRY_DENMARK = 16,
TV_COUNTRY_FINLAND = 17,
TV_COUNTRY_FRANCE = 18,
TV_COUNTRY_GERMANY = 19,
TV_COUNTRY_GREECE = 20,
TV_COUNTRY_HUNGARY = 21,
TV_COUNTRY_ITALY = 22,
TV_COUNTRY_LUXEMBOURG = 23,
TV_COUNTRY_NETHERLANDS = 24,
TV_COUNTRY_NORWAY = 25,
TV_COUNTRY_POLAND = 26,
TV_COUNTRY_PORTUGAL = 27,
TV_COUNTRY_SPAIN = 28,
TV_COUNTRY_SWEDEN = 29,
TV_COUNTRY_SWITZERLAND = 30,
TV_COUNTRY_SWITZERLAND_FRA = 31, // use this table if menu language is french
TV_COUNTRY_SWITZERLAND_ITA = 32, // use this table if menu language is italian
TV_COUNTRY_JAPAN = 33,
TV_COUNTRY_UNITED_KINGDOM = 34,
TV_COUNTRY_KOREA = 35, // add new country or region enum following
TV_COUNTRY_ARGENTINA = 36,
TV_COUNTRY_CHILE = 37,
TV_COUNTRY_PERU = 38,
TV_COUNTRY_URUGUAY = 39,
TV_COUNTRY_MYANMAR = 40,
TV_COUNTRY_RUSSIA = 41,
TV_COUNTRY_BELGIUM = 42,
TV_COUNTRY_TURKEY = 43,
TV_COUNTRY_SERBIA = 44,
TV_COUNTRY_CROATIA = 45,
TV_COUNTRY_ROMANIA = 46,
TV_COUNTRY_COLOMBIA = 47,
TV_COUNTRY_NEWZEALAND = 48,
TV_COUNTRY_AUSTRALIA = 49,
TV_COUNTRY_BUTT = 50,
};
/* Teletext key support list */
/* TTX默认支持的交互方式 */
enum TV_TTX_KEY_E {
TV_TTX_KEY_0 = 0,
TV_TTX_KEY_1 = 1,
TV_TTX_KEY_2 = 2,
TV_TTX_KEY_3 = 3,
TV_TTX_KEY_4 = 4,
TV_TTX_KEY_5 = 5,
TV_TTX_KEY_6 = 6,
TV_TTX_KEY_7 = 7,
TV_TTX_KEY_8 = 8,
TV_TTX_KEY_9 = 9, // Three number key to open a specified page, 三个数字键打开指定页
TV_TTX_KEY_PREVIOUS_PAGE = 10, // Previous page, 上一页
TV_TTX_KEY_NEXT_PAGE = 11, // Next page, 下一页
TV_TTX_KEY_PREVIOUS_SUBPAGE = 12, // Previous subpage, 上一 子页
TV_TTX_KEY_NEXT_SUBPAGE = 13, // Next subpage, 下一 子页
TV_TTX_KEY_PREVIOUS_MAGAZINE = 14, // Previous magazine, 上一杂志
TV_TTX_KEY_NEXT_MAGAZINE = 15, // Next magazine, 下一杂志
// First link in packet X/27, if inexistence, Show first valid page, X/27 包中的第一个链接无X/27则显示最近有效页
TV_TTX_KEY_RED = 16,
/* Second link in packet X/27, if inexistence,
Show second valid page, X/27 包中的第二个链接无X/27则显示第二有效页 */
TV_TTX_KEY_GREEN = 17,
// Third link in packet X/27, if inexistence, Show third valid page, X/27 包中的第三个链接无X/27则显示第三有效页
TV_TTX_KEY_YELLOW = 18,
// Fourth link in packet X/27, if inexistence, Show fourth valid page.
// you can replace it with blue key if no cyan key on the user's control unit
TV_TTX_KEY_CYAN = 19,
// X/27 包中的第四个链接无X/27则显示第四有效页。如果遥控器上没有CYAN键你可以用BLUE键来替代。
// Sixth link in packet X/27, if inexistence, Show index page, X/27 包中的第六个链接无X/27则指向起始页
TV_TTX_KEY_INDEX = 20,
TV_TTX_KEY_REVEAL = 21, // Reveal or hide concealed information, 显示/隐藏conceal 信息
TV_TTX_KEY_HOLD = 22, // Switch between start and stop auto play, 自动播放/停止自动播放切换
// Switch between transparent and nontransparent background, Teletext背景透明/不透明切换
TV_TTX_KEY_MIX = 23,
TV_TTX_KEY_UPDATE = 24, // Update current page, 更新当前页
TV_TTX_KEY_ZOOM = 25, // zoom page, 放大按键
TV_TTX_KEY_SUBPAGE = 26, // subpage page, 子页按键
TV_TTX_KEY_BUTT = 27, // Invalid key, 无效的按键
};
/* TTX Language */
enum TV_TTX_LANG_E {
TV_TTX_LANG_ARABIC = 0, /* 阿拉伯 */
TV_TTX_LANG_EAST = 1, /* 东欧 */
TV_TTX_LANG_WEST = 2, /* 西欧 */
TV_TTX_LANG_FARSI = 3, /* 波斯 */
TV_TTX_LANG_RUSSIAN = 4, /* 俄罗斯 */
TV_TTX_LANG_BUTT = 5
};
/* atv tuner sif bandwide type */
/* atv tuner带宽类型枚举 */
enum TV_TUNER_BANDWIDTH_E {
TV_TUNER_BANDWIDTH_WIDE = 0, // For Auto Scan Mode
TV_TUNER_BANDWIDTH_NORMAL = 1, // For Normal Play Mode
TV_TUNER_BANDWIDTH_NARROW = 2, // Not Recommended
TV_TUNER_BANDWIDTH_BUTT = 3,
};
/* SIF over Devaiton/Modulation value enum */
/* SIF过调制大小 */
enum TV_OVER_MODULATION_E {
TV_OVER_MODULATION_50K = 0, // 过调制 50K
TV_OVER_MODULATION_100K = 1, // 过调制 100K
TV_OVER_MODULATION_200K = 2, // 过调制 200K
TV_OVER_MODULATION_384K = 3, // 过调制 384K
TV_OVER_MODULATION_540K = 4, // 过调制 500K
TV_OVER_MODULATION_BUTT = 5,
};
/* video definition enum */
/* 视频清晰度 */
enum TV_VIDEO_DEFINITION_E {
TV_VIDEO_DEFINITION_STANDARD = 0,
TV_VIDEO_DEFINITION_HIGH = 1,
TV_VIDEO_DEFINITION_4K = 2,
TV_VIDEO_DEFINITION_8K = 3, // need sdk support
TV_VIDEO_DEFINITION_BUTT = 4,
};
/* panel LVDS spread frequency */
/* LVDS展频频率 */
enum TV_PANEL_LVDS_SSFREQ_E {
TV_PANEL_LVDS_SSFREQ_93P75KHZ = 2,
TV_PANEL_LVDS_SSFREQ_62P5KHZ = 3,
TV_PANEL_LVDS_SSFREQ_46P875KHZ = 4,
TV_PANEL_LVDS_SSFREQ_37P5KHZ = 5,
TV_PANEL_LVDS_SSFREQ_BUTT = 6,
};
/* LVDS drv current */
/* LVDS驱动电流 */
enum TV_PANEL_LVDS_CURRENT_E {
TV_PANEL_LVDS_CURRENT_200MV = 0,
TV_PANEL_LVDS_CURRENT_250MV = 1,
TV_PANEL_LVDS_CURRENT_300MV = 2,
TV_PANEL_LVDS_CURRENT_350MV = 3,
TV_PANEL_LVDS_CURRENT_400MV = 4,
TV_PANEL_LVDS_CURRENT_450MV = 5,
TV_PANEL_LVDS_CURRENT_500MV = 6,
TV_PANEL_LVDS_CURRENT_BUTT = 7,
};
/* LVDS voltage */
/* LVDS共模电压 */
enum TV_PANEL_LVDS_VOLTAGE_E {
TV_PANEL_LVDS_VOLTAGE_400MV = 0,
TV_PANEL_LVDS_VOLTAGE_450MV = 1,
TV_PANEL_LVDS_VOLTAGE_500MV = 2,
TV_PANEL_LVDS_VOLTAGE_550MV = 3,
TV_PANEL_LVDS_VOLTAGE_600MV = 4,
TV_PANEL_LVDS_VOLTAGE_650MV = 5,
TV_PANEL_LVDS_VOLTAGE_700MV = 6,
TV_PANEL_LVDS_VOLTAGE_800MV = 7,
TV_PANEL_LVDS_VOLTAGE_900MV = 8,
TV_PANEL_LVDS_VOLTAGE_1000MV = 9,
TV_PANEL_LVDS_VOLTAGE_1100MV = 10,
TV_PANEL_LVDS_VOLTAGE_1150MV = 11,
TV_PANEL_LVDS_VOLTAGE_1200MV = 12,
TV_PANEL_LVDS_VOLTAGE_1250MV = 13,
TV_PANEL_LVDS_VOLTAGE_1300MV = 14,
TV_PANEL_LVDS_VOLTAGE_1400MV = 15,
TV_PANEL_LVDS_VOLTAGE_1500MV = 16,
TV_PANEL_LVDS_VOLTAGE_BUTT = 17,
};
/* *Panel link type */
enum TV_PANEL_LINKTYPE_E {
TV_PANEL_LINKTYPE_1LINK = 0,
TV_PANEL_LINKTYPE_2LINK = 1,
TV_PANEL_LINKTYPE_4LINK = 2,
TV_PANEL_LINKTYPE_8LINK = 3,
TV_PANEL_LINKTYPE_16LINK = 4,
TV_LVDS_LINKTYPE_BUTT,
};
/* *LVDS link map */
enum TV_PANEL_LVDS_LINKMAP_E {
TV_PANEL_LVDS_LINKMAP_PIXEL0 = 0, /* *<output pixel 0 */
TV_PANEL_LVDS_LINKMAP_PIXEL1 = 1, /* *<output pixel 1 */
TV_PANEL_LVDS_LINKMAP_PIXEL2 = 2, /* *<output pixel 2 */
TV_PANEL_LVDS_LINKMAP_PIXEL3 = 3, /* *<output pixel 2 */
TV_PANEL_LVDS_LINKMAP_BUTT, /* *<Invalid value */
};
/* *LVDS bit width */
enum TV_PANEL_BITWIDTH_E {
TV_PANEL_BITWIDTH_8BIT = 0, /* *<bit width is 8 */
TV_PANEL_BITWIDTH_10BIT = 1, /* *<bit width is 10 */
TV_PANEL_BITWIDTH_12BIT = 2, /* *<bit width is 12 */
TV_PANEL_BITWIDTH_6BIT = 3, /* *<bit width is 6 */
TV_PANEL_BITWIDTH_BUTT, /* *<Invalid value */
};
/* *LVDS format */
enum TV_PANEL_LVDS_FMT_E {
TV_PANEL_LVDS_FMT_VESA = 0, /* *<LVDS format:VESA */
TV_PANEL_LVDS_FMT_JEIDA = 1, /* *<LVDS format:JEIDA */
TV_PANEL_LVDS_FMT_FP = 2, /* *<LVDS format:FP */
TV_PANEL_LVDS_FMT_BUTT, /* *<Invalid value */
};
enum TV_PANEL_LVDS_SWAP_E {
TV_PANEL_LVDS_SWAP_ODD = 0,
TV_PANEL_LVDS_SWAP_EVEN = 1,
TV_PANEL_LVDS_SWAP_BUTT,
};
/* VBO spread frequency */
/* VBO展频频率 */
enum TV_PANEL_VBO_SSFREQ_E {
// TV_PANEL_VBO_SSFREQ_93P75KHZ = 1,
TV_PANEL_VBO_SSFREQ_46P875KHZ = 2,
TV_PANEL_VBO_SSFREQ_31P250KHZ = 3,
TV_PANEL_VBO_SSFREQ_23P438KHZ = 4,
TV_PANEL_VBO_SSFREQ_18P750KHZ = 5,
TV_PANEL_VBO_SSFREQ_93P875KHZ = 6,
TV_PANEL_VBO_SSFREQ_62P5KHZ = 7,
TV_PANEL_VBO_SSFREQ_37P5KHZ = 8,
TV_PANEL_VBO_SSFREQ_26P786KHZ = 9,
TV_PANEL_VBO_SSFREQ_20P833KHZ = 10,
TV_PANEL_VBO_SSFREQ_BUTT = 11,
};
/* VBO drv current */
/* VBO驱动电流 */
enum TV_PANEL_VBO_CURRENT_E {
TV_PANEL_VBO_CURRENT_200MV = 0,
TV_PANEL_VBO_CURRENT_250MV = 1,
TV_PANEL_VBO_CURRENT_300MV = 2,
TV_PANEL_VBO_CURRENT_350MV = 3,
TV_PANEL_VBO_CURRENT_400MV = 4,
TV_PANEL_VBO_CURRENT_450MV = 5,
TV_PANEL_VBO_CURRENT_500MV = 6,
TV_PANEL_VBO_CURRENT_BUTT = 7,
};
/* VBO Pre-emphasis */
/* VBO预加重 */
enum TV_PANEL_VBO_EMP_E {
TV_PANEL_VBO_EMP_0DB = 0, /* CNcomment/:预加重为0DB */
TV_PANEL_VBO_EMP_1DB = 1, /* CNcomment/:预加重为1DB */
TV_PANEL_VBO_EMP_2DB = 2, /* CNcomment/:预加重为2DB */
TV_PANEL_VBO_EMP_3DB = 3, /* CNcomment/:预加重为3DB */
TV_PANEL_VBO_EMP_4DB = 4, /* CNcomment/:预加重为4DB */
TV_PANEL_VBO_EMP_5DB = 5, /* CNcomment/:预加重为5DB */
TV_PANEL_VBO_EMP_6DB = 6, /* CNcomment/:预加重为6DB */
TV_PANEL_VBO_EMP_7DB = 7, /* CNcomment/:预加重为7DB */
TV_PANEL_VBO_EMP_8DB = 8, /* CNcomment/:预加重为8DB */
TV_PANEL_VBO_EMP_9DB = 9, /* CNcomment/:预加重为9DB */
TV_PANEL_VBO_EMP_BUTT = 10,
};
/* system suspend mode */
/* 待机模式 */
enum TV_SUSPEND_E {
TV_SUSPEND_OFF = 0, // Power off
TV_SUSPEND_MEM = 1, // Suspend to mem
TV_SUSPEND_DISK = 2, // Suspend to disk
TV_SUSPEND_BUTT = 3,
};
/* system power on mode */
/* 上电开机模式 */
enum TV_POWERMODE_E {
TV_POWERMODE_IMMEDIACY = 0, // 立即开机
TV_POWERMODE_STANDBY = 1, // 待机
TV_POWERMODE_RESTORE = 2, // 恢复关机前状态
TV_POWERMODE_BUTT = 3,
};
/* system power on type */
/* 开机类型 */
enum TV_POWERTYPE_E {
TV_POWERTYPE_TIMER = 0, // 定时器
TV_POWERTYPE_OTHERS = 1, // 非定时器的其他方式
TV_POWERTYPE_BUTT = 2,
};
/* system boot wakeup mode */
/* 系统唤醒模式 */
enum TV_WAKEUP_MODE_E {
TV_WAKEUP_IR = 0, // Woken by the IR module
TV_WAKEUP_KEYLED = 1, // Woken by the keys on the front panel
TV_WAKEUP_TIMEOUT = 2, // Woken by the timing interrupt
TV_WAKEUP_ETH = 3, // Woken by the ethernet interrupt
TV_WAKEUP_USB = 4, // Woken by the USB interrupt
TV_WAKEUP_GPIO = 5, // Woken by the GPIO interrupt
TV_WAKEUP_LSADC = 6, // Woken by the LSADC
TV_WAKEUP_CEC = 7, // Woken by the CEC
TV_WAKEUP_UART = 8, // Woken by the UART
TV_WAKEUP_VGA = 9, // Woken by the VGA
TV_WAKEUP_HDMI = 10, // Woken by the HDMI
TV_WAKEUP_SCART = 11, /* Woken by the SCART */
TV_WAKEUP_TIMEOUT_BG = 12, /* Woken by the timeout to scan/PVR/EPG */
TV_WAKEUP_BUTT,
};
/* system power on music index */
/* 开机音乐索引 */
enum TV_POWERMUSIC_E {
TV_POWERMUSIC_FIRST = 1,
TV_POWERMUSIC_SECOND = 2,
TV_POWERMUSIC_BUTT = 3,
};
/* color section type for PQ setting */
/* 颜色分段类型 */
enum TV_PQ_COLOR_E {
TV_PQ_COLOR_R = 0,
TV_PQ_COLOR_G = 1,
TV_PQ_COLOR_B = 2,
TV_PQ_COLOR_CYAN = 3,
TV_PQ_COLOR_PURPLE = 4,
TV_PQ_COLOR_YELLOW = 5,
TV_PQ_COLOR_FLESH = 6,
TV_PQ_COLOR_BUTT = 7,
};
enum TV_PQ_MPLUS_MODE_E {
TV_PQ_MPLUS_MODE_LOW_POWER = 0,
TV_PQ_MPLUS_MODE_HIGH_LUMINANCE_I = 1,
TV_PQ_MPLUS_MODE_HIGH_LUMINANCE_II = 2,
TV_PQ_MPLUS_MODE_HDR = 3,
TV_PQ_MPLUS_MODE_BUTT = 4,
};
/* NR strength type Y/C */
/* 降噪强度类型 */
enum TV_PQ_NRSTR_E {
TV_PQ_NRSTR_Y = 0, // nr strength Y, 亮度降噪强度
TV_PQ_NRSTR_C = 1, // nr strength C, 色度降噪强度
TV_PQ_NRSTR_BUTT = 2,
};
/* panel fix rate type */
/* 固定输出帧率枚举 */
enum TV_FIXRATE_E {
TV_PANEL_FIXRATE_NONE = 0, // 不固定输出帧率
TV_PANEL_FIXRATE_FHD_50HZ = 1, // fixrate type is fhd50
TV_PANEL_FIXRATE_FHD_60HZ = 2, // fixrate type is fhd60
TV_PANEL_FIXRATE_FHD_OTHER = 3, // fixrate type is fhd OtherFr
TV_PANEL_FIXRATE_UHD_50HZ = 4, // fixrate type is uhd50
TV_PANEL_FIXRATE_UHD_60HZ = 5, // fixrate type is uhd60
TV_PANEL_FIXRATE_UHD_OTHER = 6, // fixrate type is uhd OtherFr
TV_PANEL_FIXRATE_BUTT = 7, // Invalid value
};
/* 3D frame packing type */
/* 3D 格式 */
enum TV_FRAME_PACKING_E {
TV_FRAME_PACKING_NONE = 0, // Normal frame, not a 3D frame
TV_FRAME_PACKING_SIDE_BY_SIDE = 1, // Side by side
TV_FRAME_PACKING_TOP_AND_BOTTOM = 2, // Top and bottom
TV_FRAME_PACKING_TIME_INTERLACED = 3, // Time interlaced: one frame for left eye, the next frame for right eye
TV_FRAME_PACKING_FRAME_PACKING = 4, // frame packing
TV_FRAME_PACKING_3D_TILE = 5, // Tile 3D
TV_FRAME_PACKING_BUTT = 6,
};
/* Hdmi Edid type */
/* Hdmi Edid 类型 */
enum TV_HDMI_EDID_TYPE_E {
TV_HDMI_EDID_TYPE_20 = 0,
TV_HDMI_EDID_TYPE_14 = 1,
TV_HDMI_EDID_TYPE_AUTO = 2,
TV_HDMI_EDID_TYPE_BUTT = 3,
};
/* HDMI signal format */
/* HDMI 信号格式 */
enum TV_HDMI_FORMAT_E {
TV_HDMI_FORMAT_HDMI = 0,
TV_HDMI_FORMAT_DVI = 1,
TV_HDMI_FORMAT_MHL = 2,
TV_HDMI_FORMAT_BUTT = 3,
};
/* CNcomment/: 定义视频制式枚举 */
enum TV_HDMITX_FMT_E {
TV_HDMITX_FMT_AUTO = 0,
TV_HDMITX_FMT_VESA_1366X768_60 = 1,
TV_HDMITX_FMT_1080P_50 = 2,
TV_HDMITX_FMT_1080P_60 = 3,
TV_HDMITX_FMT_3840X2160_30 = 4,
TV_HDMITX_FMT_3840X2160_50 = 5,
TV_HDMITX_FMT_3840X2160_60 = 6,
TV_HDMITX_FMT_BUTT = 7,
};
/* 定义颜色空间和位深枚举 */
enum TV_HDMITX_COLOR_FORMAT_E {
TV_HDMITX_COLOR_RGB444_8 = 0,
TV_HDMITX_COLOR_RGB444_10 = 1,
TV_HDMITX_COLOR_RGB444_12 = 2,
TV_HDMITX_COLOR_YCBCR444_8 = 3,
TV_HDMITX_COLOR_YCBCR444_10 = 4,
TV_HDMITX_COLOR_YCBCR444_12 = 5,
TV_HDMITX_COLOR_YCBCR422 = 6,
TV_HDMITX_COLOR_YCBCR420_8 = 7,
TV_HDMITX_COLOR_YCBCR420_10 = 8,
TV_HDMITX_COLOR_YCBCR420_12 = 9,
TV_HDMITX_COLOR_BUTT = 10,
};
/* HDMI MHL RCP key enum */
/* HDMI MHL RCP(远程控制)键值 */
enum TV_MHL_RCP_KEY_E {
TV_MHL_RCP_KEY_SELECT = 0,
TV_MHL_RCP_KEY_UP = 1,
TV_MHL_RCP_KEY_DOWN = 2,
TV_MHL_RCP_KEY_LEFT = 3,
TV_MHL_RCP_KEY_RIGHT = 4,
TV_MHL_RCP_KEY_ROOT_MENU = 5,
TV_MHL_RCP_KEY_EXIT = 6,
TV_MHL_RCP_KEY_PLAY = 7,
TV_MHL_RCP_KEY_STOP = 8,
TV_MHL_RCP_KEY_PAUSE = 9,
TV_MHL_RCP_KEY_REWIND = 10,
TV_MHL_RCP_KEY_FAST_FWD = 11,
TV_MHL_RCP_KEY_BUTT = 12,
};
/* lock enable switch type */
/* 锁开关类型 */
enum TV_LOCK_SWITCH_E {
TV_LOCK_SWITCH_TOTAL = 0,
TV_LOCK_SWITCH_SRC = 1,
TV_LOCK_SWITCH_CHANNEL = 2,
TV_LOCK_SWITCH_PARENT = 3,
TV_LOCK_SWITCH_BUTT,
};
/* lock type */
/* 锁类型 */
enum TV_LOCK_TYPE_E {
TV_LOCK_SRC = 0,
TV_LOCK_CHANNEL = 1,
TV_LOCK_PARENT = 2,
TV_LOCK_BUTT,
};
/* CC switch status */
enum TV_CC_SWITCH_E {
TV_CC_SWITCH_OFF = 0, /* 关闭 */
TV_CC_SWITCH_ON = 1, /* 打开 */
TV_CC_SWITCH_ONMUTE = 2, /* 静音打开 */
TV_CC_SWITCH_BUTT = 3
};
/* vchip system type */
/* vchip 系统类型 */
enum TV_VCHIP_SYSTEM_E {
TV_VCHIP_SYSTEM_MPA = 0, // US Motion Picture Association
TV_VCHIP_SYSTEM_USTV = 1, // US TV parental guideline
TV_VCHIP_SYSTEM_CAN_ENG = 2, // Canadian english language rating
TV_VCHIP_SYSTEM_CAN_FRE = 3, // Canadian french language rating
TV_VCHIP_SYSTEM_BUTT = 4,
};
/* vchip system MPA rating level */
/* 美国电影分级系统等级 */
enum TV_VCHIP_MPA_RATING_E {
TV_VCHIP_MPA_RATING_NA = 0,
TV_VCHIP_MPA_RATING_G = 1,
TV_VCHIP_MPA_RATING_PG = 2,
TV_VCHIP_MPA_RATING_PG13 = 3,
TV_VCHIP_MPA_RATING_R = 4,
TV_VCHIP_MPA_RATING_NC17 = 5,
TV_VCHIP_MPA_RATING_X = 6,
TV_VCHIP_MPA_RATING_NOTRATED = 7,
TV_VCHIP_MPA_RATING_BUTT = 8,
};
/* vchip system USTV rating level */
/* 美国电视分级系统等级 */
enum TV_VCHIP_USTV_RATING_E {
TV_VCHIP_USTV_RATING_NONE = 0,
TV_VCHIP_USTV_RATING_TVY = 1,
TV_VCHIP_USTV_RATING_TVY7 = 2,
TV_VCHIP_USTV_RATING_TVG = 3,
TV_VCHIP_USTV_RATING_TVPG = 4,
TV_VCHIP_USTV_RATING_TV14 = 5,
TV_VCHIP_USTV_RATING_NONE1 = 6,
TV_VCHIP_USTV_RATING_TVMA = 7,
TV_VCHIP_USTV_RATING_BUTT = 8,
};
/* vchip system CAN ENG rating level */
/* 加拿大英语节目电视分级系统等级 */
enum TV_VCHIP_CAN_ENG_RATING_E {
TV_VCHIP_CAN_ENG_RATING_Ex = 0,
TV_VCHIP_CAN_ENG_RATING_C = 1,
TV_VCHIP_CAN_ENG_RATING_C8 = 2,
TV_VCHIP_CAN_ENG_RATING_G = 3,
TV_VCHIP_CAN_ENG_RATING_PG = 4,
TV_VCHIP_CAN_ENG_RATING_14 = 5,
TV_VICHP_CAN_ENG_RATING_18 = 6,
TV_VCHIP_CAN_ENG_RATING_BUTT = 7,
};
/* vchip system CAN FRE rating level */
/* 加拿大法语节目电视分级系统等级 */
enum TV_VCHIP_CAN_FRE_RATING_E {
TV_VCHIP_CAN_FRE_RATING_Ex = 0,
TV_VCHIP_CAN_FRE_RATING_G = 1,
TV_VCHIP_CAN_FRE_RATING_8ANS = 2,
TV_VCHIP_CAN_FRE_RATING_13ANS = 3,
TV_VCHIP_CAN_FRE_RATING_16ANS = 4,
TV_VCHIP_CAN_FRE_RATING_18ANS = 5,
TV_VCHIP_CAN_FRE_RATING_18 = 6,
TV_VCHIP_CAN_FRE_RATING_BUTT = 7,
};
/* vchip U.S. TV program category, sorting by the content of the TV programmes */
/* vchip 美国电视节目分级下的二级分类, 根据节目内容进行分类 */
/* 根据节目分级不同, 节目分类的类型描述也分等级, 如轻微, 少量, 激烈 */
enum TV_VCHIP_USTV_CATEGORY_E {
TV_VCHIP_USTV_CATEGORY_ALL = 0, // all kinds of program,所有类型节目
TV_VCHIP_USTV_CATEGORY_FV = 1, // contains fictitious violence, 含虚拟暴力画面, 如动画
TV_VCHIP_USTV_CATEGORY_V = 2, // contains violence, 含暴力画面
TV_VCHIP_USTV_CATEGORY_S = 3, // contains sexual situations, 含成人情节
TV_VCHIP_USTV_CATEGORY_L = 4, // contains coarse language, 含不雅用语
TV_VCHIP_USTV_CATEGORY_D = 5, // contains suggestive dialogue, 含性暗示对话
TV_VCHIP_USTV_CATEGORY_BUTT = 6,
};
/* mode of vchip U.S. TV program category */
/* vchip 美国电视节目对应等级下对应的节目类型的模式, 即该节目是否受限加锁 */
enum TV_VCHIP_USTV_CATEGORY_MODE_E {
TV_VCHIP_USTV_CATEGORY_MODE_UNLIMIT = 0, // not control
TV_VCHIP_USTV_CATEGORY_MODE_LIMIT = 1, // limit category
TV_VCHIP_USTV_CATEGORY_MODE_NONE = 2, // Not involved
TV_VCHIP_USTV_CATEGORY_MODE_BUTT = 3,
};
/* PC Mode */
/* PC 模式 */
enum TV_PCMODE_E {
TV_PCMODE_AUTO = 0,
TV_PCMODE_PC = 1,
TV_PCMODE_VIDEO = 2,
TV_PCMODE_BUTT = 3,
};
/* panel dimming type */
/* 屏Dim类型 */
enum TV_PANEL_DIM_TYPE_E {
TV_PANEL_DIM_0D = 0, // 0D Dim Type
TV_PANEL_DIM_LOCAL = 1, // LOCAL Dim Type
TV_PANEL_DIM_BUTT = 2,
};
/* Panel LocalDimming Demo mode */
/* Panel LocalDimming的Demo模式 */
enum TV_PANEL_LDM_DEMO_MODE_E {
TV_PANEL_LDM_DEMO_RIGHT_SCREEN = 0, // 右边是处理后的图像,左边是源图像
TV_PANEL_LDM_DEMO_LEFT_SCREEN = 1, // 左边是处理后的图像,右边是源图像
TV_PANEL_LDM_DEMO_TOP_SCREEN = 2, // 上边是处理后的图像,下边是源图像
TV_PANEL_LDM_DEMO_BOTTOM_SCREEN = 3, // 下边是处理后的图像,上边是源图像
TV_PANEL_LDM_DEMO_WHITE_SCREEN = 4, // 全屏白屏 */
TV_PANEL_LDM_DEMO_RIGHT_WHITE_SCREEN = 5, // 右边是白屏的图像,左边是源图像
TV_PANEL_LDM_DEMO_LEFT_WHITE_SCREEN = 6, // 左边是白屏的图像,右边是源图像
TV_PANEL_LDM_DEMO_TOP_WHITE_SCREEN = 7, // 上边是白屏的图像,下边是源图像
TV_PANEL_LDM_DEMO_BOTTOM_WHITE_SCREEN = 8, // 下边是白屏的图像,上边是源图像
TV_PANEL_LDM_DEMO_HORSELIGHT = 9, // 跑马灯
TV_PANEL_LDM_DEMO_OFF = 10, // 关闭Demo模式
TV_PANEL_LDM_DEMO_BUTT = 11,
};
/* video input csc(color space convert) type */
/* 视频输入的色域空间转换类型 */
enum TV_INPUT_CSC_TYPE_E {
TV_INPUT_CSC_TYPE_AUTO = 0,
TV_INPUT_CSC_TYPE_RGB_FULL = 1,
TV_INPUT_CSC_TYPE_RGB_LIMIT = 2,
TV_INPUT_CSC_TYPE_BUTT = 3,
};
/* display ink(R/G/B of a pixel) position enum */
/* INK(像素点的RGB值)绑定位置枚举 */
enum TV_DISP_INK_POS_E {
TV_DISP_INK_POS_CSC_F = 0, // CSC前
TV_DISP_INK_POS_CSC_B = 1, // CSC后
TV_DISP_INK_POS_GAMMA_F = 2, // GAMMA前
TV_DISP_INK_POS_GAMMA_B = 3, // GAMMA后
TV_DISP_INK_POS_DITHER_B = 4, // DITHER后
TV_DISP_INK_BUTT = 5,
};
/* Disp region index. used to enable region to set ambilight */
/* Disp分割区域编号, 用于设置流光溢彩时开启Disp区域RGB统计功能 */
enum TV_DISP_ABL_REGION_E {
TV_DISP_ABL_REGION0 = 0,
TV_DISP_ABL_REGION1,
TV_DISP_ABL_REGION2,
TV_DISP_ABL_REGION3,
TV_DISP_ABL_REGION4,
TV_DISP_ABL_REGION5,
TV_DISP_ABL_REGION6,
TV_DISP_ABL_REGION7,
TV_DISP_ABL_REGION_BUTT,
};
/* window type enum */
/* 窗口类型 */
enum TV_WINDOW_E {
TV_WINDOW_MAIN = 0, // main window, 主窗口
TV_WINDOW_SUB = 1, // sub window, 子窗口
TV_WINDOW_AUTO = 2, // auto, 自动识别
TV_WINDOW_BUTT = 3,
};
/* defination here is different with UAPI_WINDOW_FREEZE_MODE_E! convert in tv_mw_drv_video_device.cpp */
/* window freeze mode def */
enum TV_FREEZE_E {
TV_FREEZE_LAST = 0, /* freeze window with last frame */
TV_FREEZE_BLACK = 1, /* freeze window with specify color,such as blue or black */
TV_FREEZE_BUTT = 2,
};
enum TV_UART_VGADDC_SWITCH_E {
TV_SWITCH_UART_0 = 0, // 串口0 为系统串口
TV_SWITCH_UART_1 = 1, // 串口1 为Mdebug ,PQ工具用的串口
TV_SWITCH_STB_GPIOPWM = 2,
TV_SWITCH_VGA_DDC = 3, // VGA DDC用于传输EDID
TV_SWITCH_BUTT = 4,
};
enum TV_POWER_SAVE_MODE_E {
TV_POWER_SAVE_MODE_NORMAL = 0,
TV_POWER_SAVE_MODE_POWERSAVE = 1,
TV_POWER_SAVE_MODE_BUTT
};
/* * @} */ /* * <!-- ==== Enum Definition end ==== */
/* ************************** Structure Definition *************************** */
/* * \addtogroup TVMW */
/* * @{ */ /* * <!-- [TVMW] */
/* ATV channel attribute */
/* 频道节目属性 */
struct TV_ATV_CHANNEL_ATTR_S {
int s32VolumeOffset; // audio volume offset
unsigned char u8AudioSys; // audio system, see TV_AUDIO_SYS_E
unsigned char u8MtsMode; // audio mode/MTS mode, see TV_MTS_MODE_E, 音频伴音模式/丽音模式
unsigned char u8ColorSys; // user set color system, see TV_COLOR_SYS_E
unsigned char u8ColorSysOriginal; // orignally color system detected from drv.
unsigned char bAft : 1; // if do aft or not
unsigned char bSkip : 1; // if skip program or not
unsigned char bHide : 1; // if hide program ot not
unsigned char bLock : 1; // if lock program or not
unsigned char bFavorite : 1; // if favorite program or not
unsigned char bAir : 1; // if NTSC Air or not
unsigned char bCable : 1; // if NTSC Cable or not
unsigned char bActive : 1; // if NTSC program valid or not
int s32CarrierFreq; // carrier freq, 音频载波频率
};
/* ATV program attribute */
/* ATV 节目属性 */
struct TV_ATV_PROG_ATTR_S {
int s32Id; // 节目ID
unsigned int u32Freq; // 节目的频率
int s32FreqOffset; // 用户手动微调偏移量
TV_ATV_CHANNEL_ATTR_S stChannelAttr; // 节目属性
char aszProgName[19]; // 节目名称 /* array length is 19 */
int sortIndex; // 北美与南美规格排序索引
};
/* ADC range of gain and offset */
/* ADC 增益和偏移量调整范围 */
struct TV_ADC_GAIN_OFFSET_SCOPE_S {
unsigned int u32GainMin;
unsigned int u32GainMax;
unsigned int u32OffsetMin;
unsigned int u32OffsetMax;
};
/* AVC attribute */
/* AVC智能音量控制信息 */
struct TV_AVC_ATTR_S {
unsigned int u32AttackTime; // the attack time(unit:ms), rang [20, 2000]
unsigned int u32ReleaseTime; // the release time(unit:ms), rang [20, 2000]
int s32ThresholdLevel; // the threshold value(driver unit:dB), Drv rang[-40, -16], MW rang[-40000, -16000]
int s32Gain; // the threshold value(driver unit:dB), Drv rang[0, 8], MW rang[0, 8000]
int s32LimiterLevel; // the target level value(driver unit:dB), Drv rang[-40, 0], MW rang[-40000, 0]
unsigned int
u32RefMode; // refmode(0:process both channel together mode, 1:process each channel independently mode)
unsigned int u32SpeedCtrlMode; // speedctrlmode(0:normal mode, 1:fast mode)
};
constexpr int TV_SND_TRACK_MAX = 8;
/* CNcomment/:Sound设备Track信息 */
struct TV_SND_TRACK_INFO_S {
unsigned int u32TrackNum; /* 绑定到Sound设备的Track数量 */
unsigned int hTrack[TV_SND_TRACK_MAX]; /* 绑定到Sound设备的输出端口 */
};
/* *Audio Track Type: Master, Slave, Virtual channel,LowLatency channel */
/* CNcomment/:音频Track类型:主通道 辅通道 虚拟通道 低延时通道 */
/* *LowLatency channel not support attach avplay and the data only support 48K,stereo,16Bit.
Only support one lowlatency track in a sound */
/* CNcomment/:低延时通道不支持AVPLAY绑定此通道只支持采样率为48K,双声道,16位位宽的音频数据,仅支持创建一个低延时通道 */
enum TV_SND_TRACK_TYPE_E {
TV_SND_TRACK_TYPE_MASTER = 0,
TV_SND_TRACK_TYPE_SLAVE,
TV_SND_TRACK_TYPE_VIRTUAL,
TV_SND_TRACK_TYPE_LOWLATENCY,
TV_SND_TRACK_TYPE_OTTSOUND, /* *< Ott sound(PCM) MS12 ONLY. */
TV_SND_TRACK_TYPE_SYSTEMAUDIO, /* *< System sound(PCM) MS12 ONLY. */
TV_SND_TRACK_TYPE_APPAUDIO, /* *< App audio(PCM) MS12 ONLY. */
TV_SND_TRACK_TYPE_BUTT
};
/* CNcomment/:音频输出属性 */
struct TV_AUDIOTRACK_ATTR_S {
TV_SND_TRACK_TYPE_E enTrackType; /* *<Track Type */ /* CNcomment/:Track类型 */
unsigned int u32FadeinMs; /* *<Fade in time(unit:ms) */ /* CNcomment/:淡入时间(单位: ms) */
unsigned int u32FadeoutMs; /* *<Fade out time(unit:ms) */ /* CNcomment/:淡出时间(单位: ms) */
unsigned int u32OutputBufSize; /* *<Track output buffer size */ /* CNcomment/:Track输出缓存大小 */
/* *<Output buffer data size control(ms),default 400ms */ /* CNcomment/:输出缓存中数据量控制(ms),默认400ms */
unsigned int u32BufLevelMs;
/* *<Track start threshold (ms), default value is 50ms, max value is equal to u32BufLevelMs,
only valid for master track */
unsigned int u32StartThresholdMs;
/* CNcomment/:Track启动门限默认值是50ms最大值为u32BufLevelMs此属性只对master track有效 */
};
/* 音频码流信息 */
struct TV_AUDIO_STREAM_INFO_S {
TV_AUDIO_STREAM_TYPE_E enType;
int s32Value;
};
/* ATV channel scan/search info */
/* ATV频道搜台信息, 用于将搜台过程信息通过回调方式上报给上层应用 */
struct TV_CHANNEL_SCAN_INFO_S {
unsigned int u32Freq; // Current Scan Frequency
TV_ATVBAND_E enBand; // Current Frequency Band
unsigned int u32ProgCount; // The number of programs is obtained by the ATV Channel search
unsigned int u32Percent; // Search frequency percent
};
/* screen capture info */
/* 抓屏信息 */
struct TV_CAPTURE_INFO_S {
TV_CAPTURE_TYPE_E enCaptureType; // capture type: video, video+graphic
int u32Width; // width of capture picture
int u32Height; // height of capture picture
int u32PhyAddr; // physic address to save captured picture, malloced by invoker
};
/* CEC device info */
/* CEC设备信息 */
struct TV_CEC_DEV_INFO_S {
int s32HdmiDevPort;
int s32LogicAddr;
char aszOsdName[14]; /* array length is 14 */
int s32DevVendID;
};
/* PQ sharpen gain */
/* PQ sharpen高频增益, 调节图像锐度/清晰度 */
struct TV_SHARP_GAIN_INFO_S {
int s32LtiGain;
int s32HPeakRatio;
int s32VPeakRatio;
int s32DPeakRatio;
};
/* PQ color gain */
/* PQ color增益, 调节图像亮度, 色度, 饱和度 */
struct TV_ACM_GAIN_INFO_S {
int u32LumGain;
int u32HueGain;
int u32SatGain;
int u32Reserved;
};
/* PQ DCI gain info */
/* PQ 对比度增益 */
struct TV_DCI_GAIN_INFO_S {
int u32LowGain; // 低亮曲线增益 ,设置范围[ 0 , 63]
int u32MiddleGain; // 中亮曲线增益 ,设置范围[ 0 , 63]
int u32HighGain; // 高亮曲线增益 ,设置范围[ 0 , 63]
int u32Reserved; // 保留位
};
/* three primary colours info, R/G/B values */
/* 颜色 RGB 三基色信息 */
struct TV_COLOR_RGB_S {
unsigned int u32Red; // 红色分量
unsigned int u32Green; // 绿色分量
unsigned int u32Blue; // 蓝色分量
};
/* video rect info: x, y, w, h */
/* 视频区域描述 */
struct TV_RECT_S {
unsigned int u32X;
unsigned int u32Y;
unsigned int u32Width;
unsigned int u32Height;
};
/* DISP ink(RGB of a pixel) attribute */
/* DISP ink水印功能属性 */
struct TV_DISP_INK_ATTR_S {
TV_DISP_INK_POS_E enInkPos; // 水印的绑定位置
unsigned int u32X; // 水印的绑定x坐标轴的位置
unsigned int u32Y; // 水印的绑定y坐标轴的位置
};
/* region attribute to calculate DISP color */
/* 统计DISP颜色的区域属性 */
struct TV_DISP_REGION_ATTR_S {
// Enable or disable the region of u32RegionIndex , 使能或去使能对应u32RegionIndex的区域统计功能
bool bEnable;
// The region coordinate,should be odd,each region the min rect is 32*32,each region max region rect is 3840*2160
TV_RECT_S stRegionRect;
// 区域的坐标属性必须为偶数每个区域最小为32X32每个区域最大为3840X2160
};
/* 定义区域配置信息的结构体 */
struct TV_DISP_AREA_ATTR_S {
bool bEnable; // Enable or disable the area 使能或去使能区域统计功能
// The region coordinate,should be odd, max region rect is 3840*2160 区域的坐标属性必须为偶数最大为3840X2160
TV_RECT_S stRegionRect;
// horizontal partition number of area ,each part of area min is 32*32, coordinate,should be odd
/* CNcomment/:区域水平分区数 最大32个每个分区最小32*32坐标属性为偶数 */
unsigned int u32Hnum;
// vertical partition mumber of area ,each part of area min is 32*32, coordinate,should be odd
/* CNcomment/:区域垂直分区数 最大20个每个分区最小32*32 ,坐标属性为偶数 */
unsigned int u32Vnum;
};
constexpr int TV_DISP_ABL_MAX_H_NUM = 32;
constexpr int TV_DISP_ABL_MAX_V_NUM = 20;
/* 定义区域RGB统计值结构体 */
struct TV_DISP_AREA_RGB_DATA_S {
TV_COLOR_RGB_S stRGB[TV_DISP_ABL_MAX_V_NUM][TV_DISP_ABL_MAX_H_NUM];
};
/* DRC info */
/* DRC 信息 */
struct TV_DRC_INFO_S {
int s32Drc0;
int s32Drc1;
int s32Drc2;
int s32Drc3;
int s32Drc4;
int s32Drc5;
int s32Drc6;
int s32Gain;
};
/* HDR info */
/* HDR 信息 */
struct TV_HDR_INFO_S {
TV_COLOR_SPACE_E enColorSpace; // 色域空间
TV_GAMMA_TYPE_E enGammaType; // gamma 类型
};
/* HDR fix mode attribute */
/* HDR fix mode属性 */
struct TV_HDR_FIXMODE_S {
bool bFixed;
TV_HDR_INFO_S stHdrInfo;
};
/* non-linear adjust item's info, 5 points at postion: 0, 25, 50, 75, 100. */
/* 非线性调节项的调节点属性 */
struct TV_NLA_POINT_S {
unsigned int u32Point0;
unsigned int u32Point25;
unsigned int u32Point50;
unsigned int u32Point75;
unsigned int u32Point100;
};
/* panel dimming strength range */
/* 屏dimming强度范围 */
struct TV_PANEL_DIM_STRENGTH_RANGE_S {
unsigned int u32MinStrength; // Dim strength Min Range
unsigned int u32MaxStrength; // Dim strength Max Range
};
/* panel dimming strength info */
/* 屏dimming强度属性 */
struct TV_PANEL_DIM_STRENGTH_INFO_S {
TV_PANEL_DIM_TYPE_E enDimType; // Dim Type
TV_PANEL_DIM_STRENGTH_RANGE_S stDimStrengthRange; // Dim strength Range
};
/* integer and decimal value of audio track prescale */
/* 音频prescale预增益控制属性 */
struct TV_PRESCALE_S {
int s32Integer;
int s32Decimal;
};
/* RGB gain and offset, used for PQ setting */
/* RGB值增益和偏移量, 用于PQ效果设置 */
struct TV_RGB_GAIN_OFFSET_S {
unsigned int u32RedGain;
unsigned int u32GreenGain;
unsigned int u32BlueGain;
unsigned int u32RedOffset;
unsigned int u32GreenOffset;
unsigned int u32BlueOffset;
};
/* PQ saturation gain attribute */
/* PQ 饱和度增益属性 */
struct TV_SATURATION_GAIN_S {
TV_PQ_COLOR_E enColor;
int s32Gain;
};
/* picture position attribute */
/* 图像几何信息 */
struct TV_SCOPE_INFO_S {
int s32HorPos; // 水平位置
int s32VerPos; // 垂直位置
int s32HorRange; // 水平幅度
int s32VerRange; // 垂直幅度
};
/* Timing info to show on screen */
/* 屏显 Timing 信息 */
struct TV_TIMING_INFO_S {
unsigned int u32Width; // 宽
unsigned int u32Height; // 高
unsigned int u32FrameRate; // 帧率, P制为输入帧频, I制为输入场频
bool bInterlace; // 隔行信号flag
TV_HDMI_FORMAT_E enFormatHDMI; // HDMI 格式, HDMI/DVI/MHL
TV_FRAME_PACKING_E enFormat3d; // 3D 格式
TV_COLOR_SPACE_E enColorSpace; // 色彩空间
bool bMhl; // HDMI MHL格式flag
};
/* vchip info */
/* vchip 信息 */
struct TV_VCHIP_INFO_S {
unsigned char u8Class;
unsigned char u8Level;
unsigned char u8Content;
};
/* The length of language code */
constexpr int TV_LANG_CODE_LEN = 3;
/* current teletext info */
/* 当前的TTX信息 */
struct TV_TTX_CUR_INFO_S {
unsigned char au8Language[TV_LANG_CODE_LEN + 1]; // Language code
unsigned char u8MagazineNum; // Magazine number
unsigned char u8PageNum; // Page number
};
/* system boot wakeup info. */
/* 系统唤醒信息 */
struct TV_WAKEUP_INFO_S {
TV_WAKEUP_MODE_E enWakeupMode;
TV_SRC_E enWakeupSrc;
int64_t s64Value; // when wakeup mode is IR, this is IR KeyValue;
// otherwise, this is reserved for extendsion.
};
struct TV_PARA_RANGE_S {
unsigned int u32ParaMin;
unsigned int u32ParaMax;
};
struct TV_PANEL_LVDS_LINKMAP_S {
TV_PANEL_LVDS_LINKMAP_E enLink1; /* *<Link 1 */
TV_PANEL_LVDS_LINKMAP_E enLink2; /* *<Link 2 */
TV_PANEL_LVDS_LINKMAP_E enLink3; /* *<Link 3 */
TV_PANEL_LVDS_LINKMAP_E enLink4; /* *<Link 4 */
};
/* CEC 消息参数最大个数 */
constexpr int CEC_MAX_PARA_VALUE = 16;
/* CEC 消息操作码 */
typedef enum imTV_CEC_OPCODE_E {
TV_CEC_OPCODE_SENDPING = 0x100,
TV_CEC_OPCODE_FEATURE_ABORT = 0x00,
TV_CEC_OPCODE_IMAGE_VIEW_ON = 0x04,
TV_CEC_OPCODE_TUNER_STEP_INCREMENT = 0x05,
TV_CEC_OPCODE_TUNER_STEP_DECREMENT = 0x06,
TV_CEC_OPCODE_TUNER_DEVICE_STATUS = 0x07,
TV_CEC_OPCODE_GIVE_TUNER_DEVICE_STATUS = 0x08,
TV_CEC_OPCODE_RECORD_ON = 0x09,
TV_CEC_OPCODE_RECORD_STATUS = 0x0A,
TV_CEC_OPCODE_RECORD_OFF = 0x0B,
TV_CEC_OPCODE_TEXT_VIEW_ON = 0x0D,
TV_CEC_OPCODE_RECORD_TV_SCREEN = 0x0F,
TV_CEC_OPCODE_GIVE_DECK_STATUS = 0x1A,
TV_CEC_OPCODE_DECK_STATUS = 0x1B,
TV_CEC_OPCODE_SET_MENU_LANGUAGE = 0x32,
TV_CEC_OPCODE_CLEAR_ANALOGUE_TIMER = 0x33,
TV_CEC_OPCODE_SET_ANALOGUE_TIMER = 0x34,
TV_CEC_OPCODE_TIMER_STATUS = 0x35,
TV_CEC_OPCODE_STANDBY = 0x36,
TV_CEC_OPCODE_PLAY = 0x41,
TV_CEC_OPCODE_DECK_CONTROL = 0x42,
TV_CEC_OPCODE_TIMER_CLEARED_STATUS = 0x43,
TV_CEC_OPCODE_USER_CONTROL_PRESSED = 0x44,
TV_CEC_OPCODE_USER_CONTROL_RELEASED = 0x45,
TV_CEC_OPCODE_GIVE_OSD_NAME = 0x46,
TV_CEC_OPCODE_SET_OSD_NAME = 0x47,
TV_CEC_OPCODE_SET_OSD_STRING = 0x64,
TV_CEC_OPCODE_SET_TIMER_PROGRAM_TITLE = 0x67,
TV_CEC_OPCODE_SYSTEM_AUDIO_MODE_REQUEST = 0x70,
TV_CEC_OPCODE_GIVE_AUDIO_STATUS = 0x71,
TV_CEC_OPCODE_SET_SYSTEM_AUDIO_MODE = 0x72,
TV_CEC_OPCODE_REPORT_AUDIO_STATUS = 0x7A,
TV_CEC_OPCODE_GIVE_SYSTEM_AUDIO_MODE_STATUS = 0x7D,
TV_CEC_OPCODE_SYSTEM_AUDIO_MODE_STATUS = 0x7E,
TV_CEC_OPCODE_ROUTING_CHANGE = 0x80,
TV_CEC_OPCODE_ROUTING_INFORMATION = 0x81,
TV_CEC_OPCODE_ACTIVE_SOURCE = 0x82,
TV_CEC_OPCODE_GIVE_PHYSICAL_ADDRESS = 0x83,
TV_CEC_OPCODE_REPORT_PHYSICAL_ADDRESS = 0x84,
TV_CEC_OPCODE_REQUEST_ACTIVE_SOURCE = 0x85,
TV_CEC_OPCODE_SET_STREAM_PATH = 0x86,
TV_CEC_OPCODE_DEVICE_VENDOR_ID = 0x87,
TV_CEC_OPCODE_VENDOR_COMMAND = 0x89,
TV_CEC_OPCODE_VENDOR_REMOTE_BUTTON_DOWN = 0x8A,
TV_CEC_OPCODE_VENDOR_REMOTE_BUTTON_UP = 0x8B,
TV_CEC_OPCODE_GIVE_DEVICE_VENDOR_ID = 0x8C,
TV_CEC_OPCODE_MENU_REQUEST = 0x8D,
TV_CEC_OPCODE_MENU_STATUS = 0x8E,
TV_CEC_OPCODE_GIVE_DEVICE_POWER_STATUS = 0x8F,
TV_CEC_OPCODE_REPORT_POWER_STATUS = 0x90,
TV_CEC_OPCODE_GET_MENU_LANGUAGE = 0x91,
TV_CEC_OPCODE_SELECT_ANALOGUE_SERVICE = 0x92,
TV_CEC_OPCODE_SELECT_DIGITAL_SERVICE = 0x93,
TV_CEC_OPCODE_SET_DIGITAL_TIMER = 0x97,
TV_CEC_OPCODE_CLEAR_DIGITAL_TIMER = 0x99,
TV_CEC_OPCODE_SET_AUDIO_RATE = 0x9A,
TV_CEC_OPCODE_INACTIVE_SOURCE = 0x9D,
TV_CEC_OPCODE_CEC_VERSION = 0x9E,
TV_CEC_OPCODE_GET_CEC_VERSION = 0x9F,
TV_CEC_OPCODE_VENDOR_COMMAND_WITH_ID = 0xA0,
TV_CEC_OPCODE_CLEAR_EXTERNAL_TIMER = 0xA1,
TV_CEC_OPCODE_SET_EXTERNAL_TIMER = 0xA2,
TV_CEC_OPCODE_REPORT_SHORT_AUDIO = 0xA3,
TV_CEC_OPCODE_REQUEST_SHORT_AUDIO = 0xA4,
TV_CEC_OPCODE_INITIATE_ARC = 0xC0,
TV_CEC_OPCODE_REPORT_ARC_INITIATED = 0xC1,
TV_CEC_OPCODE_REPORT_ARC_TERMINATED = 0xC2,
TV_CEC_OPCODE_REQUEST_ARC_INITIATION = 0xC3,
TV_CEC_OPCODE_REQUEST_ARC_TERMINATION = 0xC4,
TV_CEC_OPCODE_TERMINATE_ARC = 0xC5,
TV_CEC_OPCODE_HEADER = 0xF8,
TV_CEC_OPCODE_ABORT = 0xFF,
TV_CEC_OPCODE_BUTT = 0xFFF,
} TV_CEC_OPCODE_E;
/* CEC 消息参数 */
typedef struct imTV_CEC_OPERAND_S {
unsigned int au32Args[CEC_MAX_PARA_VALUE];
unsigned int u32ArgCount;
}TV_CEC_OPERAND_S;
/* CEC 消息结构 */
typedef struct imTV_CEC_CMD_S {
TV_CEC_LOGICAL_ADDR_E enSrcAddr; /* <logical address of source */ /* <CNcomment:源端设备地址 */
TV_CEC_LOGICAL_ADDR_E enDstAddr; /* <logical address of destination */ /* <CNcomment:目标设备地址 */
TV_CEC_OPCODE_E enOpcode; /* <opration code */ /* <CNcomment:操作码 */
TV_CEC_OPERAND_S stOperand; /* <operand */ /* <CNcomment:操作数 */
}TV_CEC_CMD_S;
typedef std::list<int> IntegerList;
typedef std::list<std::string> TV_PANEL_DESCRIP_LIST;
typedef std::list<TV_ATV_PROG_ATTR_S> TV_ATV_PROG_ATTR_LIST;
typedef std::list<TV_CEC_DEV_INFO_S> TV_CEC_DEV_INFO_LIST;
typedef std::list<TV_TTX_CUR_INFO_S> TV_TTX_CUR_INFO_LIST;
/* * @} */ /* * <!-- ==== Structure Definition end ==== */
// ------------------------------------------------------------------------------
#endif // __TV_COMMON_H__