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

📄 tidtv_menuvideoproc.c

📁 ti的数字电视芯片 tvp9000的源码
💻 C
📖 第 1 页 / 共 2 页
字号:
/*******************************************************************************
*	@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 + -