📄 tidtv_menuvideoproc.c
字号:
/*******************************************************************************
* @ModuleName :: TiDTV_MenuVideoProc.c
*
* @Copyright :: Copyright 2005- Texas Instruments, Inc.
*
* @Description :: Video Menu Operation handling module
*
*
* @History ::
*---------------------------------------
* 08-04-2005 Roland Li Created
*******************************************************************************/
#include <stdio.h>
#include <stdlib.h>
#include "ucos_ii.h"
#include "TiDTV_DataType.h"
#include "TiDTV_SysCtrl.h"
#include "TVP9K_OSD_Def.h"
#include "TVP9K_BG_Def.h"
#include "TVP9K_NV_Def.h"
#include "TVP9K_VC_Def.h"
#include "TiDTV_HW.h"
#include "TiDTV_Buffers.h"
#include "TiDTV_GLib.h"
#include "TiDTV_GUI.h"
#include "TiDTV_McuComm.h"
#include "TiDTV_IrKey.h"
#include "TiDTV_Icon.h"
#include "TiDTV_Msg.h"
#include "TiDTV_Menu.h"
#include "TiDTV_UserPreferDataTable.h"
#include "TiDTV_MenuVideoProc.h"
#define LVLVidBrightness_MIN 0
#define LVLVidBrightness_MAX 60
#define LVLVidBrightness_WIDTH 250
#define LVLVidContrast_MIN 0
#define LVLVidContrast_MAX 50
#define LVLVidContrast_WIDTH 250
#define LVLVidSaturation_MIN 0
#define LVLVidSaturation_MAX 50
#define LVLVidSaturation_WIDTH 250
#define LVLVidHue_MIN 0
#define LVLVidHue_MAX 60
#define LVLVidHue_WIDTH 250
#define LVLVidGamma_MIN 0
#define LVLVidGamma_MAX 60
#define LVLVidGamma_WIDTH 250
#define LVL_STEP 1
///////////////////////////////////////////////////////////////
// Extern Function Declare
///////////////////////////////////////////////////////////////
extern void TiDTV_DisplayMenuGuageInitFuct(TI_DTV_MENU_ITEM *pMenuItem, short * UserPreferOffset, short Min, short Max);
extern void TiDTV_DrawGuage(UCHAR HighLight, USHORT xPos, USHORT yPos, USHORT Length, short Min, short Max, short Current_Value, short Direction, UCHAR FontColor);
void TiDTV_UpdateAccessory(USHORT String_Index, TI_DTV_MENU_NODE_NAVIGATION *Navigation);
extern UINT16 **pCurDtvMsgBase; // Current DTV Message base: defined outside the Menu Task
extern TI_DTV_USER_PREFER_DATA UserPreferSetting;
extern TI_DTV_MENU_NODE_NAVIGATION TiDTV_Basic_Navigation;
extern TI_DTV_MENU_NODE_NAVIGATION TiDTV_Guage_Navigation;
extern TI_DTV_MENU_NODE_NAVIGATION TiDTV_VChipParentGuideBlock_Navigation;
extern TI_DTV_MENU_NODE_NAVIGATION TiDTV_VChipPassWord_Navigation;
extern TI_DTV_MENU_NODE_NAVIGATION TiDTV_VChipPassWordChange_Navigation;
///////////////////////////////////////////////////////////////
// Local Var Define
///////////////////////////////////////////////////////////////
UINT16 gTISubMenuLevel;
INT16 Vid_MAX[] = {LVLVidBrightness_MAX, LVLVidContrast_MAX, LVLVidSaturation_MAX, LVLVidHue_MAX, LVLVidGamma_MAX};
INT16 Vid_MIN[] = {LVLVidBrightness_MIN, LVLVidContrast_MIN, LVLVidSaturation_MIN, LVLVidHue_MIN, LVLVidGamma_MIN};
INT16 Vid_WIDTH[] = {LVLVidBrightness_WIDTH, LVLVidContrast_WIDTH, LVLVidSaturation_WIDTH,
LVLVidHue_WIDTH, LVLVidGamma_WIDTH};
#define TIDTV_VIDEOMODE_NUM_MAX 4
unsigned short TiDTV_VideoModeDisp[] = {
STANDARD_INDEX,
VIVID_INDEX,
SOFT_INDEX,
USER_INDEX,
NULL
};
unsigned short TiDTV_NoiseRecDisp[] = {
OFF_INDEX,
LOWER_INDEX,
MIDDLE_INDEX,
STRONG_INDEX,
NULL
};
static int VideoCtrl[] = {
30, // Brightness
25, // Contrast
25, // Sharpness, Saturation
30, // Color, Hue
30, // TINT, Gamma
};
/*******************************************************************************
* @RoutineName:: DtvVideoModeInitFuct
*
* @Description:: Video mode Init
*
* @Input ::TI_DTV_MENU_ITEM *pMenuItem
*
*
* @Output :: none
*
* @Return :: none
*******************************************************************************/
void DtvVideoModeInitFuct(TI_DTV_MENU_ITEM *pMenuItem)
{
short * UserPreferOffset;
UserPreferOffset = (short *)((UINT32)(&UserPreferSetting) + (UINT32)(sizeof(USHORT) * USERPREFER_PICTUREMODE_INDEX));
TiDTV_MenuRadioBoxInitFuct(pMenuItem, UserPreferOffset, TiDTV_VideoModeDisp );
}
/*******************************************************************************
* @RoutineName:: DtvVideoBrightnessInitFuct
*
* @Description:: Video brightness Init
*
* @Input ::
* TI_DTV_MENU_ITEM *pMenuItem
*
* @Output :: none
*
* @Return :: none
*******************************************************************************/
void DtvVideoBrightnessInitFuct(TI_DTV_MENU_ITEM *pMenuItem)
{
short * UserPreferOffset;
// draw guage
UserPreferOffset = (short *)((UINT32)(&UserPreferSetting) + (UINT32)(sizeof(USHORT) * USERPREFER_PICTUREBRIGHTNESS_INDEX));
TiDTV_DisplayMenuGuageInitFuct(pMenuItem, UserPreferOffset, TIDTV_VIDEO_BRIGHTNESS_MIN, TIDTV_VIDEO_BRIGHTNESS_MAX);
}
/*******************************************************************************
* @RoutineName:: DtvVideoContrastInitFuct
*
* @Description:: Contrast Init
*
* @Input ::
* TI_DTV_MENU_ITEM *pMenuItem
*
* @Output :: none
*
* @Return :: none
*******************************************************************************/
void DtvVideoContrastInitFuct(TI_DTV_MENU_ITEM *pMenuItem)
{
short * UserPreferOffset;
// draw guage
UserPreferOffset = (short *)((UINT32)(&UserPreferSetting) + (UINT32)(sizeof(USHORT) * USERPREFER_PICTURECONTRAST_INDEX));
TiDTV_DisplayMenuGuageInitFuct(pMenuItem, UserPreferOffset, TIDTV_VIDEO_CONTRAST_MIN, TIDTV_VIDEO_CONTRAST_MAX);
}
/*******************************************************************************
* @RoutineName:: DtvVideoSaturationInitFuct
*
* @Description:: Saturation Init
*
* @Input ::
* TI_DTV_MENU_ITEM *pMenuItem
*
* @Output :: none
*
* @Return :: none
*******************************************************************************/
void DtvVideoSaturationInitFuct(TI_DTV_MENU_ITEM *pMenuItem)
{
short * UserPreferOffset;
// draw guage
UserPreferOffset = (short *)((UINT32)(&UserPreferSetting) + (UINT32)(sizeof(USHORT) * USERPREFER_PICTURESATURATION_INDEX));
TiDTV_DisplayMenuGuageInitFuct(pMenuItem, UserPreferOffset, TIDTV_VIDEO_SATURATION_MIN, TIDTV_VIDEO_SATURATION_MAX);
}
/*******************************************************************************
* @RoutineName:: DtvVideoTintInitFuct
*
* @Description:: Tint Init
*
* @Input ::
* TI_DTV_MENU_ITEM *pMenuItem
*
* @Output :: none
*
* @Return :: none
*******************************************************************************/
void DtvVideoTintInitFuct(TI_DTV_MENU_ITEM *pMenuItem)
{
short * UserPreferOffset;
// draw guage
UserPreferOffset = (short *)((UINT32)(&UserPreferSetting) + (UINT32)(sizeof(USHORT) * USERPREFER_PICTURETINT_INDEX));
TiDTV_DisplayMenuGuageInitFuct(pMenuItem, UserPreferOffset, TIDTV_VIDEO_TINT_MIN, TIDTV_VIDEO_TINT_MAX);
}
/*******************************************************************************
* @RoutineName:: DtvVideoSharpnessInitFuct
*
* @Description:: Sharpness Init
*
* @Input ::
* TI_DTV_MENU_ITEM *pMenuItem
*
* @Output :: none
*
* @Return :: none
*******************************************************************************/
void DtvVideoSharpnessInitFuct(TI_DTV_MENU_ITEM *pMenuItem)
{
short * UserPreferOffset;
// draw guage
UserPreferOffset = (short *)((UINT32)(&UserPreferSetting) + (UINT32)(sizeof(USHORT) * USERPREFER_PICTURESHARPNESS_INDEX));
TiDTV_DisplayMenuGuageInitFuct(pMenuItem, UserPreferOffset, TIDTV_VIDEO_SHARPNESS_MIN, TIDTV_VIDEO_SHARPNESS_MAX);
}
/*******************************************************************************
* @RoutineName:: DtvVideoNoiseRuctInitFuct
*
* @Description:: Noise reduction init
*
* @Input ::
* TI_DTV_MENU_ITEM *pMenuItem
*
* @Output :: none
*
* @Return :: none
*******************************************************************************/
void DtvVideoNoiseRuctInitFuct(TI_DTV_MENU_ITEM *pMenuItem)
{
short * UserPreferOffset;
UserPreferOffset = (short *)((UINT32)(&UserPreferSetting) + (UINT32)(sizeof(USHORT) * USERPREFER_PICTURENOISEREDUCTION_INDEX));
TiDTV_MenuRadioBoxInitFuct(pMenuItem, UserPreferOffset, TiDTV_NoiseRecDisp );
}
/*******************************************************************************
* @RoutineName:: DtvVideoModeActFuct
*
* @Description:: Video mode message process function
*
* @Input ::None
*
*
* @Output :: none
*
* @Return :: ROK or RERROR
*******************************************************************************/
int DtvVideoModeActFuct(void)
{
short * UserPreferOffset;
// USHORT String_Index;
// TI_DTV_MENU_NODE_NAVIGATION *Navigation;
UserPreferOffset = (short *)((UINT32)(&UserPreferSetting) + (UINT32)(sizeof(USHORT) * USERPREFER_PICTUREMODE_INDEX));
TiDTV_MenuRadioBoxActFuct(&DtvMainMenu, pCurDtvMenu->pCurItem, UserPreferOffset, (USHORT *) TiDTV_VideoModeDisp);
/* String_Index = PICTUREMODEINFO_INDEX;
Navigation = &TiDTV_Basic_Navigation;
TiDTV_UpdateAccessory(String_Index, Navigation);
*/ return ROK;
}
/*******************************************************************************
* @RoutineName:: DtvVideoModeActFuct
*
* @Description:: Video mode message process function
*
* @Input ::None
*
*
* @Output :: none
*
* @Return :: ROK or RERROR
*******************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -