mirror of https://github.com/OpenIPC/firmware.git
				
				
				
			
		
			
				
	
	
		
			974 lines
		
	
	
		
			25 KiB
		
	
	
	
		
			C
		
	
	
			
		
		
	
	
			974 lines
		
	
	
		
			25 KiB
		
	
	
	
		
			C
		
	
	
| //
 | ||
| //  "$Id: Camera.h 4 2011-09-14 14:13:30Z xiaoyongli $"
 | ||
| //
 | ||
| //  Copyright (c)2008-2008, ZheJiang JuFeng Technology Stock CO.LTD.
 | ||
| //  All Rights Reserved.
 | ||
| //
 | ||
| //	Description:	
 | ||
| //	Revisions:		Year-Month-Day  SVN-Author  Modification
 | ||
| //
 | ||
| #ifndef __CAMERA_H__
 | ||
| #define __CAMERA_H__ 
 | ||
| 
 | ||
| #ifdef __cplusplus
 | ||
| extern "C" {
 | ||
| #endif
 | ||
| #include "xm_type.h"
 | ||
| #include "xm_comm_video.h"
 | ||
| #ifdef SOC_NONE
 | ||
| #include "mpi_vencTx.h"
 | ||
| #endif
 | ||
| 
 | ||
| #define GET_REJECT_SHAKE_TIME(cfgTime)  ((cfgTime)*20)
 | ||
| #define BYTE		unsigned char
 | ||
| #define WORD	unsigned short
 | ||
| 
 | ||
| //ºÍAHD_NextChipÒ»ÖÂ
 | ||
| // 3MP 13x; 4MP 14x; 5M 15x
 | ||
| typedef enum {
 | ||
| 	SENSOR_CHIP_UNKNOW	=	0,
 | ||
| 	SENSOR_CHIP_H42		=	92,
 | ||
| 	SENSOR_CHIP_AR0140	=	94,
 | ||
| 	SENSOR_CHIP_AR0130	=	95,
 | ||
| 	SENSOR_CHIP_SC1035	=	96,	
 | ||
| 	SENSOR_CHIP_SC1037	=	97,
 | ||
| 	SENSOR_CHIP_H81		=	98,
 | ||
| 	SENSOR_CHIP_H65		=	99,
 | ||
| 	
 | ||
| 	SENSOR_CHIP_SP140A	=	81,
 | ||
| 	SENSOR_CHIP_H62		=	82,
 | ||
| 	SENSOR_CHIP_BG0703	=	83,
 | ||
| 	SENSOR_CHIP_SC1145	=	84,
 | ||
| 	SENSOR_CHIP_SC1135	=	85,
 | ||
| 	SENSOR_CHIP_OV9732	=	86,
 | ||
| 	SENSOR_CHIP_OV9750	=	87,
 | ||
| 	SENSOR_CHIP_SP1409	=	88,
 | ||
| 	SENSOR_CHIP_MIS1002	=	89,
 | ||
| 	
 | ||
| 	SENSOR_CHIP_SC2045	=	21,
 | ||
| 	SENSOR_CHIP_IMX222	=	22,
 | ||
| 	SENSOR_CHIP_IMX322	=	23,
 | ||
| 	SENSOR_CHIP_AR0237_IR	=	24,
 | ||
| 	SENSOR_CHIP_SC2035	=	25,
 | ||
| 	SENSOR_CHIP_F02		=	26,
 | ||
| 	SENSOR_CHIP_AR0237	=	27,
 | ||
| 	SENSOR_CHIP_IMX323	=	28,
 | ||
| 	SENSOR_CHIP_PS5220	=	29,
 | ||
| 	
 | ||
| 	SENSOR_CHIP_SC2135	=	71,
 | ||
| 	SENSOR_CHIP_F22 	=	72,
 | ||
| 	SENSOR_CHIP_BG0803 	=	73,
 | ||
| 	SENSOR_CHIP_PS5230 	=	74,
 | ||
| 	SENSOR_CHIP_PS3210 	=	75,
 | ||
| 	SENSOR_CHIP_GC2023 	=	76,
 | ||
| 	SENSOR_CHIP_SC2145	=	77,
 | ||
| 	SENSOR_CHIP_HNX083	=	78,
 | ||
| 	SENSOR_CHIP_HNX993	=	79,
 | ||
| 	
 | ||
| 	SENSOR_CHIP_SC1235	=	50,
 | ||
| 	SENSOR_CHIP_BF3016	=	51,
 | ||
| 	SENSOR_CHIP_IMX307 	=	52,
 | ||
| 	SENSOR_CHIP_SC2235E	=	53,	
 | ||
| 	
 | ||
| 	SENSOR_CHIP_BG0806 	=	60,
 | ||
| 	SENSOR_CHIP_IMX291 	=	61,
 | ||
| 	SENSOR_CHIP_PS5250	=	62,
 | ||
| 	SENSOR_CHIP_SC2235	=	63,
 | ||
| 	SENSOR_CHIP_SC2145H	=	64,
 | ||
| 	SENSOR_CHIP_GC2033 	=	65,
 | ||
| 	SENSOR_CHIP_F28 	=	66,
 | ||
| 	SENSOR_CHIP_SC2235P =	67,
 | ||
| 	SENSOR_CHIP_MIS2236 =	68,
 | ||
| 	SENSOR_CHIP_SC2315 	=	69,
 | ||
| 	
 | ||
| 	SENSOR_CHIP_AR0330 	=	130,
 | ||
| 	SENSOR_CHIP_SC3035 	=	131,
 | ||
| 	SENSOR_CHIP_AUGE 	=	132,
 | ||
| 	SENSOR_CHIP_OV4689 	=	140,
 | ||
| 	SENSOR_CHIP_SC4236 	=	141,
 | ||
| 	SENSOR_CHIP_K02 	=	142,
 | ||
| 	SENSOR_CHIP_PS5510 	=	150,
 | ||
| 	SENSOR_CHIP_K03 	=	151,
 | ||
| 	SENSOR_CHIP_SC5035 	=	152,
 | ||
| 	SENSOR_CHIP_SC5235 	=	153,
 | ||
| 	SENSOR_CHIP_SC5300 	=	154,
 | ||
| 	SENSOR_CHIP_IMX335 	=	155,
 | ||
| 	SENSOR_CHIP_SC5239 	=	156,
 | ||
| 
 | ||
| 	SENSOR_CHIP_OV12895 	=	180,
 | ||
| 	SENSOR_CHIP_APOLLO 	=	181,
 | ||
| }XM_SENSOR_CHIP;
 | ||
| 
 | ||
| 
 | ||
| enum dvr_info_cmd_hs
 | ||
| {
 | ||
| 	PRODUCT_TYPE 		= 0,
 | ||
| 	VIDEO_CHANNEL 		= 1,
 | ||
| 	AUDIO_CHANNEL 		= 2,
 | ||
| 	ALARM_IN 			= 3,
 | ||
| 	ALARM_OUT			= 4,
 | ||
| 	FVIDEO_CHIP			= 5,
 | ||
| 	DSP_CHIP 			= 6,
 | ||
| 	ANALOG_AUDIO_MODE	= 7,
 | ||
| 	TALKBACK			= 8,
 | ||
| 	BVIDEO_CHIP			= 9,
 | ||
| 	STORE_INTERFACE 	= 10,
 | ||
| 	MATRIX		 		= 11,
 | ||
| 	WIRELESS_INTERFACE	= 12,
 | ||
| 	HD_ENCODE			= 13,
 | ||
| 	HD_VERSION 			= 14,
 | ||
| 	VD_INTERFACE        = 15,
 | ||
| 	NET_INTERFACE       = 16,
 | ||
| 	HD_INFO_LEN			= 17
 | ||
| };
 | ||
| 
 | ||
| 
 | ||
| enum netmode{
 | ||
| 	NET_LAN = 0,
 | ||
| 	NET_WLAN_8188EU
 | ||
| };
 | ||
| 
 | ||
| typedef enum _resolution_bit_{
 | ||
| 	RSLTION_BIT_720P = 0,
 | ||
| 	RSLTION_BIT_960P,
 | ||
| 	RSLTION_BIT_1080P,
 | ||
| 	RSLTION_BIT_1536P,
 | ||
| 	RSLTION_BIT_4MP,
 | ||
| 	RSLTION_BIT_5MP,
 | ||
| 	RSLTION_BIT_8MP,
 | ||
| 
 | ||
| 	RSLTION_BIT_BUTT
 | ||
| }RSLTION_BIT;
 | ||
| 
 | ||
| 
 | ||
| typedef enum{
 | ||
| 	IPC_UNKNOWN = 0x2000,
 | ||
| 	IPC_50X10 = 0x2001, 																					  
 | ||
| 	IPC_53X13 = 0x2002,
 | ||
| 	IPC_RA50X10 = 0x2003,
 | ||
| 	IPC_50X10_XYD = 0x2004,
 | ||
| 	IPC_50X10_SW = 0x2005,		
 | ||
| 	IPC_53X13_SWI = 0x2006,		//IPC_53X13_SWI	·Éµú
 | ||
| 	IPC_RA50X10_C = 0x2007,
 | ||
| 	IPC_RA53X13 = 0x2008,
 | ||
| 	IPC_53X13_SW = 0x2009,		
 | ||
| 	IPC_53X13_SWL = 0x200A,	// IPC_53X13_SWL	°×¹âµÆ·Éµú
 | ||
| 	IPC_RA53X13_C = 0x200B,
 | ||
| 	IPC_50X10_SWC = 0x200C,
 | ||
| 	IPC_50X20_SWL = 0x200E, 
 | ||
| 	IPC_50X20_SWI = 0x200F, 
 | ||
| 	IPC_53X13_XYD = 0x2010,
 | ||
| 	IPC_RA50X20_C = 0x2011,	
 | ||
| 	IPC_50X30_SWL = 0x2012,
 | ||
| 	IPC_50X10_SWCL = 0x2013,
 | ||
| 	IPC_53X13_SWCL = 0x2014,
 | ||
| 	IPC_50X20_SWCL = 0x2018,
 | ||
| 	IPC_50X30_SWI = 0x2015,
 | ||
| 	IPC_RA50X20 = 0x2016,
 | ||
| 	IPC_50X20_SWC = 0x2017,
 | ||
| 	IPC_50X10_SW_S = 0x2019,//32M
 | ||
| 	IPC_53X13_SWL_S = 0x201A,
 | ||
| 	IPC_50X10_SWC_S = 0x201B,
 | ||
| 	IPC_RA50X10_C_S = 0x201C,
 | ||
| 	IPC_53X13_SWI_S = 0x201D,
 | ||
| 	IPC_XM530_RA50X20 = 0x3001,
 | ||
| 	IPC_XM530_80X20 = 0x3002,
 | ||
| 	IPC_XM530_80X50 = 0x3005,
 | ||
| 	XM350AI_60X20	= 0x6000,	// ÁÙÊ±Çø·Ö
 | ||
| 	NR_IPC
 | ||
| }IPC_NICKNAME_E;
 | ||
| 
 | ||
| typedef enum {
 | ||
| 	BLIGHT_CLOSE = 0x10,
 | ||
| 	BLIGHT_OPEN = 0x11,
 | ||
| 	CLIGHT_CLOSE = 0x20,
 | ||
| 	MUSICLIGHT_OPEN = 0x21,
 | ||
| 	MOODLIGHT_OPEN = 0x22,
 | ||
| }enLIGHT_CTRL;
 | ||
| 
 | ||
| 
 | ||
| typedef struct xm_COORD_S
 | ||
| {
 | ||
|     XM_S32 s32X;
 | ||
|     XM_S32 s32Y;
 | ||
| }COORD_S;
 | ||
| 
 | ||
| /************************************************************************
 | ||
|  *
 | ||
|  *»ñÈ¡É豸µÄÌØ¶¨Ãû³ÆID
 | ||
|  * ·µ»ØÃ¶¾ÙIPC_NICKNAME_E
 | ||
|  *
 | ||
|  ************************************************************************/
 | ||
| extern int get_hwinfo(int info_cmd);
 | ||
| extern int GetProductNickName(void);
 | ||
| /************************************************************************
 | ||
| ½Ó¿ÚËùÔÚ¿â: 	libdvr.so
 | ||
| º¯Êý¹¦ÄÜ: 		»ñÈ¡ProductDefinitionÀïµÄ²úÆ·ÐͺÅ
 | ||
| ÊäÈë²ÎÊý:		´æ´¢×Ö·û´®µÄµØÖ·
 | ||
| ·µ»Ø²ÎÊý:		0:	³É¹¦
 | ||
| 					-1:	ʧ°Ü
 | ||
|  ************************************************************************/
 | ||
| int GetProductString(char *pString);
 | ||
| 
 | ||
| ///±àÂëÆ÷¾²Ì¬²ÎÊý
 | ||
| typedef struct ENCODE_STATICPARAM
 | ||
| {
 | ||
| 	char reserved[2];
 | ||
| 	int  profile;    
 | ||
| 	int level;
 | ||
| 	int reserved1[4];
 | ||
| } ENCODE_STATICPARAM;
 | ||
| 
 | ||
| 
 | ||
| #define NAME_LEN  16
 | ||
| typedef struct ispconfig_json_s 
 | ||
| {
 | ||
| 	char deviceType[NAME_LEN];
 | ||
| 	char oemName[NAME_LEN];
 | ||
| 	unsigned char u8InfraredIO;
 | ||
| 	unsigned char u8InfraredSwap;
 | ||
| 	unsigned char u8IrCutIO;
 | ||
| 	unsigned char u8IrCutSwap;
 | ||
| 
 | ||
| /*****************************************
 | ||
| u8IRLed: (0: default   ³£¹æÄ£×é)
 | ||
| 	bit0: 	(1: Èí¼þ¿ØÖƵÆ(WL/IR)        0: Ó²¼þ¿ØÖƵÆ(³£¹æ))
 | ||
| 	bit4:	(1: Ó²¹âÃô					0: Èí¹âÃô)
 | ||
| *****************************************/
 | ||
| 	unsigned char u8IRLed;
 | ||
| } ISPCONFIG_JSON_S;
 | ||
| 
 | ||
| /*
 | ||
| typedef enum WB_MODE
 | ||
| {
 | ||
| 	WB_DISABLE,			// ½ûÖ¹
 | ||
| 	WB_AUTO,			// ×Ô¶¯
 | ||
| 	WB_DAYLIGHT,		// ÈÕ¹â 6500k
 | ||
| 	WB_CLOUDY,			// ÒõÌì 7500k
 | ||
| 	WB_INCANDESCENCE,	// °×Èȹâ 5000k
 | ||
| 	WB_FLUORESCENT,		// ÈÕ¹âµÆ 4400k
 | ||
| 	WB_TUNGSTEN,			// ÎÙË¿µÆ 2800k
 | ||
| 	WB_MANUAL			// ÊÖ¶¯
 | ||
| }WB_MODE;
 | ||
| */
 | ||
| typedef enum IRCUT_SWITCH_MODE
 | ||
| {
 | ||
| 	IRCUT_SYN_INFRARED,
 | ||
| 	IRCUT_SWITCH_AUTO,
 | ||
| 	IRCUT_BUTT
 | ||
| }IRCUT_SWITCH_MODE;
 | ||
| typedef enum DNC_MODE
 | ||
| {
 | ||
| 	DNC_AUTO,			// ×Ô¶¯Çл»
 | ||
| 	DNC_MULTICOLOR,		// ²ÊÉ«
 | ||
| 	DNC_BLACKWHITE,		// Ç¿ÖÆÎªºÚ°×ģʽ
 | ||
| 	DNC_INTE_WHITE_INF, //ÖÇÄܾ¯½ä
 | ||
| 	DNC_WHITELAMP_AUTO, //ÖÇÄÜů¹â
 | ||
| 	DNC_IRLAMP_AUTO,	//ÖÇÄܺìÍâ
 | ||
| 	DNC_LP_MODE,		//³µÅÆÄ£Ê½
 | ||
| 	DNC_BUTT
 | ||
| }DNC_MODE;
 | ||
| 
 | ||
| typedef enum IRCUT_MODE
 | ||
| {
 | ||
| 	IRCUT_NIGHT,///ÍíÉÏ
 | ||
| 	IRCUT_DAY,///°×ÌìÂË¹âÆ¬
 | ||
| 	IRCUT_AUTO,
 | ||
| }IRCUT_MODE;
 | ||
| 
 | ||
| typedef enum CAMERA_SCENE
 | ||
| {
 | ||
| 	SCENE_AUTO,
 | ||
| 	SCENE_INDOOR,
 | ||
| 	SCENE_OUTDOOR,
 | ||
| 	SCENE_BUTT,
 | ||
| }CAMERA_SCENE;
 | ||
| typedef enum IRCUT_SWITCH_DIRECTION
 | ||
| {
 | ||
| 	NORMAL_DIRECTION,
 | ||
| //	CONTRARY_DIRECTION
 | ||
| }IRCUT_SWITCH_DIRECTION;
 | ||
| 
 | ||
| typedef struct XM_MOVEMENT_DATA_S
 | ||
| {
 | ||
| 	 int 	reg_addr; 
 | ||
| 	 int 	data; 
 | ||
| 	 int   mode;
 | ||
| }MOVEMENT_DATA_S ;
 | ||
| 
 | ||
| /// ÊÓÆµÑÕÉ«¸ñʽ
 | ||
| typedef struct CAMERA_COLOR{
 | ||
| 	unsigned char	Brightness;		///< ÁÁ¶È£¬È¡Öµ0-100¡£
 | ||
| 	unsigned char	Contrast;		///< ¶Ô±È¶È£¬È¡Öµ0-100¡£
 | ||
| 	unsigned char 	Saturation;		///< ±¥ºÍ¶È£¬È¡Öµ0-100¡£
 | ||
| 	unsigned char 	Hue;			///< É«µ÷£¬È¡Öµ0-100¡£
 | ||
| 	unsigned char 	Gain;			///< ÔöÒæ£¬È¡Öµ0-100¡£bit7ÖÃλ±íʾ×Ô¶¯ÔöÒæ£¬ÆäËûλ±»ºöÂÔ¡£
 | ||
| 	unsigned char	WhiteBalance;	///< ×Ô¶¯°×µçƽ¿ØÖÆ£¬bit7ÖÃλ±íʾ¿ªÆô×Ô¶¯¿ØÖÆ.0x0,0x1,0x2·Ö±ð´ú±íµÍ,ÖÐ,¸ßµÈ¼¶
 | ||
| 	unsigned short	Acutance;       	///< Èñ¶È£¬È¡Öµ0-15, µÚ8λ±íʾˮƽÈñ¶È£¬¸ß8Ϊ±íʾ´¹Ö±Èñ¶È¡£
 | ||
| }CAMERA_COLOR;	// ºÍVIDEO_COLORÒ»ÖÂ
 | ||
| 
 | ||
| 
 | ||
| // ±àÂë²ÎÊý
 | ||
| typedef struct tagCAPTURE_FORMAT
 | ||
| {
 | ||
|     BYTE    Compression;        /*!< ѹËõģʽ */
 | ||
|     BYTE    BitRateControl;     /*!< ÂëÁ÷¿ØÖÆ */
 | ||
|     BYTE    ImageSize;          /*!< ͼÏñ·Ö±æÂÊ */
 | ||
|     BYTE    ImageQuality;       /*!< ͼÏñ»ÖÊ */
 | ||
|     BYTE    FramesPerSecond;    /*!< Ö¡ÂÊ */
 | ||
|     BYTE    AVOption;           /*!< ÒôÊÓÆµÑ¡Ïî */
 | ||
|     WORD    BitRate;            ///< ²Î¿¼ÂëÁ÷Öµ£¬KbpsΪµ¥Î»
 | ||
|     BYTE    GOP;                /*< Ö¡¼ä¸ôµÄÊýÖµ£¬½¨ÒéÖµ49¡«99*/
 | ||
|     BYTE    reserved[3];        /*< ±£Áô×Ö½Ú*/
 | ||
| } CAPTURE_FORMAT;
 | ||
| 
 | ||
| 
 | ||
| typedef struct stCAM_INIT_DATE
 | ||
| {
 | ||
| 	XM_S32 mask;			//ÑÚÂë
 | ||
| 	XM_U8 u8GammaDay;
 | ||
| 	XM_U8 u8GammaNight;
 | ||
| 	XM_U8 u8LumDefDay;
 | ||
| 	XM_U8 u8LumDefNight;
 | ||
| 	XM_U8 u8InfrGpioNum;		// µÆ°åGPIO
 | ||
| 	XM_U16 u16GainDef;			// x1
 | ||
| 	XM_U16 u16GainDefSD;		// x1
 | ||
| 	XM_U16 u16GainMax;			// x1
 | ||
| 	XM_U32 u32DnThrDay[5];
 | ||
| 	XM_U32 u32DnThrNight[5];
 | ||
| 	XM_U32 u32EshutterLvEn;		// E Shutter enable level
 | ||
| 	XM_U32 u32EshutterLvDis;		// E Shutter Disbale level	
 | ||
| 
 | ||
| 	XM_U32 u32awb_agc;			// bit7: En  bit0~bit6: Choice
 | ||
| 	XM_U32 u32AgcSLvlAwb;		// >= limit awb gain
 | ||
| 	XM_U32 u32AgcELvlAwb;		// <= not limit awb gain
 | ||
| 	XM_U32 u32CscLumCon;		// HighByte -> LowByte [Lum Con]
 | ||
| 	XM_U32 u32CscAcutance;		// Autance
 | ||
| 	XM_U32 u32CscHueSat;		// HighByte -> LowByte [Hue Sat]
 | ||
| 
 | ||
| 	XM_S32 s32TgtNum;	//[0,3]
 | ||
| 	XM_U32 au32TgtExp[4];
 | ||
| 	XM_U32 au32TgtLum[4];
 | ||
| 	XM_U32 u32FlashExtCfgEn;		// 0xA55A: Enable
 | ||
| 	XM_U32 u32GammaAgc;		// bit7: En  bit0~bit6: Choice
 | ||
| 	XM_U32 u32GamAgcStartLvl;	// > StartLevel  use AgcGamma
 | ||
| 	XM_U32 u32GamAgcEndLvl;		// < EndLevel use NormalGamma
 | ||
| 	XM_S32 s32Rvs;				// Bit0: Infrared swap
 | ||
| }CAM_INIT_DATA;
 | ||
| 
 | ||
| //·µ»ØVI´°¿Ú³ß´çµÄ½á¹¹Ìå
 | ||
| typedef struct st_VI_WIN_S
 | ||
| {
 | ||
|     XM_U32 u32Width;
 | ||
|     XM_U32 u32Height;
 | ||
|     XM_U32 u32TotalWidth;
 | ||
|     XM_U32 u32TotalHeight;
 | ||
| }VI_WIN_S;
 | ||
| 
 | ||
| 
 | ||
| // ÉèÖÃ°×Æ½ºâ²ÎÊý
 | ||
| int camera_set_wb_mode(unsigned int mode);
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ:	»ñÈ¡/ÉèÖà ÈÕҹģʽ
 | ||
| ÊäÈë²ÎÊý:	0:	Auto
 | ||
| 				1:    Color
 | ||
| 				2: 	BW
 | ||
| note:
 | ||
| *************************************************************************/
 | ||
| int camera_get_dnc_mode(XM_U32 *pMode);
 | ||
| int camera_set_dnc_mode(unsigned int mode);
 | ||
| 
 | ||
| 
 | ||
| // »ñȡ֧³ÖµÄÆØ¹âµÈ¼¶Êý
 | ||
| // ·µ»ØÖµ<0£¬»ñȡʧ°Ü£¬>=0±íʾµÈ¼¶Êý£¬¾ßÌåµÈ¼¶±£´æÔÚÊý×éspeedsÖС£
 | ||
| // speedsÊý×鳤¶È±ØÐë×ã¹»´ó£¬È¡16²î²»¶àÁË¡£
 | ||
| int camera_get_exposure_speeds(int vstd, unsigned int *speeds);
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ:	ÆØ¹âģʽÉèÖÃ
 | ||
| ÊäÈë²ÎÊý:	level:	0		×Ô¶¯ÆØ¹â
 | ||
| 						1~9		ÊÖ¶¯ÆØ¹â(¹Ì¶¨¼¸µµ)	
 | ||
| 				value1:	ÆØ¹âÏÂÏÞ(min,us)
 | ||
| 				value2:	ÆØ¹âÉÏÏÞ(max,us)
 | ||
| note:	
 | ||
| 	×Ô¶¯ÆØ¹â(ÉÏÏÂÏÞÎÞЧ)  		level :0
 | ||
| 	ÊÖ¶¯ÆØ¹â(¹Ì¶¨¼¸µµ)			level :1~9
 | ||
| *************************************************************************/
 | ||
| int camera_get_exposure_level(int *pLevel, XM_U32 *pValue1, XM_U32 *pValue2);
 | ||
| int camera_set_exposure_level(int level, unsigned int value1, unsigned int value2);
 | ||
| 
 | ||
| /*******************************************************************
 | ||
| º¯Êý¹¦ÄÜ:	ÉèÖÃ/»ñÈ¡×Ô¶¯ÔöÒæ
 | ||
| ÊäÈë²ÎÊý:	s32GainMax:	×î´óÔöÒæ	( 0~100	def: 50)
 | ||
| 				s32AutoEn:	AutoGain ʹÄÜ	(0~1		def: 1)
 | ||
| Êä³ö²ÎÊý:	ÎÞ
 | ||
| ·µ»Ø²ÎÊý:	0 	³É¹¦
 | ||
| 				-1	³ö´í
 | ||
| Note:			Lycai
 | ||
| *******************************************************************/
 | ||
| int camera_get_gain(int *pGainLevel, int *pAutoEn);
 | ||
| int camera_set_gain(int s32GainMax, int s32AutoEn);
 | ||
| 
 | ||
| 
 | ||
| // ÉèÖòο¼µçƽֵ
 | ||
| // level:²Î¿¼µçƽֵ£¬È¡Öµ0-100¡£
 | ||
| int camera_get_refrence_level(void);
 | ||
| int camera_set_refrence_level(int level);
 | ||
| 
 | ||
| 
 | ||
| // »ñȡƽ¾ùÁÁ¶ÈÖµ
 | ||
| int camera_get_luminance(void);
 | ||
| 
 | ||
| //»ñȡ״̬Âë,>=0±íʾ״̬Õý³£,<0±íʾ״̬Òì³£
 | ||
| int camera_get_status(int *status);
 | ||
| 
 | ||
| //ÓÃÓÚµ÷ÊÔ
 | ||
| int camera_debug(char *cmd);
 | ||
| 
 | ||
| //·µ»Øxm 2a¿âµÄ°æ±¾ÐÅÏ¢
 | ||
| int camera_aew_get_version(char *str);
 | ||
| 
 | ||
| //·µ»ØWBÔöÒæ
 | ||
| void  camera_get_wb_params(void *param);
 | ||
| 
 | ||
| //ÉèÖÃ×Ô¶¯¹âȦģʽ
 | ||
| int camera_set_aperture(unsigned int mode);
 | ||
| 
 | ||
| //ÉèÖñ³¹â²¹³¥Ä£Ê½
 | ||
| int camera_get_blc(XM_U32 *pMode);
 | ||
| int camera_set_blc(unsigned int mode);
 | ||
| 
 | ||
| // ÉèÖÃÇ龰ģʽ
 | ||
| int camera_get_scene(CAMERA_SCENE* pScene);
 | ||
| int camera_set_scene(CAMERA_SCENE scene);
 | ||
| 
 | ||
| 
 | ||
| /*******************************************************************
 | ||
| º¯Êý¹¦ÄÜ:	»ñÈ¡µç×ÓÂý¿ìÃÅ״̬(µ±Ç°)
 | ||
| ÊäÈë²ÎÊý:	ÎÞ
 | ||
| Êä³ö²ÎÊý:	*pu8EShutterSts:
 | ||
| 					 fps' = fps*0x10/gu8EshutterSts
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	ʧ°Ü
 | ||
| *******************************************************************/
 | ||
| int camera_get_es_status(XM_U8 *pu8EShutterSts);
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	½µÖ¡¹¦ÄÜ£¨Ê¹ÄÜ£©
 | ||
| ÊäÈë²ÎÊý:	es_shutter: 
 | ||
| 					0:		1/1
 | ||
| 					2:		1/2
 | ||
| 					4:		1/3
 | ||
| 					6:		1/4
 | ||
| Êä³ö²ÎÊý:	ÎÞ
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_get_es_shutter(int *pEshutterLevel);
 | ||
| int camera_set_es_shutter(int es_shutter);
 | ||
| ///¿ªÆôÈÕ¹âµÆ·ÀÉÁ¹¦ÄÜ
 | ||
| //en = 0 ²»¿ªÆô en= 1¿ªÆô
 | ||
| int camera_get_reject_flicker(int *pEn);
 | ||
| int camera_set_reject_flicker(int en);
 | ||
| 
 | ||
| // ÈÕÒ¹Çл»ãÐÖµ
 | ||
| int camera_get_dnc_thr(int *pDnc_thr);
 | ||
| int camera_set_dnc_thr(int dnc_thr); 		//ÈÕҹת»»ãÐÖµ 10-50£¬Ä¬ÈÏ30
 | ||
| 
 | ||
| /*******************************************************************
 | ||
| º¯Êý¹¦ÄÜ:	»ñÈ¡/ÉèÖà ÈÕÒ¹µ÷½ÚÁéÃô¶È
 | ||
| ÊäÈë²ÎÊý:	ÎÞ
 | ||
| Êä³ö²ÎÊý:	* pLevel:	µÈ¼¶(1~10)
 | ||
| ·µ»Ø²ÎÊý:	0 	³É¹¦
 | ||
| 				-1	³ö´í
 | ||
| Note:			Lycai
 | ||
| *******************************************************************/
 | ||
| int camera_get_ae_sensitivity(int*pLevel);
 | ||
| int camera_set_ae_sensitivity(int ae_sensitivity); ///aeÁéÃô¶ÈÅäÖà 1-10£¬Ä¬ÈÏΪ5
 | ||
| 
 | ||
| /*******************************************************************
 | ||
| º¯Êý¹¦ÄÜ:	»ñÈ¡/ÉèÖà AEµ÷½ÚÁéÃô¶È
 | ||
| ÊäÈë²ÎÊý:	ÎÞ
 | ||
| Êä³ö²ÎÊý:	* pLevel:	µÈ¼¶(1~10)
 | ||
| ·µ»Ø²ÎÊý:	0 	³É¹¦
 | ||
| 				-1	³ö´í
 | ||
| Note:			Lycai
 | ||
| *******************************************************************/
 | ||
| int camera_get_ae_sensitivity2(int* pLevel);
 | ||
| int camera_set_ae_sensitivity2(int level);
 | ||
| 
 | ||
| 
 | ||
| //int camera_set_RGBGain(int channel, int gainval);//ÉèÖÃRGBÔöÒæ1 REDͨµÀ  2 GREENͨµÀ  3BLUEͨµÀ
 | ||
| int camera_get_Infrared(void);//»ñÈ¡É豸ºìÍâ״̬ 1±íʾºìÍâ´ò¿ª 0±íʾ¹Ø±Õ 2±íʾоƬ²»Ö§³Ö
 | ||
| int camera_set_Ircut(int mode);//ÅäÖÃircut״̬
 | ||
| int camera_save_debug_cmd(char *cmd);
 | ||
| 
 | ||
| /*******************************************************************
 | ||
| º¯Êý¹¦ÄÜ:	»ñÈ¡/ÉèÖÃÈÕÒ¹½µÔëµÈ¼¶
 | ||
| ÊäÈë²ÎÊý:	daynight:		0(Day)	1(Night)
 | ||
| 				nf_level: 		0~5   Def:3
 | ||
| Êä³ö²ÎÊý:	ÎÞ
 | ||
| ·µ»Ø²ÎÊý:	0 	³É¹¦
 | ||
| 				-1	³ö´í
 | ||
| Note:			Lycai
 | ||
| *******************************************************************/
 | ||
| int CameraGetNFLevel(int daynight, int *pNrLevel);
 | ||
| int CameraSetNFLevel(int daynight, int nf_level);
 | ||
| //swap 0:Õý³£Ðò 1£º·´Ðò
 | ||
| int CameraGetSwapICR(int *pSwap);
 | ||
| int CameraSwapICR(int swap);
 | ||
| 
 | ||
| int test_movement(int x,int y,int z);
 | ||
| 
 | ||
| int movement_ircut(int level);
 | ||
| 
 | ||
| int movement_gpioset(int addr,int mode);
 | ||
| 
 | ||
| int movement_addrset(MOVEMENT_DATA_S *);
 | ||
| 
 | ||
| // DWDR
 | ||
| int camera_get_wdr(int* pLevel, int* pEnable);
 | ||
| int camera_set_wdr(int level, int enable);
 | ||
| 
 | ||
| 
 | ||
| int Camera_Get_StyleMode(int *pChoice);
 | ||
| int Camera_Set_StyleMode(int choice);		//ÊäÈë²ÎÊý:   0, 1, 2
 | ||
| 
 | ||
| int Camera_Get_DebugFile(char *fliename, unsigned int choice, unsigned int depth);
 | ||
| 
 | ||
| int Movement_LumTarget_Change(int lum_now);		//¸Ä±äÄ¿±êÁÁ¶È
 | ||
| 
 | ||
| int Camera_Get_DebugFile(char *fliename, unsigned int choice, unsigned int depth);
 | ||
| 
 | ||
| int camera_scan_task(XM_U32 u32Tms);
 | ||
| 
 | ||
| // IR-CUT ģʽ
 | ||
| int camera_get_ircut_mode(int *pIrcutMode);
 | ||
| int camera_set_ircut_mode(int ircut_mode);
 | ||
| 
 | ||
| // ¾µÏñ
 | ||
| int camera_get_mirror(int *pMirror);
 | ||
| int camera_set_mirror(int mirror);
 | ||
| 
 | ||
| // ·×ª
 | ||
| int camera_get_flip(int *pFlip);
 | ||
| int camera_set_flip(int flip);
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	ͼÏñÑÕÉ«(Web) ½Ó¿Ú
 | ||
| ÊäÈë²ÎÊý:	channel:	 ÎÞЧ
 | ||
| 				pColor:
 | ||
| 					Brightness: ÁÁ¶È(0~100)
 | ||
| 					Contrast: ¶Ô±È¶È(0~100)
 | ||
| 					Saturation: ±¥ºÍ¶È(0~100)
 | ||
| 					Hue:	É«¶È(0~100)
 | ||
| 					Acutance: Èñ»¯(0~15)
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_get_color(int channel, CAMERA_COLOR * pColor);
 | ||
| int camera_set_color(int channel, CAMERA_COLOR * pColor);
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	»ñÈ¡/ÉèÖà ÊÓÆµÖÆÊ½(PAL/NTSC)
 | ||
| ÊäÈë²ÎÊý:	channel:	 ÎÞЧ
 | ||
| 				u32Vstd: 0:(UN)
 | ||
| 						1:PAL
 | ||
| 						2:NTSC
 | ||
| Êä³ö²ÎÊý:	*pu32Vstd	0:(UN)
 | ||
| 							1:PAL
 | ||
| 							2:NTSC
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_get_vstd(int channel,unsigned int *pu32Vstd);
 | ||
| int camera_set_vstd(int channel,unsigned int u32Vstd);
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| // u32Level: 	0~100
 | ||
| // def:		0
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	»ñÈ¡/ÉèÖà ȥα²Ê
 | ||
| ÊäÈë²ÎÊý:	u32Level: 	0~100(def:0)
 | ||
| Êä³ö²ÎÊý:	pu32Level:	µ±Ç°µÈ¼¶
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_set_antiFalseColor(unsigned int u32Level);
 | ||
| int camera_get_antiFalseColor(unsigned int *pu32Level);
 | ||
| 
 | ||
| // u32Level: 	0~100
 | ||
| // def:		0
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	»ñÈ¡/ÉèÖà ȥ¾â³Ý
 | ||
| ÊäÈë²ÎÊý:	u32Level: 	0~100(def:0)
 | ||
| Êä³ö²ÎÊý:	pu32Level:	µ±Ç°µÈ¼¶
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_set_sawtooth(unsigned int u32Level);
 | ||
| int camera_get_sawtooth(unsigned int *pu32Level);
 | ||
| 
 | ||
| //·ÀºìÍâ¹ýÆØ¹¦ÄÜ
 | ||
| //Enable = 0 ²»¿ªÆô Enable = 1¿ªÆô
 | ||
| int camera_set_hlc(int Enable);
 | ||
| int camera_get_hlc(int *pEnable);
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	camera_set_format
 | ||
| ÊäÈë²ÎÊý:	chn
 | ||
| 				u32Type: 0MainStream	1:SubStream1	2:SubStream2
 | ||
| 				pstFormat: encode paramer
 | ||
| Êä³ö²ÎÊý:	none
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_set_format(int chn, unsigned int u32Type,const CAPTURE_FORMAT *pstFormat);
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	½µÖ¡À©Õ¹¹¦ÄÜ(XM320ʹÓÃ)
 | ||
| ÊäÈë²ÎÊý:	u8Mode:		1: Read 	
 | ||
| 							2: Write
 | ||
| 				pu8Status: 			fps
 | ||
| 							0:		1/1
 | ||
| 							2:		1/2
 | ||
| Êä³ö²ÎÊý:	ÎÞ
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_es_shutter_ex(XM_U8 u8Mode, XM_U8 *pu8Status);
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	²úÆ·ÐͺÅ(¶Á/д)
 | ||
| ÊäÈë²ÎÊý:	u8Mode:		1: Read 	
 | ||
| 							2: Write
 | ||
| 				*pu32ProductType:	²úÆ·ÐͺÅ
 | ||
| Êä³ö²ÎÊý:	*pu32ProductType:	²úÆ·ÐͺÅ
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_productType(XM_U8 u8Mode, XM_U32 *pu32ProductType);
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	»ñÈ¡/ÉèÖÃÄÚ²¿²ÎÊý
 | ||
| ÊäÈë²ÎÊý:	pstCamearPara: Ö¸Ïò²ÎÊýµØÖ·
 | ||
| Êä³ö²ÎÊý:	ÎÞ
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_para_get(CAM_INIT_DATA *pstCamearPara);
 | ||
| int camera_para_set(CAM_INIT_DATA *pstCamearPara);
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	ÉèÖÃ/»ñÈ¡ ÏÞÖÆAWBÉ«ÎÂ
 | ||
| ÊäÈë²ÎÊý:	u8MinCt: 	×îµÍÉ«ÎÂ	bit7: En  bit0~bit6: Choice
 | ||
| 			u32Start: 	¿ªÊ¼ÏÞÖÆÔöÒæ(x1024)
 | ||
| 			u32End: 	·Å¿ªÏÞÖÆÔöÒæ(x1024)
 | ||
| Êä³ö²ÎÊý:	ÎÞ
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_awbLimit_set(XM_U8 u8MinCt, XM_U32 u32Start, XM_U32 u32End);
 | ||
| int camera_awbLimit_get(XM_U8 *pu8MinCt, XM_U32 *pu32Start, XM_U32 *pu32End);
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	ÉèÖÃ/»ñÈ¡ BurstʹÄÜ(BW)
 | ||
| ÊäÈë²ÎÊý:	u8Enable: 0:Disable 	1:Enable
 | ||
| Êä³ö²ÎÊý:	ÎÞ
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_bwBurst_set(XM_U8 u8Enable);
 | ||
| int camera_bwBurst_get(XM_U8 *pu8Enable);
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| int camera_get_vdaMovState(XM_U32 *pData);
 | ||
| 
 | ||
| 
 | ||
| int camera_set_wbRB(XM_U8 u8Data);
 | ||
| int camera_get_wbRB(XM_U8 *pu8Data);
 | ||
| 
 | ||
| int camera_set_wbGM(XM_U8 u8Data);
 | ||
| int camera_get_wbGM(XM_U8 *pu8Data);
 | ||
| 
 | ||
| int camera_set_encoderinfo(XM_U8 *pu8Dta);
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ:	»ñÈ¡ÈÕҹ״̬
 | ||
| Êä³ö²ÎÊý:	pu8Mode:
 | ||
| 					0:	Color
 | ||
| 					1:    BW
 | ||
| note:
 | ||
| *************************************************************************/
 | ||
| int camera_get_dn_state(XM_U8 *pu8Mode);
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ:	±àÂë/ÖÆÊ½/·Ö±æÂÊ Ä£Ê½Çл»
 | ||
| Êä³ö²ÎÊý:	u8Mode:
 | ||
| 					0x00:AHD	0x01:CVI		0x02:TVI		0x10:XVI
 | ||
| 				u8VstdMode:	
 | ||
| 					1: PAL	2:NTSC
 | ||
| 				u8RlstMode:
 | ||
| 					0:1M 1:2M 3:3M 4:4M 5:5M
 | ||
| note:
 | ||
| *************************************************************************/
 | ||
| int camera_set_isp_para(XM_U8 u8Mode, XM_U8 u8VstdMode, XM_U8 u8RlstMode);
 | ||
| int camera_get_isp_para(XM_U8 *pu8Mode);
 | ||
| 
 | ||
| 
 | ||
| int camera_set_language(int s32Language);
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	ÅäÖÃ/»ñÈ¡ LEDģʽ
 | ||
| ÊäÈë²ÎÊý:	ps32Mode:	0xAB(	A:	0: IR   1: WL   --- ½ö¶ÁȡʱÓÐЧ
 | ||
| 							 	B:	0:Auto  1:Manual  2:Intelligence)
 | ||
| 				ps32State: 	0:Close 1:Open
 | ||
| Êä³ö²ÎÊý:	ÎÞ
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_set_ledMode(int s32Mode, int s32State);
 | ||
| int camera_get_ledMode(int *ps32Mode, int *ps32State);
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	ÅäÖà LEDÀàÐÍ
 | ||
| ÊäÈë²ÎÊý:	s32Type:	0: IR   1: WL  2:Double
 | ||
| Êä³ö²ÎÊý:	ÎÞ
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_set_ledType(int s32Type);
 | ||
| int camera_get_ledType(int *ps32Type);
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| /*****************************************************************************
 | ||
| º¯Êý¹¦ÄÜ:	Íⲿµ÷ÊÔÑ¡Ôñgamma
 | ||
| ÊäÈë²ÎÊý:    	u32Gamma: [High Byte->Low Byte] = [u8IdxWgt(Idx2)  u8Idx2  u8Idx1]
 | ||
| 				u8Idx1:	0: 		disable gamma  (ÏßÐÔ)
 | ||
| 						1~15:	LinearGamma
 | ||
| 						128~255:	WdrGamma
 | ||
| 				u8Idx2:	0: 		disable gamma  (ÏßÐÔ)
 | ||
| 						0~15:	LinearGamma
 | ||
| 						128~255:	WdrGamma
 | ||
| 				u8IdxWgt: (0~255)
 | ||
| 						u8Idx1 Weight: 255-u8IdxWgt
 | ||
| 						u8Idx2 Weight: u8IdxWgt				
 | ||
| ·µ»Ø²ÎÊý:    0: ³É¹¦ -1: ʧ°Ü
 | ||
| *****************************************************************************/
 | ||
| int camera_set_gamma(XM_U32 u32Gamma);
 | ||
| int camera_get_gamma(XM_U32 *pu32Gamma);
 | ||
| 
 | ||
| 
 | ||
| int camera_set_smartVda(XM_U8 u8MovFlg);
 | ||
| int camera_get_smartVda(XM_U8 *pu8MovFlg);
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	»ñÈ¡Îȶ¨×´Ì¬(µÆÅÝ)
 | ||
| ÊäÈë²ÎÊý:	ÎÞ
 | ||
| Êä³ö²ÎÊý:	pu8StateFlg
 | ||
| 					0: Îȶ¨
 | ||
| 					1: ²Ù×÷LED
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_get_stabState(XM_U8 *pu8StateFlg);
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	»ñÈ¡ ±¨¾¯LED³ÖÐøÊ±¼ä(ms)
 | ||
| ÊäÈë²ÎÊý:	s32Tms:  ³ÖÐøÊ±¼ä(ms) ----(¾«¶È100ms)
 | ||
| Êä³ö²ÎÊý:	ÎÞ
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_set_ledHold(int s32Tms);
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	2Mץͼ½Ó¿Ú
 | ||
| ÊäÈë²ÎÊý:	ÎÞ
 | ||
| Êä³ö²ÎÊý:	pstSnapVFInfo
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_snap(VIDEO_FRAME_INFO_S *pstSnapVFInfo);
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	ÅäÖÃͼÏñ×ø±ê
 | ||
| ÊäÈë²ÎÊý:	mode: ±£Áô
 | ||
| 				stCoord: ×ø±êÐÅÏ¢
 | ||
| Êä³ö²ÎÊý:	ÎÞ
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_set_coord(int mode, COORD_S stCoord);
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	ÅäÖÃͼÏñ×ø±ê
 | ||
| ÊäÈë²ÎÊý:	pstViWin 
 | ||
| Êä³ö²ÎÊý:	ÎÞ
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_get_vi_resolution(VI_WIN_S *pstViWin);
 | ||
| 
 | ||
| 
 | ||
| int camera_init(XM_U32 *pu32ProductType);
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| typedef struct st_AIRSLT_INFO_S
 | ||
| {
 | ||
|     XM_U8 u8AlarmFlg;	//1: ´¥·¢±¨¾¯   	0:δ´¥·¢
 | ||
|     XM_U32 u32TargetNum;	// Ä¿±ê¸öÊý;
 | ||
|     XM_U32 u32Info[64];		// ±¨¾¯ÐÅÏ¢(×ø±êµÈ)
 | ||
| }AIRSLT_INFO_S;
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 		ÅäÖÃÖÇÄܱ¨¾¯ÐÅÏ¢(ÈËÐμì²â)
 | ||
| ÊäÈë²ÎÊý:		u8Cmd:  ±¨¾¯Âë
 | ||
| 			pstAiInfoRlst:	±¨¾¯ÐÅÏ¢
 | ||
| Êä³ö²ÎÊý:	ÎÞ
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_set_aiInfo(XM_U8 u8Cmd, AIRSLT_INFO_S *pstAiInfoRlst);
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 		ÅäÖÃÈËÐηÀ¹ýÆØÊ¹ÄÜ
 | ||
| ÊäÈë²ÎÊý:		en:	1:ʹÄÜ   0:½ûÄÜ
 | ||
| Êä³ö²ÎÊý:	ÎÞ
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_set_aeweight(int en);
 | ||
| int camera_get_aeweight(int *ps32En);
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ:		ÅäÖÃÈíºìÍâãÐÖµ
 | ||
| ÊäÈë²ÎÊý:		dnc_thr:
 | ||
| 			 1~5(default:3) (ԽС£¬Ô½ÔçÇкڰ×)
 | ||
| Êä³ö²ÎÊý:	ÎÞ
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1: ³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_set_softIr_thr(int dnc_thr);
 | ||
| 
 | ||
| 
 | ||
| #ifdef SOC_NONE
 | ||
| int camera_get_txAttr(XM_U8 *pu8En, VENC_TX_ATTR *pstTxAttr);
 | ||
| int camera_set_txAttr(XM_U8 u8En, VENC_TX_ATTR stTxAttr);
 | ||
| #endif
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| //#if(defined SOC_ALIOS) || (defined SOC_XMSDK)
 | ||
| typedef struct xm_CAMERACFG_TO_ISP
 | ||
| {
 | ||
| 	unsigned int u32ProductType;
 | ||
| 	unsigned int u32StdType;		// 0: unknow 1:PAL 2:NTSC
 | ||
| 	unsigned int u32RsltType;		// 0: 720P	1:1080P	2:960P 3:1536P		101:P1080_S1 	102:P1080_S2
 | ||
| 
 | ||
| 	/****************************
 | ||
| 	u32IRLed:  
 | ||
| 		bit31:
 | ||
| 			0	not use
 | ||
| 			1	use
 | ||
| 		bit0:
 | ||
| 			0  	ÆÕͨģʽ£¨ºìÍâͬ²½/×Ô¶¯Í¬²½... (Ó²¼þ¿ØÖƺìÍâµÆ)£©
 | ||
| 			1	Èí¼þ¿ØÖƵÆ
 | ||
| 		bit4:
 | ||
| 			0	Èí¹âÃô
 | ||
| 			1	Ó²¹âÃô
 | ||
| 	****************************/
 | ||
| 	unsigned int u32IRLed;
 | ||
| 	unsigned int au32RsltCh[4][4];	// (Ch0_Width Ch0_Height Ch1_Width Ch1_Height) * 4
 | ||
| 
 | ||
| 	/****************************
 | ||
| 	u32Infrared:  
 | ||
| 		bit31:
 | ||
| 			0	not use
 | ||
| 			1	use
 | ||
| 		bit0: InfraredSwap
 | ||
| 		bit8~bit15: InfraredGPIO (0xFF: choice by source)
 | ||
| 	****************************/
 | ||
| 	unsigned int u32Infrared;
 | ||
| 
 | ||
| 	/****************************
 | ||
| 	u32IrCut:  
 | ||
| 		bit31:
 | ||
| 			0	not use
 | ||
| 			1	use
 | ||
| 		bit0: IRCUT Swap
 | ||
| 		bit8~bit15: InfraredGPIO (0xFF: choice by source)
 | ||
| 	****************************/
 | ||
| 	unsigned int u32IrCut;
 | ||
| 	unsigned int au32Rsv[10];
 | ||
| }CAMERACFG_TO_ISP;
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ: 	´´½¨ISPÏà¹ØÒµÎñ(Æô¶¯Í¼ÏñÏà¹Ø´¦Àí)
 | ||
| ÊäÈë²ÎÊý:	pstViWin 
 | ||
| Êä³ö²ÎÊý:	ÎÞ
 | ||
| ·µ»Ø²ÎÊý:	0:	³É¹¦
 | ||
| 				-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_isp_task(CAMERACFG_TO_ISP *pstCfg);
 | ||
| 
 | ||
| 
 | ||
| /*************************************************************************
 | ||
| º¯Êý¹¦ÄÜ:	ͼÏñÏà¹Ø½øÐÐÍ˳ö²Ù×÷
 | ||
| ÊäÈë²ÎÊý:	ÎÞ
 | ||
| Êä³ö²ÎÊý:	ÎÞ
 | ||
| ·µ»Ø²ÎÊý:		0:	³É¹¦
 | ||
| 			-1:	³ö´í
 | ||
| *************************************************************************/
 | ||
| int camera_exit(void);
 | ||
| 
 | ||
| 
 | ||
| /***************************************************************
 | ||
| º¯Êý¹¦ÄÜ:	È¥Îí¹¦ÄÜ
 | ||
| ÊäÈë²ÎÊý:	enable:	´ò¿ª¹Ø±Õ[0,1]
 | ||
| 				level:	Ç¿¶ÈµÈ¼¶[0,100]
 | ||
| ·µ»Ø²ÎÊý:	0:		³É¹¦
 | ||
| 				-1:		³ö´í
 | ||
| ***************************************************************/
 | ||
| int Camera_SetClearFog(int enable, int level);
 | ||
| 
 | ||
| 
 | ||
| //#endif
 | ||
| 
 | ||
| #ifdef __cplusplus
 | ||
| }
 | ||
| #endif
 | ||
| 
 | ||
| #endif
 | ||
| 
 |